备注:本文仅适合有PHP编程能力的程序员
在开源二开仿牌建站技术中,一般采用的框架有opencart、magento、wordpress框架等,而zencart作为莆田古老陈旧的技术,一般不再建议采用。今天,我们主要针对wordpress框架,做一个宏观的介绍,让程序开发的朋友们对wp有个大致的认知。在wp仿牌建站中,一般采用的是 wordpress 6.42 + woocommerce,大框架采用AB+双服务器框架,在收款环节上,也是采用词条cloak替换、ip库过滤等反爬虫规避方式,如果流水资金比较大,再辅助以权重配比、金额配比、随机收等多种轮切方式,安全收款。
虽然说wordpress的启动流程是一个非常繁琐、复杂的流程,但其本质上是一系列的Hook钩子启动的流程,我们无需关心其中复杂逻辑关系,只需要清楚hook的执行顺序,在哪个阶段加载插件API,在哪个阶段产生用户授信信息等。
SHORTINIT之前的启动过程
WordPress-hook执行顺序,
SHORTINIT测试失败后继续启动,WordPress响应index.php请求的过程,
WordPress wp() function 函数
下面,了解一下wordpress的代码结构以及模块之间的调用关系:
wp-admin: wordpress站点后台模块,
wp-content: wordpress的主题,插件和本地化的存储目录,
wp-includes: wordpress一些类和公共函数文件的存放目录,
根目录下的index.php是大部分wordpress功能的入口模块。
其调用关系,如下图:
如上的流程主要包含全局初始化、数据读取以及模板渲染三部分,其中,
wp-load.php中进行了一串的函数调用,定义全局变量,引用必要的php文件;
wp()各类函数主要调用 wp-include/class-wp.php中的类方法,实现不同请求预处理,然后加载对应的数据到全局对象中,以便后续的模板页面来展示;
template-loader.php文件中实现按照不同的url参数,来加载不同的模板,
而模板的加载流程如下图:
上面的代码很清晰展示,程序根据不同的页面类型,加载不同的模板php文件。
get_query_template函数则是获取到指定类型的模板文件路径,可以进入函数内部,查看其实现的功能,如下图:
而locate_template函数则是判断出对应的模板是否存在,如果存在,则加载之,否则,返回模板文件的路径,同样可以进入函数内部,查看其实现的功能,如下图:
综上所述,我们很清楚认识到这几个函数功能主要是为了选择哪个模板,模板路径如何得来,以及加载过程的展示。有了这些认知基础,我们对不同参数的URL、模板选择以及模板下的对于PHP文件流程就很清楚了。
而wordpress仿牌建站的A站服务器也是基于这套钩子顺序流程以及源码结构进行商城业务逻辑开发启动,再配备以收款和站内cloak斗篷技术,一个完整的站点就开发完成了。
更多仿牌建站技术指标,可以参考:仿牌建站需要具备什么技术