@kentos

Не работает функция, как исправить?

Не работает функция, как сделать, чтобы она срабатывала, только на подкатегориях?

remove_action( 'woocommerce_archive_description', 'woocommerce_taxonomy_archive_description', 10 );

add_action( 'woocommerce_after_main_content', 'woocommerce_taxonomy_archive_description', 100 );
	
add_action( 'woocommerce_after_shop_loop', 'woocommerce_taxonomy_archive_description', 100 );
	
	
$current_cat_id = get_queried_object();
$category = get_category($current_cat_id);
	
if ($category->category_parent > 0){
	
  function woocommerce_taxonomy_archive_description() {
		
	if ( is_tax( array( 'product_cat', 'product_tag' ) ) && get_query_var( 'paged' ) == 0 ) {
		$description = wpautop( do_shortcode( term_description() ) );
		if ( $description ) {
			echo '<div class="term-description">' . $description . '</div>';
		}
	}
	}
	  
} else {
	
}


Ну а если в основной, то оставляла как есть, это опять прописывать add_action? или как отменить action который удаляет описание перед товарами
  • Вопрос задан
  • 103 просмотра
Решения вопроса 1
wppanda5
@wppanda5 Куратор тега WordPress
WordPress Mедведь
function init_actions() {

		$object = get_queried_object();
		if ( ! empty( (int) $object->parent ) && is_tax( [
				'product_cat',
				'product_tag'
			] ) && 0 === get_query_var( 'paged' ) ) {
			remove_action( 'woocommerce_archive_description', 'woocommerce_taxonomy_archive_description', 10 );
			add_action( 'woocommerce_after_main_content', 'woocommerce_taxonomy_archive_description', 100 );
			add_action( 'woocommerce_after_shop_loop', 'woocommerce_taxonomy_archive_description', 100 );
		}
	}

	add_action( 'init', 'init_actions' );

	function woocommerce_taxonomy_archive_description() {
		$description = wpautop( do_shortcode( term_description() ) );
		if ( ! empty( $description ) ) {
			printf( '<div class="term-description">%s</div>', $description );
		}
	}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы