WP-CITY.RU

Авторские шаблоны WordPress

Недорогой, функциональный сайт или Интернет-магазин
это реально!


Заказать интернет-магазин сейчас

Дополняем категории woocommerce SEO текстом

Доброго дня, в последнее время, большой популярностью пользуются русские шаблоны для не менее востребованного интернет магазина на основе woocommerce.
Все в нем все хорошо, но не предусмотрено поле для SEO текста, для каждой категории, сегодня я вам расскажу как немного изменить ситуацию в лучшую сторону.
Люди которые занимаются продвижением сайтов, в первую очередь требуют именно этот пункт, ну и меня не обошло данное действие.
Для начала нам надо зарегистрировать наше дополнительное поле, чтоб оно у нас появилось при редактировании категории товаров, для большего эффекта мы пропишем не просто поле, а полноценный
текстовый редактор.

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 );
  }
}

Данный код надо поместить в файл вашего шаблона functions.php
После этого у нас в категориях товаров появится текстовый редактор.
Screenshot_4

Теперь все это дело надо вывести в шаблон.

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>';
  }
}

Данный код надо поместить в файл вашего шаблона functions.php
Теперь в каждой категории будет выводится ваш текст, банер, да все что угодно.
Всем приятной работы!!!

  1. Святослав

    Спасибо большое за скрипт! Скажите, а как можно сделать то-же самое, но для таксономий товаров?

1 2 3 4 5

© 2012–2017 / wp-city.ru / Авторские шаблоны WORDPRESS / Создание сайтов

evgeniy38868     krizisvt@i.ua