WordPress代码和分析-页面模板是从哪里来的
2012-02-02 17:11
344 查看
最近开始接触wordpress。WordPress代码和分析-页面模板是从哪里来的?这个问题在网上找了比较详细的说明。
转文如下:http://www.cnblogs.com/TransTown/archive/2011/05/02/2034212.html
今天看到WordPress中的可以自定义页面模板,很好奇在添加页面时,这些页面模板的选项从哪里来的?
首先找到Post.php,竟然没有找到这区域是在post.php的那个函数内输出的,后来通过查找输出页面Html代码,找到了输出位置是在wp-admin/includes/meta-boxes.php的“page_attributes_meta_box”方法中。
page_attributes_meta_box方法就是用来显示页面属性,它被“edit-form-advanced.php”页面所调用,使用的语句是:
?
?
?
?
?
?
在meta-boxes.php中,使用了page_template_dropdown方法来输出select的内容。
?
?
?
?
?
在这个方法中,首先通过get_themes方法获取所有的模板,然后再通过get_current_theme()获取到当前的模板保存信息。通过输出$theme的内容,我们获取的是一个所有模板的目录列表。wordpress是通过什么来确定哪个模板是页面模板?
通过”$template_data = implode( '', file( $template )); “方法来获取模板的内容。然后通过正则匹配有在模板内容中指定”Template Name“的模板,获取的模板名后,这个模板就是页面模板。我们可以打开wordpress默认自带的模板”onecolumn-page.php“在这个模板的注释部分可以看到” * Template Name: One column, no sidebar“我们如果需要给wordpress增加新的页面模板的话,就需要在模板中带上Template
Name这个注释,wordpress就自动会把这个模板识别成页面模板。下图为获取模板值部分的关系图:
Tips
可以通过在wp-config.php中把define('WP_DEBUG', false);设置为true,就可以通过print_r和die来逐步输出我们需要查看的内容。
转文如下:http://www.cnblogs.com/TransTown/archive/2011/05/02/2034212.html
今天看到WordPress中的可以自定义页面模板,很好奇在添加页面时,这些页面模板的选项从哪里来的?
首先找到Post.php,竟然没有找到这区域是在post.php的那个函数内输出的,后来通过查找输出页面Html代码,找到了输出位置是在wp-admin/includes/meta-boxes.php的“page_attributes_meta_box”方法中。
page_attributes_meta_box方法就是用来显示页面属性,它被“edit-form-advanced.php”页面所调用,使用的语句是:
?
?
通过”$template_data = implode( '', file( $template )); “方法来获取模板的内容。然后通过正则匹配有在模板内容中指定”Template Name“的模板,获取的模板名后,这个模板就是页面模板。我们可以打开wordpress默认自带的模板”onecolumn-page.php“在这个模板的注释部分可以看到” * Template Name: One column, no sidebar“我们如果需要给wordpress增加新的页面模板的话,就需要在模板中带上Template
Name这个注释,wordpress就自动会把这个模板识别成页面模板。下图为获取模板值部分的关系图:
Tips
可以通过在wp-config.php中把define('WP_DEBUG', false);设置为true,就可以通过print_r和die来逐步输出我们需要查看的内容。
相关文章推荐
- WordPress代码和分析-页面模板是从哪里来的
- WordPress代码和分析-页面模板是从哪里来的(这是一个可以让人奔溃的设计)
- 代码实现WordPress归档页面模板
- WordPress代码分析-数据库结构分析
- 技术代码分析模板
- 利用PHP与Smarty模板技术生成分页静态页面的代码
- 打开网页自动弹出一个页面的代码分析
- HotSpot模板解释器目标代码生成过程源码分析
- wordpress优化第四招 修改评论模板,留住客户,让评论在新的页面打开。
- C代码规范与运行时长分析模板
- 纯代码给WordPress网站添加独立下载页面功能
- C#分析数据库结构,使用XSL模板自动生成代码(一)
- WebIDE生成的代码模板分析
- 深入分析:C++模板究竟会使代码膨胀吗
- 凑热闹!小米抢购手机页面前端代码分析
- C#分析数据库结构,使用XSL模板自动生成代码
- 在 WordPress 指定页面加载指定 JavaScript 或 CSS 代码
- 这段代码哪里出现了错误?大家给我好好分析一下,谢谢
- UCHome中数据库操作类(class_mysql.php)页面的代码分析
- Web浏览器中动态添加修改HTML页面代码的问题分析