Как изменить положение обрезки миниатюр WooCommerce?

Я пытаюсь изменить положение обрезки миниатюр 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 hook.

Поскольку WordPress 3.9+ – это потрясающая новая функция среди многих, это добавленная способность теперь контролировать положение изображения изображений, загруженных в WordPress.
Я не знаю, доступен ли параметр potionion potion для размеров изображений 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> Продукты> Дисплей (Изображения продукта).

АКТИВАЦИЯ:
Вам нужно будет переключить активную тему на другую, а затем переключиться обратно, чтобы активировать ее.

Рекомендации:

  • Задайте размеры изображения WooCommerce при активации темы