Как отобразить пользовательскую таксономию продукта WooCommerce? - PullRequest
0 голосов
/ 21 января 2019

Я хотел бы отображать имя пользовательской таксономии с URL-адресом везде, где появляются продукты WooCommerce:

  1. на домашней странице (https://rockers.pl/) - у меня шорткод из самых продаваемых и новейших продуктов
  2. на страницах архива
  3. на странице одного товара

Я создал собственную таксономию товара для художника:

name: artysci
label: Artyści
singular_label: Artysta
description: ""
public: true
publicly_queryable: true
hierarchical: true
show_ui: true
show_in_menu: true
show_in_nav_menus: true
query_var: true
query_var_slug: ""
rewrite: true
rewrite_slug: ""
rewrite_withfront: true
rewrite_hierarchical: true
show_admin_column: true
show_in_rest: true
show_in_quick_edit: ""
rest_base: ""
rest_controller_class: ""
meta_box_cb: ""

и сейчас - рядомназвание продукта - мне нужно отобразить имя исполнителя с URL к его таксономии. Большое спасибо за любую помощь.

1 Ответ

0 голосов
/ 21 января 2019

Для страниц архива:

add_action( 'woocommerce_before_shop_loop_item_title', 'add_artist_term');
function add_artist_term() {
    $terms = wp_get_post_terms(get_the_ID(), 'artysci');
    if (!is_wp_error($terms) && !empty($terms)) { ?>
        <div class="artist-term-title"><a href="<?php echo esc_url(get_term_link($terms[0])); ?>"><?php echo esc_html($terms[0]->name); ?></a></div>
    <?php }
}

Вы также можете использовать действие woocommerce_after_shop_loop_item_title, чтобы поставить название термина после названия продукта

Для отдельной страницы продукта вам нужно добавить свое действиеили до, или после того, как заголовок добавлен в ловушку ниже.

add_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_title', 5 );

Таким образом, вы бы подключили ту же функцию сверху к woocommerce_single_product_summary, но с приоритетом 4 или 6 вместоиз 5.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...