Изменения в файле archive-product.php не работают
Я пытаюсь настроить стандартную тему woocommerce и до сих пор хорошо работал. Я скопировал все файлы шаблонов с /plugins/woocommerce/templates
до /mytheme/woocommerce
и настроил файлы.
Но когда я что-то меняю в archive-product.php
, ничего не происходит? Я даже попытался настроить это в основных файлах (/plugins/woocommerce/templates/archive-product.php
), но я не работаю.
Я хочу изменить класс заголовка h1
: <h1 class="page-title"><?php woocommerce_page_title(); ?></h1>
.
Итак, я искал все файлы шаблонов woocommerce, класс page-title
встречается только в этом одном файле (чтобы предотвратить редактирование неправильного файла).
Edit:
В деталях я хочу настроить тему, используемую в этом пути: http://example.com/product-category/mycategory
Ответы
Ответ 1
Кажется, это проблема SOLLL в Woocommerce. Для тех, кто приземлился здесь, для меня, начиная с версии 2.1.6, работало следующее решение.
Очевидно, проблема связана с тем, что функция woocommerce_content() выводит неверную страницу для содержимого архива.
Я использовал следующее, чтобы обойти это:
замените woocommerce_content() в woocommerce.php на:
if ( is_singular( 'product' ) ) {
woocommerce_content();
}else{
//For ANY product archive.
//Product taxonomy, product search or /shop landing
woocommerce_get_template( 'archive-product.php' );
}
Кредит: найдено решение здесь
Ответ 2
Вот как я исправил мой:
- Удалить woocommerce.php в папке темы.
- Скопируйте папку TEMPLATE в каталог плагина woocommerce, вставьте ее в свою папку THEME и переименуйте ее в woocommerce.
- Откройте папку, которую вы только что переименовали, перейдите в папку магазина и отредактируйте wrapper-start.php и wrapper-end.php.
Ответ 3
Если вы используете метод woocommerce.php, вы не можете настроить архив-продукт. Вы должны использовать метод hooks
http://docs.woothemes.com/document/third-party-custom-theme-compatibility/Обратите внимание: при создании woocommerce.php в папке тем вы не сможете переопределить пользовательский шаблон woocommerce/archive-product.php, поскольку woocommerce.php имеет приоритет над archive-product.php. Это предназначено для предотвращения проблем с отображением.
Ответ 4
Я пробовал все вышеперечисленные решения, но безрезультатно. Независимо от того, что я сделал, архив-product.php не использовался вообще. Вместо этого большинство страниц woocommerce использовали page.php из моей темы.
Решение для меня заключалось в том, чтобы добавить поддержку темы... Который, прошло какое-то время с тех пор, как я использовал woocommerce, поэтому я полностью забыл об этом. Но после добавления следующей строки в мой файл functions.php в настоящее время используется файл archive-product.php(/mytheme/woocommerce/archive-product.php), и я могу обновить его, как я должен быть.
add_theme_support('woocommerce');
Ответ 5
вам нужно отредактировать файл "taxonomy-product_cat.php" и добавить условную is_product_category ('mycategory').
- откройте папку с темой и добавьте в нее новую подпапку с именем "woocommerce".
- скопируйте файлы "archive-product.php" и "taxonomy-product_cat.php" из /plugins/woocommerce/templates в подпапку woocommerce в вашей теме.
- переименуйте "archive-product.php" в "archive-mycategory.php" (или как вам угодно, это будет файл шаблона в категории).
-
откройте "taxonomy-product_cat.php" и оберните wc_get_template( 'archive-product.php' );
с помощью
if (is_product_category( 'mycategory' )){
wc_get_template( 'archive-mycategory.php' );
} else { wc_get_template ('archive-product.php');
}