Добавить шорткод в действие заголовка витрины

#wordpress #hook-woocommerce #storefront

#wordpress #крючок-woocommerce #витрина магазина

Вопрос:

Я пытаюсь добавить короткий код в заголовок на сайте WordPress Woocommerce, который использует тему витрины.

Код, который выполняет содержимое, таков…

 do_action( 'storefront_header' );
 

И я пытаюсь добавить шорткод, используя это в functions.php досье…

 add_action( 'storefront_header', 'bkb_storefront_header_content', 40 );
function bkb_storefront_header_content() {
    echo do_shortcode('[lsphe-header]');
}
 

Я также попытался повторить фрагмент текста, но это тоже не сработало…

 add_action( 'storefront_header', 'bkb_storefront_header_content', 40 );
function bkb_storefront_header_content() {
    echo "HERE";
}
 

Комментарии:

1. В моем случае это работает нормально. Можете ли вы включить WP_DEBUG и проверить, в чем ошибка.

2. Попробуйте с приоритетом 70, add_action( 'storefront_header', 'bkb_storefront_header_content', 70 );

3. @Mohandes После приоритета 70 он отображается под меню.

4. Где вы хотите, чтобы он отображался?

Ответ №1:

В витрине магазина есть следующие разделы, связанные с storefront_header действием:

 storefront_header
@hooked ‘storefront_skip_links’, 0
@hooked ‘storefront_social_icons’, 10
@hooked ‘storefront_site_branding’, 20
@hooked ‘storefront_secondary_navigation’, 30
@hooked ‘storefront_product_search’, 40
@hooked ‘storefront_primary_navigation’, 50
@hooked ‘storefront_header_cart’, 60
 

установите более высокий приоритет в зависимости от того, где вы хотите показать свой шорткод.
Если вы хотите заменить раздел содержимым вашего шорткода, сначала удалите действие витрины магазина по умолчанию, а затем добавьте новое действие:
например, чтобы заменить значки социальных сетей содержимым вашего шорткода, добавьте этот код:

 remove_action( 'storefront_header', 'storefront_social_icons', 10 );
add_action( 'storefront_header', 'bkb_storefront_header_content', 11 );
 

Подробнее: https://businessbloomer.com/storefront-theme-visual-hook-guide /

Комментарии:

1. Я не вижу никаких изменений от удаления и добавления действий, теперь я использую это … remove_action( 'storefront_header', 'storefront_secondary_navigation', 30 ); add_action( 'storefront_header', 'bkb_storefront_header_content', 31 ); function bkb_storefront_header_content() { echo do_shortcode('[lsphe-header]'); echo "HERE"; } , ни результата шорткода, ни «ЗДЕСЬ», независимо от уровня приоритета. где

2. Я пытаюсь заменить ссылку «Войти» в фиолетовом поле в заголовке… область ‘storefront_secondary_navigation’. Не видя никаких изменений, удаляющих и добавляющих такие действия, как … remove_action( 'storefront_header', 'storefront_secondary_navigation', 30 ); add_action( 'storefront_header', 'bkb_storefront_header_content', 31 ); function bkb_storefront_header_content() { echo do_shortcode('[lsphe-header]'); echo "HERE"; } Даже простое использование remove_action( 'storefront_header', 'storefront_secondary_navigation', 30 ); не устраняет ссылку «Войти» в фиолетовом поле заголовка.