WordPress中用于检索模版的相关PHP函数使用解析


Posted in PHP onDecember 15, 2015

locate_template() 用来检索存在的优先级最高的模板文件,还能直接加载模板文件。

locate_template() 函数检索时,如果有子主题则优先使用子主题的模板,没有再继续检索父主题。

用法

locate_template( $template_names, $load, $require_once );

参数

$template_names

(数组)(必须)要引入的模板文件名(需要扩展名),会根据数组逐个匹配文件是否存在,越前边的优先级越高。

默认值:None

$load

(布尔)(可选)如果设置成 True 则直接引入模板文件。

默认值:False

$require_once

(布尔)(可选)如果设置成 True 则如果之前引入过这次不再引入(require_once),否则无论是否引入过都会引入(require)。

(只有 $load 为 True,此参数才生效)。

默认值:False

返回值

(字符串)只要有一个指定的模板文件存在则返回它的路径,否则返回空字符串。

例子

if( locate_template( 'content-' . $pageName . '.php' ) !== '' ){
  //存在,引入模板文件
  get_template_part( 'content', $pageName );
}else{
  //不存在,直接显示内容
  the_content();
}

其它

此函数位于:wp-includes/template.php

快速检索模板

get_query_template() 用于快速检索出页面模板,而且需要按照预定的页面类型(type)。

它和 locate_template() 的不同在于需要填写页面的类型,而且会生成 {$type}_template 模板路径过滤器。
用法

get_query_template( $type, $templates );

参数

$type

(字符串)(必须)所要获取的模板文件的页面的类型,要填对应模板文件没有扩展名的文件名(比如 single)。

默认值:None

$templates

(数组)(可选)备选的模板列表。

默认值:空数组

返回值

返回模板文件的路径。

例子

如果存在则引入 404 页面的模板:

if ( '' != get_404_template() ) include( get_404_template() );

其它

此函数位于:wp-includes/template.php

PHP 相关文章推荐
台湾中原大学php教程孙仲岳主讲
Jan 07 PHP
php打造属于自己的MVC框架
Mar 07 PHP
php中++i 与 i++ 的区别
Aug 08 PHP
php_screw 1.5:php加密: 安装与使用详解
Jun 20 PHP
基于PHP实现短信验证码接口(容联运通讯)
Sep 06 PHP
PHP实现表单提交时去除斜杠的方法
Dec 26 PHP
php简单生成一组与多组随机字符串的方法
May 09 PHP
Laravel多用户认证系统示例详解
Mar 13 PHP
asp函数split()对应php函数explode()
Feb 27 PHP
PHP中的Iterator迭代对象属性详解
Apr 12 PHP
Laravel框架Request、Response及Session操作示例
May 06 PHP
php集成开发环境详解
Sep 24 PHP
修改WordPress中文章编辑器的样式的方法详解
Dec 15 #PHP
PHP工程师VIM配置分享
Dec 15 #PHP
WordPress中访客登陆实现邮件提醒的PHP脚本实例分享
Dec 14 #PHP
实现WordPress主题侧边栏切换功能的PHP脚本详解
Dec 14 #PHP
php生成curl命令行的方法
Dec 14 #PHP
编写PHP脚本使WordPress的主题支持Widget侧边栏
Dec 14 #PHP
给WordPress中的留言加上楼层号的PHP代码实例
Dec 14 #PHP
You might like
浅析linux下apache服务器的配置和管理
2013/08/10 PHP
Codeigniter生成Excel文档的简单方法
2014/06/12 PHP
Mootools 1.2教程 Fx.Morph、Fx选项和Fx事件
2009/09/15 Javascript
ext 列表页面关于多行查询的办法
2010/03/25 Javascript
jQuery 获取对象 根据属性、内容匹配, 还有表单元素匹配
2010/05/31 Javascript
Javascript中常见的校验如域名、手机、邮箱等等
2014/01/02 Javascript
javascript创建createXmlHttpRequest对象示例代码
2014/02/10 Javascript
使用jquery animate创建平滑滚动效果(可以是到顶部、到底部或指定地方)
2014/05/27 Javascript
JavaScript常用脚本汇总(二)
2015/03/04 Javascript
js仿黑客帝国字母掉落效果代码分享
2020/11/08 Javascript
全屏滚动插件fullPage.js使用实例解析
2016/10/21 Javascript
javascript 中的事件委托详解
2016/10/25 Javascript
JS判断鼠标进入容器的方向与window.open新窗口被拦截的问题
2016/12/23 Javascript
全面解析jQuery中的$(window)与$(document)的用法区别
2017/08/15 jQuery
对VUE中的对象添加属性
2018/09/18 Javascript
[01:31:22]Ti4 循环赛第四日附加赛LGD vs Mouz
2014/07/13 DOTA
[01:21]辉夜杯战队访谈宣传片—CDEC
2015/12/25 DOTA
Python利用ansible分发处理任务
2015/08/04 Python
ansible作为python模块库使用的方法实例
2017/01/17 Python
Python编程实现线性回归和批量梯度下降法代码实例
2018/01/04 Python
python 常用的基础函数
2018/07/10 Python
Python用5行代码写一个自定义简单二维码
2018/10/21 Python
用Python逐行分析文件方法
2019/01/28 Python
基于YUV 数据格式详解及python实现方式
2019/12/09 Python
Pytorch实现基于CharRNN的文本分类与生成示例
2020/01/08 Python
python关于变量名的基础知识点
2020/03/03 Python
python 19个值得学习的编程技巧
2020/08/15 Python
美国花园雕像和家居装饰网上商店:Design Toscano
2019/03/09 全球购物
Easy Spirit官网:美国休闲鞋履中的代表品牌
2019/04/12 全球购物
情人节活动策划方案
2014/02/27 职场文书
反腐倡廉演讲稿
2014/05/22 职场文书
新闻发布会活动策划方案
2014/09/15 职场文书
英语教师个人总结
2015/02/09 职场文书
幼儿园辞职信范文
2015/02/27 职场文书
创业计划书之小型广告公司
2019/10/22 职场文书
Redis数据同步之redis shake的实现方法
2022/04/21 Redis