WordPress 自带钩子wptexturize
,可以在wp-includes/functions.php
中查看,随着 WordPress 版本的更新,禁用wptexturize()
函数更有效果,在当前主题目录下的functions.php
中添加如下代码:
//禁用wptexturize函数,解决“-”显示为“–”的问题
add_filter( 'run_wptexturize', '__return_false' );
WordPress 自带钩子wptexturize
,可以在wp-includes/functions.php
中查看,随着 WordPress 版本的更新,禁用wptexturize()
函数更有效果,在当前主题目录下的functions.php
中添加如下代码:
//禁用wptexturize函数,解决“-”显示为“–”的问题
add_filter( 'run_wptexturize', '__return_false' );
此方法对做WordPress批量采集的、发文章时间不符合实际的站点,例如文章状态为“草稿”很久了,原计划发布时间是上个月,结果这个月才完稿发布,类似情况很有帮助,省去一个个修改的烦恼。这是在网上找到的两段SQL语句,存在瑕疵:
//时间格式不对
UPDATE `wp_posts` SET `post_date` = DATE_ADD('2010-1-01', INTERVAL ROUND(RAND() * 3890+ 1) DAY) WHERE `ID` between 1 AND 100000;
update `wp_posts` set `post_modified` = `post_date` WHERE `ID` between 1 AND 100000;
update `wp_posts` set `post_date_gmt` = `post_date` WHERE `ID` between 1 AND 100000;
update `wp_posts` set `post_modified_gmt` = `post_modified` WHERE `ID` between 1 AND 100000;
update `wp_posts` set `post_status` = 'publish' WHERE `ID` between 1 AND 100000;
//时间格式不对
UPDATE `wp_posts` SET `post_date` = DATE_ADD('2018-1-10', INTERVAL ROUND(RAND() * 220 + 1) DAY) WHERE `ID` between 1 AND 1215;
update `wp_posts` set `post_modified` = `post_date` WHERE `ID` between 1 AND 1215;
update `wp_posts` set `post_date_gmt` = `post_date` WHERE `ID` between 1 AND 1215;
update `wp_posts` set `post_modified_gmt` = `post_modified` WHERE `ID` between 1 AND 1215;
update `wp_posts` set `post_status` = 'publish' WHERE `ID` between 1 AND 1215;
起始时间 “2020-01-01”
随机日期范围 “180 天”
文章ID起始范围 “1 – 2000”
任意修改,然后依次执行以下SQL语句,每个分号是一句,一句一句执行,可以在指定的文章ID范围内,随机生成文章的发布日期,替换原来的日期。
//完美
UPDATE `wp_posts` SET `post_date` = DATE_ADD('2020-01-01', INTERVAL ROUND(RAND() * 180 + 1) DAY) WHERE `ID` between 1 AND 2000;
update `wp_posts` set `post_modified` = `post_date` WHERE `ID` between 1 AND 2000;
update `wp_posts` set `post_date_gmt` = `post_date` WHERE `ID` between 1 AND 2000;
update `wp_posts` set `post_modified_gmt` = `post_modified` WHERE `ID` between 1 AND 2000;
update `wp_posts` set `post_status` = 'publish' WHERE `ID` between 1 AND 2000;
字段含义:
post_date(文章发布日期)
post_date_gmt(文章发布日期,格林威治时间)
post_modified(文章修改时间)
post_modified_gmt(文章修改时间,格林威治时间)
post_status(文章状态)
如果安装WordPress的时候数据库表前缀wp有修改过,记得做相应更改。
进入WordPress后台编辑文件修改某一段代码,“更新文件”的时候报错:
未能与站点联系来检查致命错误,因此PHP修改已被回滚。您需要采用其他方式(如SFTP)上传您修改的PHP文件。
解决方法:禁用 WP Super Cache 插件,修改完再启用。
如果没有解决,也可能是其他插件的兼容性问题,建议依次禁用插件,经过测试 WordPress 5.3.2版本禁用所有插件依然不行,有时候出现这个问题和主题有关系,可以尝试换到其它主题,再修改PHP文件。
在默认情况下WordPress生成的分类目录的链接含有一个category的前缀(可以自定义这个前缀,如果不定义,就是默认的category),有人觉得不好看,从SEO的角度看,这个前缀破坏了链接的层次感。
WordPress默认分类链接格式:
https://cn.fankuiba.com/category/ + 分类
如果启用WP No Category Base插件,分类链接就会变成:
URL中category消失了,这就是WP No Category Base插件的效果。使用此插件的好处是“新”的链接会由插件自动301重定向到旧的链接,无需担心404页面的问题。WP No Category Base插件的官方下载地址:https://wordpress.org/plugins/wp-no-category-base/
WP No Category Base插件在官方好像关闭下架了,用这款no category base wpml也是可以的。