Я пытаюсь изменить положение обрезки миниатюр WooCommerce. Я нашел этот код может помочь изменить размер:
add_action( 'init', 'yourtheme_woocommerce_image_dimensions', 1 );
/**
* Define image sizes
*/
function yourtheme_woocommerce_image_dimensions() {
$catalog = array(
'width' => '100', // px
'height' => '100', // px
'crop' => 0
);
// Image sizes
update_option( 'shop_catalog_image_size', $catalog ); // Product category thumbs
}
Я попытался изменить урожай 0
в array("center", "bottom")
но это не работает
function yourtheme_woocommerce_image_dimensions() {
$catalog = array(
'width' => '300', // px
'height' => '400', // px
'crop' => 'array("center", "bottom")'
);
// Image sizes
update_option( 'shop_catalog_image_size', $catalog ); // Product category thumbs
}
А также это без успеха:
if (function_exists( 'add_image_size' )){
add_image_size( 'shop_catalog', 300, 400, array( 'center', 'bottom' ) );
}
Есть ли в любом случае, я могу изменить это?
Благодарю.
Чтобы изменить размеры существующих изображений (опция обрезки) в вашей активной дочерней теме или теме, вам необходимо использовать 'after_switch_theme'
WordPress хук.
Начиная с WordPress 3.9+ — удивительная новая функция для многих, теперь добавлена возможность контролировать положение обрезки изображений, загруженных в WordPress.
Я не знаю, доступна ли расширенная опция «Зелье для кадрирования» для изображений woocommerce, вам придется ее протестировать.
Доступные параметры для положения обрезки:
left top
left center
left bottom
right top
right center
right bottom
center top
center center
center bottom
Так что на основе этот фрагмент из wooThemes и и (это относительно новые) опции обрезки WordPress, вы можете попробовать это:
function yourtheme_woocommerce_image_dimensions() {
global $pagenow;
if ( ! isset( $_GET['activated'] ) || $pagenow != 'themes.php' ) {
return;
}
$catalog = array(
'width' => '300', // px
'height' => '400', // px
'crop' => array( 'center', 'bottom' ) // New crop options to try.
);
/* $single = array(
'width' => '600', // px
'height' => '600', // px
'crop' => 1 // true
);
$thumbnail = array(
'width' => '120', // px
'height' => '120', // px
'crop' => 0 // false
); */
// Image sizes
update_option( 'shop_catalog_image_size', $catalog ); // Product category thumbs
/* update_option( 'shop_single_image_size', $single ); // Single product image
update_option( 'shop_thumbnail_image_size', $thumbnail ); // Image gallery thumbs */
}
add_action( 'after_switch_theme', 'yourtheme_woocommerce_image_dimensions', 1 );
Вам нужно будет вставить этот фрагмент кода в файл function.php вашей активной дочерней темы или темы…
Вы можете комментировать / раскомментировать код (или удалить некоторые части), чтобы удовлетворить ваши потребности. Этот код будет перезаписывать определенные параметры в настройках WooCommerce> Продукты> Показать (Изображения продуктов).
АКТИВАЦИЯ:
Вам нужно будет переключи свою активную тему к другому, а затем переключитесь обратно, чтобы активировать его.
Рекомендации:
Других решений пока нет …