【发布时间】:2015-05-01 03:25:31
【问题描述】:
我正在尝试在 wordpress 中创建一个简单的导航,但是 wp_nav_menu 参数被忽略了,我是否遗漏了一些明显的东西?
我正在使用一个名为 html5 blank 的空白模板。下面列出了我采取的步骤
1) 在functions.php中注册菜单
2) 从wordpress后端创建一个名为'p'的菜单并分配页面
3) 给菜单一个主题位置
注册和分配菜单位置工作正常,有些但出于某种原因 wp_ 参数被忽略 EG 容器、菜单类、菜单 ID 等...
如果我检查元素,容器 'nav' 丢失并且 li 项目具有默认的 word press 类
下面是我的代码
header.php 中的代码
<?php html5blank_nav() ?>
functions.php 中的代码
function html5blank_nav()
{
wp_nav_menu(
array(
'theme_location' => 'primary pete',
'menu' => 'p'
'container' => 'nav',
'container_class' => '',
'container_id' => '',
'menu_class' => 'slimmenu',
'menu_id' => 'navigation',
'echo' => true,
'fallback_cb' => 'false',
'before' => '',
'after' => '',
'link_before' => '',
'link_after' => '',
'items_wrap' => '<ul>%3$s</ul>',
'depth' => 0,
'walker' => ''
)
);
}
// 注册 HTML5 空白导航
function register_html5_menu()
{
register_nav_menus(array( // Using array to specify more menus if needed
'primary' => __('primary pete', 'Primary Menu'),
'sidebar-menu' => __('Sidebar Menu', 'html5blank'),
'extra-menu' => __('Extra Menu', 'html5blank')
));
}
// Remove the <div> surrounding the dynamic navigation to cleanup markup
function my_wp_nav_menu_args($args = '')
{
$args['container'] = false;
return $args;
}
// Remove Injected classes, ID's and Page ID's from Navigation <li> items
function my_css_attributes_filter($var)
{
return is_array($var) ? array() : '';
}
// Remove invalid rel attribute values in the categorylist
function remove_category_rel_from_category_list($thelist)
{
return str_replace('rel="category tag"', 'rel="tag"', $thelist);
}
// Add page slug to body class, love this - Credit: Starkers Wordpress Theme
function add_slug_to_body_class($classes)
{
global $post;
if (is_home()) {
$key = array_search('blog', $classes);
if ($key > -1) {
unset($classes[$key]);
}
} elseif (is_page()) {
$classes[] = sanitize_html_class($post->post_name);
} elseif (is_singular()) {
$classes[] = sanitize_html_class($post->post_name);
}
return $classes;
}
非常感谢, P
【问题讨论】: