post_name, $target_slugs, true)) return;// Core
$title = get_the_title($post);
$permalink = get_permalink($post);
$site_name = get_bloginfo('name');
$thumb_url = get_the_post_thumbnail_url($post, 'full');if (!function_exists('wc_get_product')) return;
$product = wc_get_product($post->ID);
if (!$product) return;// Price / availability
$price = $product->get_sale_price() ?: $product->get_regular_price();
$currency = get_woocommerce_currency();
$availability = $product->is_in_stock() ? 'https://schema.org/InStock' : 'https://schema.org/OutOfStock';// Gallery URLs (featured + gallery)
$gallery_ids = array_filter(array_map('absint', explode(',', (string) get_post_meta($post->ID, '_product_image_gallery', true))));
$gallery_urls = [];
if ($thumb_url) $gallery_urls[] = $thumb_url;
foreach ($gallery_ids as $img_id) {
$u = wp_get_attachment_image_url($img_id, 'full');
if ($u) $gallery_urls[] = $u;
}
$gallery_urls = array_values(array_unique($gallery_urls));// If Woo downloadable file is set, use the first one when $download_url is empty
if (empty($download_url) && $product->is_downloadable()) {
$files = $product->get_files();
if (!empty($files)) {
$first = reset($files);
if (!empty($first['file'])) $download_url = $first['file'];
}
}// JSON-LD: VideoObject
$video_ld = [
'@context' => 'https://schema.org',
'@type' => 'VideoObject',
'name' => $title,
'description' => $description,
'thumbnailUrl' => $gallery_urls ?: array_filter([$thumb_url]),
'uploadDate' => get_the_date('c', $post),
'contentUrl' => $download_url ?: $permalink,
'embedUrl' => $permalink,
'publisher' => [
'@type' => 'Organization',
'name' => $site_name,
'url' => home_url('/')
],
'keywords' => implode(', ', $keywords)
];// JSON-LD: Product
$product_ld = [
'@context' => 'https://schema.org',
'@type' => 'Product',
'name' => $title,
'description' => $description,
'url' => $permalink,
'image' => $gallery_urls,
'brand' => $site_name,
'sku' => (string) $product->get_sku(),
'offers' => [
'@type' => 'Offer',
'price' => $price ?: '0.00',
'priceCurrency' => $currency,
'availability' => $availability,
'url' => $permalink,
'itemCondition' => 'https://schema.org/NewCondition'
],
'additionalProperty' => array_map(function($kw){
return [
'@type' => 'PropertyValue',
'name' => 'tag',
'value' => $kw
];
}, $keywords),
];// Head output
echo "\n \n";
echo "\n";
echo "\n";// Optional simple keywords meta (skipped if Yoast present)
if (!defined('WPSEO_VERSION') && !class_exists('WPSEO_Frontend')) {
echo ' ' . "\n";
}
});/* -------- Quick Links block under title -------- */
add_action('woocommerce_single_product_summary', function () {
if (!is_singular('product')) return;
global $post;/* Match the same CONFIG as in head block */
$target_slugs = ['ebony-slut-canned-on-butt-and-feet'];
$info_page_url = 'https://disciplineentertainment.org/compliance/';
$download_url = '';if (!$post || !in_array($post->post_name, $target_slugs, true)) return;// Try to auto-pull the file if not set
$dl = $download_url;
if (empty($dl) && function_exists('wc_get_product')) {
$product = wc_get_product($post->ID);
if ($product && $product->is_downloadable()) {
$files = $product->get_files();
if (!empty($files)) {
$first = reset($files);
if (!empty($first['file'])) $dl = $first['file'];
}
}
}?>
ID, '_product_image_gallery', true))));
$urls = [];
if ($thumb_url) $urls[] = $thumb_url;
foreach ($gallery_ids as $img_id) {
$u = wp_get_attachment_image_url($img_id, 'large');
if ($u) $urls[] = $u;
}
$urls = array_values(array_unique($urls));
if (empty($urls)) return '';ob_start(); ?>
div[id*='ajaxsearchlitesettings'].searchsettings .asl_option_inner label {
font-size: 0px !important;
color: rgba(0, 0, 0, 0);
}
div[id*='ajaxsearchlitesettings'].searchsettings .asl_option_inner label:after {
font-size: 11px !important;
position: absolute;
top: 0;
left: 0;
z-index: 1;
}
.asl_w_container {
width: 100%;
margin: 0px 0px 0px 0px;
min-width: 200px;
}
div[id*='ajaxsearchlite'].asl_m {
width: 100%;
}
div[id*='ajaxsearchliteres'].wpdreams_asl_results div.resdrg span.highlighted {
font-weight: bold;
color: rgba(217, 49, 43, 1);
background-color: rgba(238, 238, 238, 1);
}
div[id*='ajaxsearchliteres'].wpdreams_asl_results .results img.asl_image {
width: 70px;
height: 70px;
object-fit: cover;
}
div.asl_r .results {
max-height: none;
}
div.asl_r.asl_w.vertical .results .item::after {
display: block;
position: absolute;
bottom: 0;
content: '';
height: 1px;
width: 100%;
background: #D8D8D8;
}
div.asl_r.asl_w.vertical .results .item.asl_last_item::after {
display: none;
}Ebony slut canned on butt and feet - Discipline Entertainment
post_name, $target_slugs, true)) return;// Core
$title = get_the_title($post);
$permalink = get_permalink($post);
$site_name = get_bloginfo('name');
$thumb_url = get_the_post_thumbnail_url($post, 'full');if (!function_exists('wc_get_product')) return;
$product = wc_get_product($post->ID);
if (!$product) return;// Price / availability
$price = $product->get_sale_price() ?: $product->get_regular_price();
$currency = get_woocommerce_currency();
$availability = $product->is_in_stock() ? 'https://schema.org/InStock' : 'https://schema.org/OutOfStock';// Gallery URLs (featured + gallery)
$gallery_ids = array_filter(array_map('absint', explode(',', (string) get_post_meta($post->ID, '_product_image_gallery', true))));
$gallery_urls = [];
if ($thumb_url) $gallery_urls[] = $thumb_url;
foreach ($gallery_ids as $img_id) {
$u = wp_get_attachment_image_url($img_id, 'full');
if ($u) $gallery_urls[] = $u;
}
$gallery_urls = array_values(array_unique($gallery_urls));// If Woo downloadable file is set, use the first one when $download_url is empty
if (empty($download_url) && $product->is_downloadable()) {
$files = $product->get_files();
if (!empty($files)) {
$first = reset($files);
if (!empty($first['file'])) $download_url = $first['file'];
}
}// JSON-LD: VideoObject
$video_ld = [
'@context' => 'https://schema.org',
'@type' => 'VideoObject',
'name' => $title,
'description' => $description,
'thumbnailUrl' => $gallery_urls ?: array_filter([$thumb_url]),
'uploadDate' => get_the_date('c', $post),
'contentUrl' => $download_url ?: $permalink,
'embedUrl' => $permalink,
'publisher' => [
'@type' => 'Organization',
'name' => $site_name,
'url' => home_url('/')
],
'keywords' => implode(', ', $keywords)
];// JSON-LD: Product
$product_ld = [
'@context' => 'https://schema.org',
'@type' => 'Product',
'name' => $title,
'description' => $description,
'url' => $permalink,
'image' => $gallery_urls,
'brand' => $site_name,
'sku' => (string) $product->get_sku(),
'offers' => [
'@type' => 'Offer',
'price' => $price ?: '0.00',
'priceCurrency' => $currency,
'availability' => $availability,
'url' => $permalink,
'itemCondition' => 'https://schema.org/NewCondition'
],
'additionalProperty' => array_map(function($kw){
return [
'@type' => 'PropertyValue',
'name' => 'tag',
'value' => $kw
];
}, $keywords),
];// Head output
echo "\n \n";
echo "\n";
echo "\n";// Optional simple keywords meta (skipped if Yoast present)
if (!defined('WPSEO_VERSION') && !class_exists('WPSEO_Frontend')) {
echo ' ' . "\n";
}
});/* -------- Quick Links block under title -------- */
add_action('woocommerce_single_product_summary', function () {
if (!is_singular('product')) return;
global $post;/* Match the same CONFIG as in head block */
$target_slugs = ['ebony-slut-canned-on-butt-and-feet'];
$info_page_url = 'https://disciplineentertainment.org/compliance/';
$download_url = '';if (!$post || !in_array($post->post_name, $target_slugs, true)) return;// Try to auto-pull the file if not set
$dl = $download_url;
if (empty($dl) && function_exists('wc_get_product')) {
$product = wc_get_product($post->ID);
if ($product && $product->is_downloadable()) {
$files = $product->get_files();
if (!empty($files)) {
$first = reset($files);
if (!empty($first['file'])) $dl = $first['file'];
}
}
}?>
ID, '_product_image_gallery', true))));
$urls = [];
if ($thumb_url) $urls[] = $thumb_url;
foreach ($gallery_ids as $img_id) {
$u = wp_get_attachment_image_url($img_id, 'large');
if ($u) $urls[] = $u;
}
$urls = array_values(array_unique($urls));
if (empty($urls)) return '';ob_start(); ?>
div[id*='ajaxsearchlitesettings'].searchsettings .asl_option_inner label {
font-size: 0px !important;
color: rgba(0, 0, 0, 0);
}
div[id*='ajaxsearchlitesettings'].searchsettings .asl_option_inner label:after {
font-size: 11px !important;
position: absolute;
top: 0;
left: 0;
z-index: 1;
}
.asl_w_container {
width: 100%;
margin: 0px 0px 0px 0px;
min-width: 200px;
}
div[id*='ajaxsearchlite'].asl_m {
width: 100%;
}
div[id*='ajaxsearchliteres'].wpdreams_asl_results div.resdrg span.highlighted {
font-weight: bold;
color: rgba(217, 49, 43, 1);
background-color: rgba(238, 238, 238, 1);
}
div[id*='ajaxsearchliteres'].wpdreams_asl_results .results img.asl_image {
width: 70px;
height: 70px;
object-fit: cover;
}
div.asl_r .results {
max-height: none;
}
div.asl_r.asl_w.vertical .results .item::after {
display: block;
position: absolute;
bottom: 0;
content: '';
height: 1px;
width: 100%;
background: #D8D8D8;
}
div.asl_r.asl_w.vertical .results .item.asl_last_item::after {
display: none;
}Skip to content Home / Ebony / Ebony slut canned on butt and feet
admin –
⭐⭐⭐⭐⭐ Review (Roger Vohs)
**“This scene is a masterclass in traditional bastinado and corporal punishment. The ebony model is secured firmly to the bench, delivering a sense of authenticity and intensity right from the start. The caning across buttocks and soles is applied with precision and consistency, filmed from multiple angles so every stroke is captured in detail.
What makes this video stand out is the pacing — no rushed punishment, just steady escalation that builds suspense and power. The reactions are raw but controlled, with clear aftercare touches that underline the consensual nature of the scene. For viewers who appreciate bastinado, classic caning, or realism-focused discipline films, this is an essential addition to the collection.”**