批量修改/替换wordpress的文章内容的方法
修改数据库有风险,首先建议备份数据库。
将以下代码添加到主题的functions.php中
function one_time_replace_link() {
// 仅后台登录管理员才执行
if ( ! is_admin() || ! current_user_can( 'manage_options' ) ) {
return;
}
global $wpdb;
$old_html = '旧文字';
$new_html = '新文字';
$wpdb->query(
$wpdb->prepare(
"UPDATE {$wpdb->posts} SET post_content = REPLACE(post_content, %s, %s) WHERE post_type = 'post' AND post_status IN('publish','draft')",
$old_html,
$new_html
)
);
}
add_action( 'admin_init', 'one_time_replace_link' );
登录后,然后访问一次后台即可完成修改,修改完成请删除代码。
注意:如果你的wordpress启用了缓存或是CDN,请在替换完成后,刷新缓存或CDN
有一种情况不推荐使用这种方法。如果把aaa修改为aaab。第一次刷新结果为aaab,第二次刷新结果为aaabb,永无止境,我们并不能保证只有自己打开网站,如果有很多登录用户同时打开,这就是灾难。当然你也可以修改成管理员登录下生效,但我们也不能保证不会手滑。
所以推荐插件:https://cn.wordpress.org/plugins/search-and-replace/,安装后在工具里能看到。
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
评论已关闭