#wordpress #woocommerce #title #caption #photoswipe
#wordpress #woocommerce #Название #подпись #photoswipe
Вопрос:
Кто-нибудь может мне помочь, пожалуйста, найти способ скрыть подпись из галереи изображений Photoswipe WooCommerce?
Ответ №1:
В вашей теме functions.php
// Configure WooCommerce built-in Photoswipe
add_filter( 'woocommerce_single_product_photoswipe_options', function( $options ) {
// Disable caption element
$options['captionEl'] = false;
// Other options
// $options['shareEl'] = true;
// $options['counterEl'] = false;
// $options['arrowEl'] = false;
// $options['preloaderEl'] = true; // For browsers that do not support CSS animations
// $options['closeOnScroll'] = false; // Already defaults to false
// $options['clickToCloseNonZoomable'] = false;
// $options['closeOnVerticalDrag'] = false;
// $options['maxSpreadZoom'] = 1;
// $options['hideAnimationDuration'] = 500;
// $options['showAnimationDuration'] = 500;
// $options['barsSize'] = array("top" => 0, "bottom" => "auto");
return $options;
} );
Не знаю, возможно ли это настроить getThumbBoundsFn
здесь, поскольку вам пришлось бы передать функцию Javascript из PHP для обработки как таковой…
Но эти параметры записываются на страницу как глобальный объект Javascript wc_single_product_params
. Таким образом, можно позже обновить этот объект (из Javascript):
wc_single_product_params.photoswipe_options.getThumbBoundsFn = function (index) {
// find thumbnail element
var thumbnail = document.querySelectorAll('.woocommerce-product-gallery__image img')[index];
// get window scroll Y
var pageYScroll = window.pageYOffset || document.documentElement.scrollTop;
// optionally get horizontal scroll
// get position of element relative to viewport
var rect = thumbnail.getBoundingClientRect();
// w = width
return { x:rect.left, y:rect.top pageYScroll, w:rect.width };
}