WordPress中制作导航菜单的方法讲解

  介绍

这篇文章主要讲解了“WordPress中制作导航菜单的方法讲解”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“WordPress中制作导航菜单的方法讲解”吧!

WordPress 3.0引入导航菜单功能,让页面的导航和链接的管理变得简单易用。WP向用户提供了菜单管理页面和多种调用方法,我们先来看一下一般WordPress的导航菜单都具有哪些功能。


<强>管理菜单页面

页面路径:外观比;菜单
由从界面来看,能够创建多个菜单,并且可以向菜单中添加自定义链接,页面链接和分类链接。

 WordPress中制作导航菜单的方法讲解

但有一点需要注意,如果将页面链接和分类链接加入,被带入菜单的仅是链接,而不是页面和分类本身,也就是说,子页面和子分类不会成为菜单的一部分。

另外,我们也不能在菜单中加入别的菜单,所以这种自定义的菜单注定只存在一级。在右边排列菜单区块中,只要将某个菜单往右移一格,就可以作为下级菜单。所以是可以创建多级的。
创建菜单后,我们就可以通过在小部件页面将这些菜单添加到侧边栏上了。

 WordPress中制作导航菜单的方法讲解

<>强登记自定义菜单

在菜单管理页面中注意到主题位置区块提示如下:

,current  theme  does  not  natively  support 菜单,but 你还要use ,“Custom  Menu", widget 用add  any  menus 你create  here 用,主题# 39;s 侧边栏。

意思是说,现在你的主题不支持自定义菜单,但可以通过小部件的方式将自定义加到主题的侧边栏。那如何让主题也能支持自定义菜单呢?请将以下代码加到函数。php中。

 register_nav_menus(数组(
  ,& # 39;主要# 39;,=祝辞,& # 39;Primary 导航# 39;
  ));

这段代码用于记录一个自定义菜单,你可以为它选择具体的应用菜单,其中主要应是唯一识别符,主导航是菜单的名称。可以通过这个函数为主题添加多个自定义菜单。如果在函数。php添加登记方法如下:

register_nav_menus(数组(& # 39;主要# 39;,=祝辞,& # 39;Primary 导航# 39;));   register_nav_menus(数组(& # 39;二次# 39;,=祝辞,& # 39;Secondary 导航# 39;));   register_nav_menus(数组(& # 39;底部# 39;,=祝辞,& # 39;Bottom 导航# 39;));

在菜单管理页面将会看到如下图的内容。

 WordPress中制作导航菜单的方法讲解

<强>主题调用菜单

在主题中如何调用菜单呢?在主题的适合位置使用方法wp_nav_menu();,向页面输出菜单。
方法中提供参数theme_location,用于指定对应的自定义菜单。如要调用第一个菜单,则代码如下:

wp_nav_menu(数组(   ,& # 39;theme_location& # 39;,=祝辞& # 39;主要# 39;   ));

在默认情况下如果没有定义任何菜单,使用wp_nav_menu方法与wp_list_pages(调用页面列表)方法无异,但效率不及后者。所以,如果你准备用页面列表或者分类列表作为导航菜单,建议不要使用wp_nav_menu。

<>强用法

在主题调用导航菜单,方法很简单。只需加入以下语句在页面上输出菜单。

 & lt; ? php  wp_nav_menu();, ?在

但其实这个方法提供了很多可配置的参数,下面我们逐一描述。

<>强参数

参数列表来自WordPress法典,下面逐一翻译,并对不易理解的参数进行详细说明。

<>强劲美元菜单
(字符串)(可选)期望显示的菜单;接受(按顺序匹配的)id,蛞蝓,名字
默认值:没有

我们看一下WordPress取菜单的方法。就像法典上的描述一样,它是按id、蛞蝓、名称的顺序去取的。

 function  wp_get_nav_menu_object (, menu 美元),{
  ,//没有提供参数,,返回空
  ,if (!大敌;menu 美元)
  ,return 假;
  ,
  ,//根据,id 找
  ,menu_obj 美元;=,get_term(美元菜单,大敌;& # 39;nav_menu& # 39;,);
  ,
  ,//如果找不到,,根据,slug 来找
  ,if (!大敌;menu_obj 美元)
  ,menu_obj 美元;=,get_term_by(, & # 39;蛞蝓# 39;,,菜单,美元,& # 39;nav_menu& # 39;,);
  ,
  ,//如果还找不到,,再根据,name 来找
  ,if (!大敌;menu_obj 美元)
  ,menu_obj 美元;=,get_term_by(, & # 39;名字# 39;,,菜单,美元,& # 39;nav_menu& # 39;,);
  ,
  ,//最终没找的到,,返回空
  ,if (!大敌;menu_obj 美元)
  ,menu_obj 美元;=,假;
  ,
  ,return  menu_obj美元;
  }

WordPress中制作导航菜单的方法讲解