/ Плагины / Настройка вывода подкатегорий товаров

Настройка вывода подкатегорий товаров

12.02.2021

607

При варианте вывода в категориях товаров, в не зависимости есть ли подкатегории или нет, для более точного подбора товаров можно выводить до товаров подкатегории. При этом сделать это можно довольно вариативно. Например, настроить выводить или нет ту или иную категорию, настроить порядок вывода подкатегорий (отличный от основной сортировки категорий WC), настроить размер блока подкатегории (в 2 раза вире / в 2 раза выше для верстки плиткой).

Выводить ли подкатегорию

Код создания метаполя ON

// Создание метаполя Включить/Отключить категорию
add_action('product_cat_add_form_fields', 'wh_taxonomy_add_work_meta_field', 10, 1);
add_action('product_cat_edit_form_fields', 'wh_taxonomy_edit_meta_field', 10, 1);

// Product Cat Create page
function wh_taxonomy_add_work_meta_field() {
    ?>   
    <div class="form-field">
        <label for="wh_meta_desc">
		<input type="hidden" name="wh_meta_desc" value="">
		<input name="wh_meta_desc" type="checkbox" id="wh_meta_desc"> Включить
		</label>
    </div>
    <?php
}


//Product Cat Edit page
function wh_taxonomy_edit_meta_field($term) {

    $wh_meta_desc = get_term_meta($term->term_id, 'wh_meta_desc', true);
    ?>
    <tr class="form-field">
        <th scope="row" valign="top"><label for="wh_meta_desc">Включить</label></th>
        <td>
			<label for="wh_meta_desc">
			<input type="hidden" name="wh_meta_desc" value="">
			<input name="wh_meta_desc" type="checkbox" id="wh_meta_desc" <?php if ($wh_meta_desc == 'on'){ echo 'checked'; }; ?>> Включить
			</label>
        </td>
    </tr>
    <?php
}


// Сохранение данных метаполя Включить/Отключить категорию
add_action('edited_product_cat', 'wh_save_taxonomy_custom_meta', 10, 1);
add_action('create_product_cat', 'wh_save_taxonomy_custom_meta', 10, 1);

// Save extra taxonomy fields callback function.
function wh_save_taxonomy_custom_meta($term_id) {
    $wh_meta_desc = filter_input(INPUT_POST, 'wh_meta_desc');
    update_term_meta($term_id, 'wh_meta_desc', $wh_meta_desc);
}

Порядок вывода подкатегорий (произвольный)

// Создание метаполя Порядок

add_action('product_cat_add_form_fields', 'pippin_taxonomy_add_order_meta_field', 10, 1);
function pippin_taxonomy_add_order_meta_field() {
	?>
	<div class="form-field">
		<label for="order_term_meta">Порядок вывода</label>
		<input type="number" name="order_term_meta" id="order_term_meta" value="0">
	</div>
	<?php
}


// Редактирование метаполя Порядок
add_action('product_cat_edit_form_fields', 'pippin_taxonomy_edit_meta_field', 10, 1);
function pippin_taxonomy_edit_meta_field($term) {

	$order_term_meta = get_term_meta( $term->term_id, 'order_term_meta', 1 ); ?>
	
	<tr class="form-field">
	<th scope="row" valign="top"><label for="order_term_meta">Порядок вывода</label></th>
	<td>
	<input type="number" name="order_term_meta" id="order_term_meta" value="<?php if ( !empty($order_term_meta) ) { echo $order_term_meta; } else { echo '0'; } ?>">
	</td>
	</tr>
	<?php
	
}


// Сохранение метаполя Порядок

add_action('edited_product_cat', 'save_taxonomy_order_meta', 10, 1);
add_action('create_product_cat', 'save_taxonomy_order_meta', 10, 1);
function save_taxonomy_order_meta( $term_id ) {
	$order_term_meta = filter_input(INPUT_POST, 'order_term_meta');
	update_term_meta($term_id, 'order_term_meta', $order_term_meta);
}

Размер блока подкатегории

Продолжение следует…

Поделиться в соц. сетях:

  • Похожие записи
  • Комментарии
  • Вложения
Оформление заказа

Оформление заказа

Страница оформления плагина woocommerce имеет определенную структуру и функционал. Но данная структура не совсем удобна. Доработаем страницу оформления, разбив на логические блоки: Заказ, Доставка, Форма оплаты, Информация о заказчике и Читать далее »

/
Интеграция Woocommerce с 1С

Интеграция Woocommerce с 1С

Интеграция Woocommerce с 1С — довольно сложная тема с множеством нюансов. Буду описывать на что стоит обращать внимание, с какими проблемами пришлось столкнуться. Плагин 1С:Предприятие Data Exchange Так как не Читать далее »

Лэйблы используя PHP

Лэйблы используя PHP

Как делать создание лэйблов налету средствами jQuery используя post_class описано здесь. В данной статье сделаем вывод подобных лэйблов средствами WordPress (PHP). Данный способ даст более гибкий и универсальный подход к Читать далее »

Добавить комментарий

Пока нет комментариев. Будь первым!

Настройка вывода подкатегорий товаров
Варианты сортировки woocommerce
Рекомендации для васВарианты сортировки woocommerceOpttour.ru
Спасибо! Наш менеджер свяжется с Вами в течении 5 минут.