Условно удалить карманное меню Storefront для одной страницы

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

Предоставленный фрагмент кода:

add_action( 'init', 'jk_remove_storefront_handheld_footer_bar' );

function jk_remove_storefront_handheld_footer_bar() {
remove_action( 'storefront_footer', 'storefront_handheld_footer_bar', 999 );
}

Я хочу удалить меню только для одной страницы, поэтому я попытался использовать is_page крюк.

add_action( 'init', 'remove_storefront_handheld_footer_bar' );
function remove_storefront_handheld_footer_bar() {
if (is_page( $page = 'register' )){
remove_action( 'storefront_footer', 'storefront_handheld_footer_bar', 999 );
}
}

Однако это не удаляет меню портативного устройства. Если я уберу свой is_page логика, затем меню исчезает, но это не та функциональность, которая мне нужна.

1

Решение

Вы можете использовать вместо storefront_footer (тот же крючок) с более высоким приоритетом (нижний номер) чем приоритет, используемый в remove_action() лайк:

add_action( 'storefront_footer', 'remove_storefront_handheld_footer_bar' );
function remove_storefront_handheld_footer_bar() {
if ( is_page( 'register' ) ){
remove_action( 'storefront_footer', 'storefront_handheld_footer_bar', 999 );
}
}

Код помещается в файл function.php вашей активной дочерней темы (или активной темы). Проверено и работает (с любым конкретным идентификатором страницы, именем или слагом). Вы должны быть уверены, что "register" слизняк реально существующего «Страница».

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector