areshin71
Гуру форума
- Регистрация
- 19 Сен 2015
- Сообщения
- 114
- Реакции
- 58
- Автор темы
- #1
Здравствуйте!
Версия Wordpress - 4.9.8
Версия Woocommerce - 3.4.4
Тема - Flatsome 3.5.3
Есть код, который добавляется в functios.php, и который добавляет второе поле для описания (выводится под товарами) в категории woocommecre.
Как сделать, чтобы это описание выводилось только на первой странице категории товаров, а на страницах пагинации (2,3,...) - нет.
Может поможет, есть вот такой еще код для functions.php, который выводит стандартное описание категории woocommerce на всех страницах пагинации. У меня он не прописан, если что:
Заранее спасибо всем, кто откликнулся!
Версия Wordpress - 4.9.8
Версия Woocommerce - 3.4.4
Тема - Flatsome 3.5.3
Есть код, который добавляется в functios.php, и который добавляет второе поле для описания (выводится под товарами) в категории woocommecre.
Код:
//dobavlyaem 2 pole dlya kategoriy tovarov
add_action( 'product_cat_edit_form_fields', 'wpm_taxonomy_edit_meta_field', 10, 2 );
function wpm_taxonomy_edit_meta_field($term) {
$t_id = $term->term_id;
$term_meta = get_option( "taxonomy_$t_id" );
$content = $term_meta['custom_term_meta'] ? wp_kses_post( $term_meta['custom_term_meta'] ) : '';
$settings = array( 'textarea_name' => 'term_meta[custom_term_meta]' );
?>
<tr class="form-field">
<th scope="row" valign="top"><label for="term_meta[custom_term_meta]">Второе описание или банеры внизу для категории</label></th>
<td>
<?php wp_editor( $content, 'product_cat_details', $settings ); ?>
</td>
</tr>
<?php
}
add_action( 'edited_product_cat', 'save_taxonomy_custom_meta', 10, 2 );
add_action( 'create_product_cat', 'save_taxonomy_custom_meta', 10, 2 );
function save_taxonomy_custom_meta( $term_id ) {
if ( isset( $_POST['term_meta'] ) ) {
$t_id = $term_id;
$term_meta = get_option( "taxonomy_$t_id" );
$cat_keys = array_keys( $_POST['term_meta'] );
foreach ( $cat_keys as $key ) {
if ( isset ( $_POST['term_meta'][$key] ) ) {
$term_meta[$key] = wp_kses_post( stripslashes($_POST['term_meta'][$key]) );
}
}
update_option( "taxonomy_$t_id", $term_meta );
}
}
add_action( 'woocommerce_after_shop_loop', 'wpm_product_cat_archive_add_meta' );
function wpm_product_cat_archive_add_meta() {
$t_id = get_queried_object()->term_id;
$term_meta = get_option( "taxonomy_$t_id" );
$term_meta_content = $term_meta['custom_term_meta'];
if ( $term_meta_content != '' ) {
echo '<div class="woo-sc-box normal rounded full">';
echo apply_filters( 'the_content', $term_meta_content );
echo '</div>';
}
}
Как сделать, чтобы это описание выводилось только на первой странице категории товаров, а на страницах пагинации (2,3,...) - нет.
Может поможет, есть вот такой еще код для functions.php, который выводит стандартное описание категории woocommerce на всех страницах пагинации. У меня он не прописан, если что:
Код:
/* Display WooCommerce product category description on all category archive pages */
function my_theme_woocommerce_taxonomy_archive_description() {
if ( is_tax( array( 'product_cat', 'product_tag' ) ) && get_query_var( 'paged' ) != 0 ) {
$description = wc_format_content( term_description() );
if ( $description ) {
echo '<div class="term-description">' . $description . '</div>';
}
}
}
add_action( 'woocommerce_archive_description', 'my_theme_woocommerce_taxonomy_archive_description');
Заранее спасибо всем, кто откликнулся!
Последнее редактирование: