Шаблоны WooCommerce — файлы, которые содержат разметку и структуру шаблонов вашего Интернет-магазина. 

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

Листайте карусельку, там представлена структура шаблонов.

Основные шаблоны:

  • archive-product.php — шаблон главного цикла вывода товаров
  • content-product.php — шаблон вывода товара
  • content-product_cat.php — шаблон вывода товара в категории
  • content-single-product.php — шаблон вывода одиночного товара
  • content-widget-price-filter.php — шаблон вывода виджета фильтра цен на товары
  • content-widget-product.php — шаблон вывода товара в стандартных виджетах
  • content-widget-reviews.php — шаблон выводит отзывы о товарах в виджетах
  • product-searchform.php — шаблон формы поиска товаров
  • single-product.php — основной шаблон карточки товара
  • single-product-reviews.php — шаблон вывода комментариев
  • taxonomy-product_cat.php — шаблон выводит товары категории, вызывает archive-product.php
  • taxonomy-product_tag.php — шаблон выводит товары метки, вызывает шаблон архива archive-product.php

Шаблоны для работы с корзиной

  • cart/cart.php — шаблон вывода корзины 
  • cart/cart-empty.php — шаблон вывода пустой корзины
  • cart/cart-item-data.php — шаблон элементов данных + вариаций в корзине
  • cart/cart-shipping.php — шаблон получения методов доставки в корзине
  • cart/cart-totals.php — шаблон итоговых сумм
  • cart/cross-sells.php — шаблон перекрестных продаж
  • cart/mini-cart.php — шаблон вывода мини-корзины в виджете
  • cart/shipping-calculator.php — шаблон калькулятора доставки
  • proceed-to-checkout-button.php — шаблон  кнопки «Оформить заказ». Содержит разметку для кнопки «Перейти к оформлению заказа» в корзине.

Шаблоны оформления заказа:

  • checkout/cart-errors.php — шаблон ошибок при оформлении заказа
  • checkout/form-billing.php — шаблон формы платежной информации
  • checkout/form-checkout.php — шаблон формы оформления заказа
  • checkout/form-coupon.php — шаблон формы купона
  • checkout/form-login.php — шаблон формы входа при оформлении заказа
  • checkout/form-pay.php — шаблон формы оплаты
  • checkout/form-shipping.php — шаблон формы доставки
  • checkout/payment.php — шаблон оплаты при оформлении заказа
  • checkout/payment-method.php — шаблон вывода метода оплаты, из шаблона checkout/payment.php
  • checkout/review-order.php — шаблон просмотра таблицы заказа
  • checkout/thankyou.php — шаблон вывода сообщения после оформлении заказа
  • checkout/terms.php — Сроки и условия оформления заказа

Шаблоны общего назначения

  • global/breadcrumb.php — шаблон вывода «хлебных крошек»
  • global/form-login.php — шаблон формы авторизации
  • global/quantity-input.php — шаблон поля количества для добавления в корзину
  • global/sidebar.php — шаблон вывода сайдбара
  • global/wrapper-end.php — шаблон окончания обертки страницы
  • global/wrapper-start.php — шаблон начала обертки страницы

Шаблоны циклов:

  • loop/add-to-cart.php — шаблон добавление в корзину для цикла товаров
  • loop/loop-end.php — шаблон окончания цикла вывода товаров
  • loop/loop-start.php — шаблон начала цикла вывода товаров
  • loop/no-products-found.php — шаблон вывода информации о не найденных товарах
  • loop/orderby.php — показывает опции для сортировки
  • loop/pagination.php — шаблон пагинации
  • loop/price.php — вывод цены товара
  • loop/rating.php — шаблон вывода суммарного рейтинга
  • loop/result-count.php — выводит общее количество товаров в цикле
  • loop/sale-flash.php — шаблон продаж в цикле товаров

Личный кабинет:

  • myaccount/dashboard.php — панель управления учетной записью. Показывает первый вводный экран
  • myaccount/downloads.php — страница “Мои загрузки”
  • myaccount/form-add-payment-method.php — шаблон добавления метода оплаты
  • myaccount/form-edit-account.php — шаблон формы редактирования своего аккаунта
  • myaccount/form-edit-address.php — шаблон формы редактирования адреса
  • myaccount/form-login.php — шаблон формы входа в личный кабинет
  • myaccount/form-lost-password.php — форма “забыли пароль?”
  • myaccount/form-reset-password.php — форма сброса пароля
  • lost-password-confirmation.php — вывод текста при замене утерянного пароля
  • myaccount/my-account.php — шаблон вывода личного кабинета
  • myaccount/my-address.php — шаблон вывода адреса
  • myaccount/my-downloads.php — шаблон вывода скачанных товаров (устарел)
  • myaccount/my-orders.php — шаблон вывода заказов (устарел)
  • myaccount/navigation.php — навигация по аккаунту
  • myaccount/orders.php — выводит заказы
  • myaccount/payment-methods.php — показывает способы оплаты клиента на странице аккаунта
  • myaccount/view-order.php — шаблон просмотра заказа

Карточка товара:

  • single-product/add-to-cart/external.php — кнопка “Добавить в корзину” для внешнего (партнерского) товара (продукта)
  • single-product/add-to-cart/grouped.php — кнопка “Добавить в корзину” для  сгруппированного товара
  • single-product/add-to-cart/simple.php — кнопка “Добавить в корзину” для  простого товара
  • single-product/add-to-cart/variable.php — кнопка “Добавить в корзину” для  вариативного товара
  • single-product/add-to-cart/variation-add-to-cart-button.php — кнопка “Добавить в корзину” для одиночной вариации
  • single-product/add-to-cart/variation.php — шаблон для одиночных вариаций
  • single-product/tabs/additional-information.php — шаблон вывода содержимого вкладки «Информация»
  • single-product/tabs/description.php — шаблон вывода содержимого вкладки «Описание»
  • single-product/tabs/tabs.php — шаблон вывода вкладок в карточке товара
  • single-product/meta.php — вывод метаданных товара: артикула, категорий, меток товара в карточке товара
  • single-product/price.php — шаблон вывода цены в карточке товара
  • single-product/product-attributes.php — шаблон вывода атрибутов товара
  • single-product/product-image.php — шаблон основной картинки в карточке товара
  • single-product/product-thumbnails.php — шаблон миниатюр в карточке товаров
  • single-product/rating.php — шаблон вывода рейтинга товара
  • single-product/related.php — шаблон вывода сопутствующих товаров
  • single-product/review.php — шаблон вывода комментариев
  • single-product/sale-flash.php — шаблон вывода метки «Распродажа» в карточке товара
  • single-product/share.php — шаблон вывода продукта обмена в карточке товара
  • single-product/short-description.php — шаблон вывода краткого описания в карточке товара
  • single-product/stock.php — показывает остаток товара на складе (управление остатками)
  • single-product/title.php — шаблон вывода заголовка товара в карточке товара
  • single-product/up-sells.php — шаблон вывода рекомендованных товаров

Шаблоны для работы с заказами:

  • order/form-tracking.php — шаблон вывода отслеживания заказа
  • order/order-again.php — шаблон кнопки «Повторить заказ»
  • order/order-details-customer.php — показывает данные заказа клиента
  • order/order-details-item.php — показывает детали заказа
  • order/order-details.php — шаблон таблицы заказа
  • order/order-downloads.php — заказ на скачивание товаров (продуктов)
  • order/tracking.php — шаблон вывода отслеживания заказа

Папка notices содержит шаблоны сообщений пользователю

Папка emails содержит шаблоны сообщений по электронной почте (шаблоны писем об оформлении заказа, отмене и т.д.)

Как редактировать?

Есть два способа изменения шаблонов

  1. Использование хуков.

Каждый файл шаблона содержит хуки, с помощью которых вы можете изменять/добавлять или удалять контент без редактирования самих файлов шаблона.

  1. Редактирование шаблонов.

В папке вашей темы создайте папку woocommerce. Скопируйте туда файлы шаблонов сохраняя иерархическую структуру вложенных файлов и папок.

Если вы хотите изменить только один из шаблонов, скопируйте только один необходимый файл и вносите изменения.

Например, нужно внести изменения в шаблон корзины. Скопируйте файл из папки woocommerce/templates/cart/cart.php в ваша_тема/woocommerce/cart/cart.php. После вы можете вносить изменения в файл cart.php.

Что касается стилей

WooCommerce содержит свои стили “из коробки”, то есть некоторые моменты вам придется переписывать, и иногда даже грубо через !important.

Но вы можете отключить стили прописав такую строчку в functions.php:

add_filter( 'woocommerce_enqueue_styles', '__return_empty_array' );

В этом случае отключаться абсолютно все стили WooCommerce

Если нужно отключить определенные таблицы стилей, создайте функцию в functions.php и через нее отключите нужное:

unset( $enqueue_styles['здесь название таблицы стилей'] );

А затем подключите ваши стили

Какие css-стили можно отключить?

  • woocommerce-general — общие настройки оформления
  • woocommerce-layout — разметка макета
  • woocommerce-smallscreen — оптимизация под мобильные устройства