Wordpress学习笔记

作者: adde04d35734 | 来源:发表于2016-01-29 12:21 被阅读223次

    概述

    写一些我对wp的认识!我是按照一次访问的顺序来了解wp的运行原理,从而去了解wp的结构

    解析

    执行顺序

    --index.php
        --wp-blog-header.php
            --wp-load.php
                --wp-config.php    //配置数据文件,加载wp-setting.php
                    --wp-setting.php // 这个文件很重要
                        --/include/load.php wp的一些方法
                        --/include/default-constants.php 包含定义函数的方法
                        --/include/version.php 版本常数定义(wp,PHP,mysql,tinymce...)
                        --/include/compat.php
                        --/include/functions.php
                        --/include/class-wp.php
                        --/include/class-wp-error.php
                        --/include/plugin.php,/pomo/mo.php,wp-db.php
                        --/include/default-filters.php  //挂载钩子 add_action,add_filter
                        --/include/l10n.php
                        --...包含了大部分include文件夹下的文件
                    //这个文件包含了一系列页面加载前的准备操作.数据库对象的建立,常量的定义,配置文件的加载,常用方法挂载到钩子,头部信息发送等,wp对象的建立,插件控制对象的建立等等.
            --wp();   //这个方法很重要
                //执行了wp->main();这里边做了wp对象的如下操作
                $this->init();
                $this->parse_request($query_args);
                $this->send_headers();
                $this->query_posts();
                $this->handle_404();
                $this->register_globals(); 
                //一目了然他干了什么
    
            --template-loader.php   //这个文件也很重要
                执行do_action( 'template_redirect' );
                // 选择页面进行跳转,如果想要跳转到插件去运行,那么你的插件关键类中,需要有template_redirect这样的一个方法。并在关键类中初始化时挂载到钩子里边。
                //插件json_api  就是在这里被调用。
    

    几个重要的全局变量

    1. $wpdb,$blog_id,$wp_actions,$wp_filter ,$custom_image_header, $custom_background,$wp_query ,$userdata,插件对象(如$json_api)

    备注

    一个钩子里边有可能有多个方法的,一个方法可以放到多个钩子上

    问题

    插件对象是什么时候生成的?

    感悟

    个人觉得wordpress是个基于方法的框架,所有的页面输出,逻辑处理,数据得到,都是写在某个特定的方法里边,然后通过他的钩子逻辑去挂载,实现。

    相关文章

      网友评论

        本文标题:Wordpress学习笔记

        本文链接:https://www.haomeiwen.com/subject/nmujkttx.html