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作的文本留言本的例子(六)
Oct 09 PHP
NOD32 v2.70.32 简体中文封装版 提供下载了
Feb 27 PHP
深入理解PHP中的Session和Cookie
Jun 21 PHP
PHP关于IE下的iframe跨域导致session丢失问题解决方法
Oct 10 PHP
PHP父类调用子类方法的代码例子
Apr 09 PHP
php获取mysql字段名称和其它信息的例子
Apr 14 PHP
PHP获取youku视频真实flv文件地址的方法
Dec 23 PHP
php字符集转换
Jan 23 PHP
PHP基于自增数据如何生成不重复的随机数示例
May 19 PHP
PHP基于cookie实现统计在线人数功能示例
Jan 16 PHP
PHP数组与字符串互相转换实例
May 05 PHP
PHP实现两种排课方式
Jun 26 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
php检测iis环境是否支持htaccess的方法
2014/02/18 PHP
PHP实现仿百度文库,豆丁在线文档效果(word,excel,ppt转flash)
2016/03/10 PHP
PHP之将POST数据转化为字符串的实现代码
2016/11/03 PHP
php 截取GBK文档某个位置开始的n个字符方法
2017/03/08 PHP
利用PHP扩展Xhprof分析项目性能实践教程
2018/09/05 PHP
laravel按天、按小时,查询数据的实例
2019/10/09 PHP
ThinkPHP5.0框架实现切换数据库的方法分析
2019/10/30 PHP
基于jquery的复制网页内容到WORD的实现代码
2011/02/16 Javascript
浅析JavaScript中两种类型的全局对象/函数
2013/12/05 Javascript
DropDownList控件绑定数据源的三种方法
2016/12/24 Javascript
javascript判断元素存在和判断元素存在于实时的dom中的方法
2017/01/17 Javascript
微信小程序通过api接口将json数据展现到小程序示例
2017/01/20 Javascript
knockoutjs模板实现树形结构列表
2017/07/31 Javascript
关于JavaScript语句后面的分号问题
2017/12/07 Javascript
Next.js项目实战踩坑指南(笔记)
2018/11/29 Javascript
React 全自动数据表格组件——BodeGrid的实现思路
2019/06/12 Javascript
JS实现时间校验的代码
2020/05/25 Javascript
详解JavaScript中的数据类型,以及检测数据类型的方法
2020/09/17 Javascript
Python使用Supervisor来管理进程的方法
2015/05/28 Python
Python爬虫代理IP池实现方法
2017/01/05 Python
python 切换root 执行命令的方法
2019/01/19 Python
详解python列表生成式和列表生成式器区别
2019/03/27 Python
使用python 写一个静态服务(实战)
2019/06/28 Python
django自带serializers序列化返回指定字段的方法
2019/08/21 Python
PythonPC客户端自动化实现原理(pywinauto)
2020/05/28 Python
Pytorch - TORCH.NN.INIT 参数初始化的操作
2021/02/27 Python
HTML5 Web Workers之网站也能多线程的实现
2013/04/24 HTML / CSS
美国伴娘礼服商店:Evening Collective
2019/10/07 全球购物
Kusmi茶美国官网:优质散叶茶和茶包
2019/10/13 全球购物
会计主管岗位职责范文
2013/11/08 职场文书
端午节粽子促销活动方案
2014/02/02 职场文书
幼儿园五一活动方案
2014/02/07 职场文书
勤俭节约倡议书
2014/04/14 职场文书
综合内勤岗位职责
2014/04/14 职场文书
集团财务总监岗位职责
2015/04/03 职场文书
Win11运行cmd提示“请求的操作需要提升”的两种解决方法
2022/07/07 数码科技