您现在的位置是:首页 > cms教程 > WordPress教程WordPress教程
wordpress工作原理介绍
毅冯2025-02-11WordPress教程已有人查阅
导读WP初始化的过程:当你输入<yourlink>/wordpress对wordpress进行初始化时,wordpress默认会找根目录下的index.php页面,看一下index.php页面。
WP初始化的过程:当你输入<yourlink>/wordpress对wordpress进行初始化时,wordpress默认会找根目录下的index.php页面,看一下index.php页面。
我们看一下wordpress的主方法:
下面就讨论一下当我们设置自定义的长久链接时,wordpress的运作过程。
当我们使用了自定义的长久链接的时候,wordpress会自动生成.htaccess文件,并且在这个文件中生成相对应于长久链接的匹配规则,在wordpress/wp-includes/rewrite.php中有针对.htaccess文件的重写规则,其中$use_verbose_rules参数规定了输出信息的详尽和简约,默认的情况下为false。输出的信息比较简单,
wordpress在对使用了自定义的长久链接进行处理时,它还是会调用wp-include/classes.php文件中的parse_request函数,对发过来的请求进行解析,无论是否为pathinfo类型的请求,都会被赋值给$request参数,然后调用该参数与.htaccess中的规则进行匹配,如果找到一个匹配就会“发送头信息”、“查询日志”,如果没有任何匹配就会返回404错误。
<?php
define('WP_USE_THEMES', true);
/** Loads the WordPress Environment and Template */
require('./wp-blog-header.php'); ---把/wp-blog-header.php包含进来
?>
你会发现,它会去调用根目录下的wp-blog-header.php,我们继续看wp-blog-header.php。
<?php
if ( !isset($wp_did_header) ) {
$wp_did_header = true;
require_once( dirname(__FILE__) . '/wp-load.php' ); ---加载wp-load.php
wp(); ---加载function WP();
require_once( ABSPATH . WPINC . '/template-loader.php' ); ---加载模板文件
}
?>
通过wp-load.php,wordpress先后把wp-config.php, wp-setting.php,classes.php,fucntions.php,query.php等文件加载进来,并建立了三个全局变量,$wp_the_query,$wp_rewrite和$wp ,分别为WP_Query,WP_Rewrite和WP类的实例。然后,wp-blog-header执行wp()函数,并通过其调用$wp所属WP类的main方法,这个方法又调用一系列方法,但最重要的是parse_request方法, WP从这里开始解析URL并建立主循环。我们看一下wordpress的主方法:
function main($query_args = '') {
$this->init(); --初始化环境
$this->parse_request($query_args); --解析请求
$this->send_headers(); --发送头信息
$this->query_posts(); --查询日志
$this->handle_404(); --操作404(URL地址不存在)
$this->register_globals(); --注册全局变量
do_action_ref_array('wp', array(&$this));
}
这基本上就是wordpress初始化时的信息。下面就讨论一下当我们设置自定义的长久链接时,wordpress的运作过程。
当我们使用了自定义的长久链接的时候,wordpress会自动生成.htaccess文件,并且在这个文件中生成相对应于长久链接的匹配规则,在wordpress/wp-includes/rewrite.php中有针对.htaccess文件的重写规则,其中$use_verbose_rules参数规定了输出信息的详尽和简约,默认的情况下为false。输出的信息比较简单,
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
如果想查看完整的匹配规则,就把$use_verbose_rules设置为true。wordpress在对使用了自定义的长久链接进行处理时,它还是会调用wp-include/classes.php文件中的parse_request函数,对发过来的请求进行解析,无论是否为pathinfo类型的请求,都会被赋值给$request参数,然后调用该参数与.htaccess中的规则进行匹配,如果找到一个匹配就会“发送头信息”、“查询日志”,如果没有任何匹配就会返回404错误。
本文标签:
很赞哦! ()
相关教程
图文教程
WordPress手机端插件WPtouch介绍
今天用nexus7访问@Bee君 的博客时,发现博客的界面与电脑 问的界面不相同,顺藤mō瓜之后发现原来bee君使用的是WPtouch-pro插件来实现移动端访问博客时自动转换成适合移动设备
WordPress免插件实现代码高亮的方法
Prismjs允许我们的wordpress在没有插件的情况下完成代码突出显示。 Prismjs是一个致力于代码突出显示的开源项目。
怎么抓取WordPress文章
抓取WordPress文章可以使用抓取插件来完成,如使用WP-AutoPost插件。启用WP-AutoPost插件然后创建新的任务,然后对插件进行设置即可。
wordpress实现伪静态的方法教程
众所周知wordpress默认的链接是动态链接,虽然现在搜索引擎对动态的链接也有着非常好的收录,但是基于链接的美观,以及伪静态对搜索引擎更加有好的原因
相关源码
-
(PC+WAP)蓝色智能环保机械设备网站营销型pbootcms模板下载本模板基于PbootCMS系统开发,为环保设备制造企业设计,特别适合展示环保机械、智能装备等产品。采用响应式技术,确保各类设备参数和技术方案在不同终端上都能清晰展示。查看源码 -
手机软件APP游戏软件下载网站Pbootcms模板(自适应)基于PbootCMS内核深度开发的网站模板,为移动互联网时代打造。无论是手机APP推广、游戏软件展示,还是各类企业官网需求,本模板都能通过简单的图文替换实现行业无缝切换查看源码 -
(自适应)刷卡pos机数据移动支付设备电子科技pbootcms模板下载本模板为POS机设备制造商、移动支付终端服务商和科技企业设计,基于PbootCMS系统开发,提供完整的在线展示平台解决方案,满足支付设备行业特有的展示需求。查看源码 -
自适应极简风个人博客文章自媒体网站模板基于PbootCMS开源内核开发的极简个人博客模板,采用移动优先设计原则,通过Media Query技术实现320px至1920px六级分辨率适配,确保在手机、平板及PC设备上均呈现良好的视觉体验。查看源码 -
(响应式)企业管理人力资源服务类pbootcms模板源码下载为人力资源服务及企业管理设计的响应式网站模板,基于PbootCMS内核开发。通过宽屏布局优化岗位展示效果,简洁界面聚焦人才服务核心业务,自适应技术确保在PC端与手机端查看源码 -
pbootcms模板(PC+WAP)APP应用软件下载类官网源码为APP应用软件官网打造的响应式解决方案,PC端与移动端(WAP)数据实时同步,一次更新全网生效,满足多终端用户无缝体验需求。查看源码
| 分享笔记 (共有 篇笔记) |

