Плагин Woocommerce, предназначенный для электронной коммерции, можно интегрировать с любой темой WordPress, которая изначально не поддерживает такую возможность.
Для этого нужно выполнить несколько шагов, которые описаны разработчиком плагина здесь.
Предполагается, что сам плагин вы уже установили.
СОДЕРЖАНИЕ
1. Создаем woocommerce.php
В папке темы делаем копию файла page.php и даем новому файлу имя woocommerce.php. Открываем вновь созданный файл и заменяем существующий там цикл вывода, как правило, это строки от:
1 2 3 |
<?php if ( have_posts() ) : и до <?php endif; ?> |
на код:
1 |
<?php woocommerce_content(); ?> |
2. Делаем копию файлов WooCommerce
Копируем папку templates (со всем содержимым), находящуюся в папке плагина WooCommerce, в папку темы. При этом переименовываем название templates на woocommerce, то есть у вас появится папка
/wp-content/themes/ваша-тема/woocommerce/
В этой папке находятся шаблоны вывода различных страниц WC и мы их можем отредактировать для наших нужд. Страницей основного шаблона при этом является созданная нами woocommerce.php, но функция woocommerce_content выводит разное содержание, например, отдельный продукт или список продуктов. Например, за отдельный продукт отвечает файл content-single-product.php и т.д.
3. Декларируем поддержку WooCommerce
В файл function.php добавляем код, который указывает, что ваша тема поддерживает WC.
1 2 3 4 |
add_action( 'after_setup_theme', 'woocommerce_support' ); function woocommerce_support() { add_theme_support( 'woocommerce' ); } |
Вот и все. Далее нужно завести какой-нибудь продукт для тестирование и проверить отображение страниц. Скорее всего будет выглядеть не очень хорошо, поскольку в вашей теме не прописаны стили для WooCommerce. Можете сделать свои стили или взять bootstrap с сайта getbootstrap.com.
Описание используемых в WooCommerce шорткодов можно прочитать на сайте http://docs.woothemes.com/document/woocommerce-shortcodes/
– почему-то не работает со страницами корзины и оформлением заказов, при переходе на эти страницы, используется опять-таки шаблон page.php…