#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 );
не устраняет ссылку «Войти» в фиолетовом поле заголовка.