@alexgugr
HTML/CSS/JS, C++, Python и т.д.

Как кастомизировать вывод товаров Woocommerce?

Пытаюсь использовать woocommerce в своей теме для создания магазина.
Все шло хорошо, пока не дошел до момента с выводом товаров. Использую данную конструкцию:
<?php woocommerce_content(); ?>
но эта функция для вывода товаров использует свои собственные шаблоны. Как мне выводить информацию о товарах в свою верстку?
К примеру я сверстал такую конструкцию:
<div class="item">
<img src="img/item1.jpg">
<h3 class="item_item">Гидравлическая тележка Lema LM 20-800x550</h3>
<div class="item_content">
Длинна вил, мм; 800
Грузоподьемность, кг; 2000
Производитель; Lema
Вариант исполнения; Коротковильные
Ширина вил, мм; 550
</div>
</div>

Как мне выводить информацию в данную конструкцию?
  • Вопрос задан
  • 1353 просмотра
Решения вопроса 1
wppanda5
@wppanda5 Куратор тега WordPress
WordPress Mедведь
woocommerce_content - выглядит так
https://docs.woothemes.com/wc-apidocs/source-funct...
соответственно она возвращает цикл с подключенными тэмплэйтами вывода.

Для изменения вывода надо менять тэмплэйты.
Можно менять это через фильтр при подключении тэмплэйта, проверяя что подключается

Пример замены тэмплейта поля выбора количества товара
/**
 * Замена спиннера
 * @param $located
 * @param $template_name
 * @param $args
 * @param $template_path
 * @param $default_path
 * @return string
 */
function filter_сr_woo_quantity_inputs( $located, $template_name, $args, $template_path, $default_path ){
    if('global/quantity-input.php' === $template_name ) {
        return __DIR__ .'/cr-quantity-input.php';
    } else {
        return $located;
    }
};
add_filter( 'wc_get_template', 'filter_сr_woo_quantity_inputs', 10, 5 );


Но этот способ, он в основном для плагинов, сам WooCommerce предоставляет для этого отличную возможность, достаточно закинуть в тему папку WooCoommerce папку с названием woocommerce а в нее содержимое папки templates из плагина, и там меняйте шаблоны вывода как угодно, пихайте какую угодно верстку, выводится будут именно они.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
25 апр. 2024, в 20:02
100000 руб./за проект
25 апр. 2024, в 19:42
49000 руб./за проект
25 апр. 2024, в 19:41
2000 руб./за проект