2015-12-18 3 views
-1

Я пытаюсь настроить тему Wordpress. Я должен изменить основное меню.Wordpress фильтр непонятно понял

Поэтому я предполагаю, что для этого нужно добавить фильтр. На данный момент у меня нет:

functions.php:

add_filter('__header_one_page' , '_one_page_menu'); 

function _one_page_menu($data) { 
    return '<h1>Hello World</h1>'; 
} //end of _one_page_menu 

header.php:

[...] 
<?php 
apply_filters('__header_one_page', do_action('__header')); 
?> 

И отображается меню, и никаких изменений.

Если кто-то может помочь, я думаю, это не сложно, но я не могу понять, что пошло не так.

Спасибо заранее, Le Barde.

+1

Какие изменения вы хотите сделать в меню primay? Изменить структуру html? Добавить контент перед основным меню? Объясните, что вы можете – Nozifel

+0

Я хочу изменить записи в меню. На самом деле я реализую одностраничную функциональность внутри темы, и меню заголовка необходимо настроить, чтобы отображать разделы страниц, а не главное меню сайта. – Creasixtine

+0

Не могли бы вы просто сделать это в Admin? – rnevius

ответ

0

Проблема решена. Я использую тему Customizr, которая имеет определенный фильтр в inc/parts/class-header-menu.php. Вот код, который мы хотим видеть:

/*************************************** 
* VIEWS 
****************************************/ 
/** 
* Menu Rendering : renders the navbar menus, or just the sidenav toggle button 
* hook : '__navbar' 
* 
* @package Customizr 
* @since Customizr 3.0 
*/ 
function tc_menu_display() { 
    ob_start(); 

    //renders the regular menu + responsive button 
    if (! $this -> tc_is_sidenav_enabled()) { 
     $this -> tc_regular_menu_display('main'); 
    } else { 
     $this -> tc_sidenav_toggle_button_display(); 
     if ($this -> tc_is_second_menu_enabled()) 
     $this -> tc_regular_menu_display('secondary'); 
     else 
     $this -> tc_maybe_display_second_menu_placeholder(); 
    } 

    $html = ob_get_contents(); 
    ob_end_clean(); 

    echo apply_filters('tc_menu_display', $html); 
} 

Теперь мы просто должны add_filter('tc_menu_display' , '_one_page_menu'); и moodify его.

Смежные вопросы