Изменение шаблона Wordpress для конкретной страницы категории продукта - PullRequest
0 голосов
/ 30 мая 2018

Я пытаюсь изменить шаблон страницы определенной категории продукта, но я не могу заставить его работать.Я пробовал таксономию product_cat-the-category, но безрезультатно.Я использую wpml с категориями на 3 разных языках, если это имеет значение.Я пробовал слизняки каждого из 3 языков, но все еще не работает.Не понимаю, что может быть причиной этого.

Ответы [ 2 ]

0 голосов
/ 31 мая 2018

Первая копия taxonomy-product_cat.php & archive-product.php из каталога плагинов WooCommerce - wordpress\wp-content\plugins\woocommerce\templates в вашу тему - wordpress\wp-content\themes\your-theme\woocommerce.

Затем скопируйте archive-product.php файлов в каталог woocommerce вашей темы, например archive-product-2.php, archive-product-3.php и т. Д. Позже вы собираетесь изменить эти файлы в соответствии с вашей категорией.

Затем откройте taxonomy-product_cat.php файл.Код будет выглядеть ниже 1.

if ( ! defined( 'ABSPATH' ) ) {
    exit; // Exit if accessed directly
}

wc_get_template( 'archive-product.php' );

Нам нужно изменить вызов шаблона wc_get_template() в этом коде в соответствии с нашими условиями.

Сначала получите слаг текущей категории, а затем мы можемсравните слизнякСогласно слагу, мы будем называть различные архивные файлы продукта.

if ( ! defined( 'ABSPATH' ) ) {
    exit; // Exit if accessed directly
}

// Get current category slug
global $wp_query;
$cat_slug = $wp_query->query_vars['product_cat'];

// Call template conditionally
if($cat_slug == 'accessories') {
    wc_get_template( 'archive-product-2.php' );
} else  {
    wc_get_template( 'archive-product.php' );   
}

Обновления

По моему опыту, лучший подход - избегать переопределения шаблона WooCommerce путем копирования вв файлы темы.WooCommerce регулярно обновляет шаблоны, и лучше обновлять шаблоны каждый раз, чтобы избежать проблем в будущем.Поэтому, если возможно, максимально используйте фильтры, отличные от переопределения шаблонов.

0 голосов
/ 31 мая 2018

Вы не можете изменить шаблон WP для определенной категории, но

  • Только для переопределения дизайна: Вы можете сделать CSS, используя body.term-yourcategoryname при запуске каждого класса, идентификатора или имени тега, например:

    body.term-car h1 {color: red;размер шрифта: 22 пикселя;}

  • Для улучшения макета: или добавив новую функцию, вы можете использовать стандартные функции wooommerce, такие как: $ term-> name; в archive-product.php в вашемдетская тема.

пример:

if($term->name == "car") {
   // your code will goes here
}
...