提升wordpress执行效率二次开发实录

wordpress 对分类增加广告配置功能

wp_terms 增加admaster字段 varchar 200

wp-admin/edit-tag-form.php 

小资料:

wordpress 

wp_terms分类表 wp_term_taxonomy分类类型表、wp_term_relationships分类关联表 这三个表单相互关联

wordpress优化效率

当wordpress执行效率过慢的时候,可以考虑在sql优化中考虑一下

wordpress的执行机制是会对置顶的文章进行查询,在原生的主题和大部分的主题中 都会去执行一个非常耗时的sql语句

SELECT wp_posts.* FROM wp_posts WHERE ID IN (几万个文章ID)


wordpress没有对置顶文章时间消除的机制,所以说当你有十几万的文章后,就会出现置顶文章几千个,
select in 几万个ID 试想一下这条sql需要执行多久


经测试 select in 几万个id 执行时间是16s 也就是执行16秒 该方法为公共方法很多地方都会调用它,所以这个sql非常常见
置顶文章在wp-options表的option_name 下的sticky_posts 该数据是序列化存储的


在wp-includes/option.php

get_option //方法

 
wordpress有一种机制是修订记录,这个机制在编辑的角度绝对是很不错的,但是对待开发人员来说就需要应对大数据的产生,
平均下来每一篇文章会产生十次左右的修订的话,也就意味着数据量会增大十倍,wp-posts表中有着guid这个字段,该字段记录
着最原始的地址,但是这个地方有个问题,那就是没有加索引,而wordpress中很多需要查询数据的时候都会去查询一下guid,
没有索引的情况下会导致大量的sql慢日志,解决方式很简单 给其加一个索引即可 NORMAL普通索引 btree索引方法
 
wordpress 当style.css修改后不能立即生效的时候 可以在浏览器中打开网页查看引入css的后缀,需要更新后缀,暂时我使用的是
最懒的方法,在wp-content/themes/选择的模板文件夹中 找到functions.php 或者functions_xxx.php

define( 'THEME_VERSION' , '7.1' );

将版本号随意更改一个即可 可以让css样式立即生效
 
补充资料

wordpress大部分的开发都在模板文件夹中 模板文件夹在wp-content/themes/模板文件夹


index.php 首页
page.php 页面
single.php 内容页
category.php 分类页
header.php 头部
footer.php 底部
style.css 控制全局样式(前台)
sidebar.php 侧边栏 小工具的内容大部分都会在这里
search.php 搜索页面
tag.php 标签页面
functions.php 公共方法 他会去引用各种不同的公共方法
comments.php 评论
author.php 作者页面
 

打开APP阅读更多精彩内容