2011-05-21 138 views
0

我正在设计一个WordPress主题,目前正在为我的主页构建导航。 代码1允许我使用自定义菜单刑罚创建页面。我使用代码2创建一个链接到它索引bloginfo('url')的当前页面;会给我的网站的网址,这将是主页,至少这是我的承诺。我可以使用自定义链接添加链接到菜单并链接到主页,但我希望主题能够链接到本地​​主页,或者位于设置菜单中。任何关于这个问题的想法将不胜感激。如何添加主页链接到新的WordPress主题的导航?

<!--code number 1--> 
<ul id="menu"> 
<?php wp_list_pages('title_li=&depth=1'); ?> 
</ul> 

<!--code number 2--> 
<ul id="menu"> 
<li><a href="<?php bloginfo('url'); ?>" title="Home">Home</a></li> 
<?php wp_list_pages('title_li=&depth=1'); ?> 
</ul> 
+1

我不明白你的问题到底是什么。 “代码2”可以满足你的需求 - 它创造出如下的菜单:HOME | TOP_LEVEL_PAGE1 | TOP_LEVEL_PAGE2 | ETC - 然而,您正在编写“代码1允许我使用自定义菜单面板创建页面”。那是不正确的。 'wp_list_pages'按原样列出页面。你可以用'sort_column'参数改变顺序,但就是这样。如果您想在wp-admin中使用“菜单”选项,则必须改用'wp_nav_menu'。 – 2011-05-21 02:24:07

+0

您应该遵循WP-Documentation:http://codex.wordpress.org/Function_Reference/wp_nav_menu并在您的主题的functions.php中添加以下代码:'/ ** *获取我们的wp_nav_menu()后备,wp_page_menu() ,显示一个家庭链接。 * *若要在子主题中覆盖此项,请移除筛选器,并可选择添加 *您自己的与wp_page_menu_args筛选器挂钩关联的函数。函数my_page_menu_args($ args){ \t $ args ['show_home'] = true; \t return $ args; } add_filter('wp_page_menu_args','my_page_menu_args');' – 2014-01-04 16:21:12

回答

1

改为使用相对较新的Wordpress菜单功能。

将下面的register_nav_menu函数添加到您的functions.php文件中。

add_action('after_setup_theme', 'template_setup'); 

if (! function_exists('template_setup')): 

function template_setup() { 
    // register nave menu 
    register_nav_menu('primary','Main Menu'); 
} 
endif; 

如果您已经拥有了对“template_setup”触发一个函数,刚刚添加下面一行到功能:

register_nav_menu('primary','Main Menu'); 

然后在你的header.php(或任何你想要的地方菜单出现)的调用添加到wp_nav_menu

<?php wp_nav_menu(array('menu' => 'Main Menu','container' => false)); ?> 

然后登录到你的WordPress管理区域,使用具有管理员权限用户名。转到外观>菜单(在你的functions.php文件中注册菜单后,这是一个新的页面,可以访问)。

创建一个新菜单,将其称为您喜欢的,并将其分配给主题位置,在这种情况下为“主菜单”。在这里,您现在可以从您的wordpress安装中的任何页面,帖子,类别等构建您的菜单。还包括一个方便的链接到'家'。有关界面的更多信息,请参阅here

界面非常漂亮,拖放效果非常好,菜单的其他功能保持不变,即使添加新页面也是如此。

/

另外如果你想谁都不联系的,但谁是“编辑者能够编辑菜单中的用户,以下内容添加到您的functions.php文件。

// editor role - add appearance menu 
$role_object = get_role('editor'); 
// add $cap capability to this role object 
$role_object->add_cap('edit_theme_options'); 
+0

“还包括一个方便的链接到'家'”好的我找到它在菜单管理员的视图中的所有选项卡,当我选择添加它创建的所有一个自定义的菜单项,但我如何使这个项目与主题的标准项目。换句话说,用户在创建菜单时会自动创建“主页”,并会添加除已经在菜单中的主页以外的所有其他页面。试图减少用户需要做的事情,以使主题易于使用。 – tanktery 2011-05-21 11:06:00

+0

“主页”页面由您在“设置>阅读”部分设置的内容决定。即如果您的主页设置为一个页面,或设置为您的博客列表。 我对你试图达到的目标有点困惑。菜单一旦建成,就建成了,不是吗? – addedlovely 2011-05-21 13:46:40

+0

假设用户总是需要主页按钮,我希望在菜单生成之前将主页按钮放置在菜单中。我希望它作为默认设置在那里。这是不明智的? – tanktery 2011-05-21 20:39:13

相关问题