位置: 编程技术 - 正文

WordPress中制作导航菜单的PHP核心方法讲解(wordpress导入主题教程)

编辑:rootadmin

推荐整理分享WordPress中制作导航菜单的PHP核心方法讲解(wordpress导入主题教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:wordpress怎么做,wordpress导入主题教程,wordpress导航菜单设置,wordpress文章导航插件,wordpress导出,wordpress导出,wordpress导入,wordpress导入,内容如对您有帮助,希望把文章链接给更多的朋友!

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

管理菜单页面

页面路径: Appearance > Menus由从界面来看, 能够创建多个菜单, 并且可以向菜单中添加自定义链接, 页面链接和分类链接.

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

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

登记自定义菜单

在菜单管理页面中注意到 Theme Locations 区块提示如下:

意思是说, 现在你的主题不支持自定义菜单, 但可以通过 Widget 的方式将自定义加到主题的侧边栏. 那如何让主题也能支持自定义菜单呢&#; 请将以下代码加到 function.php 中.

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

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

主题调用菜单

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

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

用法

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

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

参数

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

WordPress中制作导航菜单的PHP核心方法讲解(wordpress导入主题教程)

$menu(字符串)(可选) 期望显示的菜单; 接受 (按顺序匹配的) id, slug, name默认值: None

我们看一下 WordPress 取菜单的方法. 就像 Codex 上的描述一样, 它是按 id, slug, name 的顺序去取的.

$container(字符串)(可选) ul 父节点的标签类型默认值: div

千万不要以为什么标签都可以使用, 事实上只有 div 和 nav 会被采用, 如果输入别的值, ul 父节点的标签将不会显示, 可见 Codex 的描述不够详尽. (从另一个角度看, WordPress 使用 nav 标签说明它正在提升对 HTML5 的支持力度.)

$container_class(字符串)(可选) ul 父节点的 class 属性值默认值: menu-{menu slug}-container

$container_id(字符串)(可选) ul 父节点的 id 属性值默认值: None

$menu_class(字符串)(可选) ul 节点的 class 属性值默认值: menu

$menu_id(字符串)(可选) ul 节点的 id 属性值默认值: menu slug, 自增长的

$echo(布尔型)(可选) 决定直接显示菜单还是返回 HTML 片段默认值: true (直接显示)

$fallback_cb(字符串)(可选) 如果菜单不存在, 调用的回调函数默认值: wp_page_menu (显示页面列表作为菜单)

这是一个很重要的方法, 可以通过它去兼容老版本主题. 下面我们看看代码. 关键是 $args 也被传入 call_user_func 中. 例如, 我们将参数 'sort_column'=>'menu_order' 写入 wp_nav_menu 的参数, 那它同样会被传到 call_user_func 方法中. 如果 call_user_func 是 wp_page_menu 方法, 那么显示的页面列表将以认为赋予的序号来排序输出.

$before(字符串)(可选) 显示在每个菜单链接前的文本默认值: None

$after(字符串)(可选) 显示在每个菜单链接后的文本默认值: None

$link_before(字符串)(可选) 显示在每个菜单链接文本前的文本默认值: None

$link_after(字符串)(可选) 显示在每个菜单链接文本后的文本默认值: None

我怀疑 Codex 对 $before 与 $link_before, $after 与 $link_after 的描述是不是倒过来了&#;

$depth(整型)(可选) 显示菜单的深度, 当数值为 0 时显示所有默认值: 0

$walker(字符串)(可选) 自定义的遍历对象默认值: None

$theme_locaton(字符串)(可选) the location in the theme to be used--must be registered with register_nav_menu() in order to be selectable by the user默认值: None

如果主题在 function.php 中登记了 3 个自定义菜单, 如下:

要调用 Secondary Navigation 这个导航菜单, 则可以在 header.php 文件里使用以下语句:

也就是说, 这是用来指定调用某个自定义菜单的.

使用PHP+AJAX让WordPress动态加载文章的教程 为什么要动态加载文章1.快速向访客展示页面文章很容是包含大量文字和多媒体资源(如:图片,视频,音乐),加载这些内容需要占用很多的时间.如果你的页

Yii2隐藏frontend/web和backend/web的方法 Yii是一个高性能,基于组件的PHP框架,用于快速开发现代Web应用程序。名字Yii(读作`易`)在中文里有极致简单与不断演变两重含义,也可看作**YesItIs**!

php类中的$this,static,final,const,self这几个关键字使用方法 本篇文章主要分项了一下关于php类中的$this,static,final,const,self这几个关键字使用方法。$this$this表示当前实例,在类的内部方法访问未声明为const及s

标签: wordpress导入主题教程

本文链接地址:https://www.jiuchutong.com/biancheng/276286.html 转载请保留说明!

上一篇:基于PHP如何把汉字转化为拼音(php怎么输出汉字)

下一篇:使用PHP+AJAX让WordPress动态加载文章的教程(php处理ajax)

  • 期末留抵增值税在哪个科目
  • 销项税额和进项税额发票怎么区别
  • 发票开票地址是注册地址还是经营地址
  • 资本公积只能转现金吗
  • 销售使用过的汽车如何缴纳增值税
  • 残保金申报工资应该是实发数吗
  • 应交税费销项税在借方还是贷方
  • 报关单位的信用管理制度
  • 无形资产建造期间的摊销记在哪里
  • 度假村功能
  • 向境外支付特许权使用费免征增值税
  • 暂估入库发票差额怎么办
  • 企业之间利息收入怎么做账
  • 待认证进项税额转出会计分录
  • 银行流动性比例要求
  • 累计折旧是备抵类科目吗
  • 营改增后征收增值税的税目
  • 运费发票备注栏样板
  • 资产减值损失月末需要结转吗
  • 公司年度财务报告怎么写
  • window10拖动窗口的手势
  • windows版本比较
  • 如何win10家庭版升级专业版
  • 酒店布草间有摄像头吗
  • 在线网速测试工具
  • 个体户一般纳税人可以开13个点的专票吗
  • 企业投资入股的几种方式
  • 格拉纳达的阿尔罕布拉宫用什么材料制成?
  • 新公司30天内未办理税务登记
  • wordpress拿shell
  • 外贸企业退运后的进项税如何处理
  • php日期差
  • 减值准备对方科目不能是固定资产
  • gridviewcolumn
  • 工业会计和商业会计有什么区别
  • vue使用教程
  • labview实例教程
  • 公司搞研发是什么意思
  • 公允价值计量转权益法例题
  • 一般纳税人企业所得税如何计算
  • 土地评估增值计入什么科目
  • 定期定额自行申报表
  • 会务费如何入账
  • 费用发票可以抵扣进项税吗
  • 企业所得税包含员工工资吗
  • 企业的管理费用,财务费用和销售费用计不计成本呢
  • CMS不要让MySQL为你流泪
  • 景点门票做什么科目
  • 税务师考试的报名时间
  • 交易性金融资产公允价值变动怎么算
  • 公司购买不动产契税税率
  • 人力资源外包服务企业
  • 增值税发票开错冲红重开如何做会计分录?
  • 管理费用抵扣企业所得税的比例
  • 甲方代付农民工工资谁报个税
  • 12月多开的发票,可以明年1月份入账吗?
  • 招待费发票怎么做分录
  • 实收资本相关认定
  • 在建工程二级科目待摊支出
  • 三大财务报表英文
  • sqlserver 类型
  • Win7系统如何清除流氓屏保
  • linux系统中cron命令
  • 如何自己解封微信号呢
  • 远程登陆服务器命令
  • windows字幕软件
  • Win10任务栏天气怎么关闭
  • win7系统电脑怎么连接热点
  • linux在服务器的份额
  • windows1020h2版本怎么样
  • win8.1应用商店不能装软件,提示此项应用不在提供
  • linux升级内核要重启吗
  • unity锚点
  • javascript中的document.write
  • Extjs中使用extend(js继承) 的代码
  • Android之Android apk动态加载机制的研究(二):资源加载和activity生命周期管理
  • andengine学习,《android游戏开发实践指南》详解
  • jQuery ajaxForm()的应用
  • 国税局的标志
  • 增值税发票税款数额是什么
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设