0

我已将我网站的默认永久链接更改为自定义永久链接 (/%post-name%) 现在所有帖子都需要 slug 值。目前不存在。如果 slug 屏幕选项无法发布或更新帖子,则会自动添加 slug,但在我的情况下,现在我无法为所有帖子使用 slug 选项,这已被禁用,现在我想更新每个post 什么都不想添加或删除只想更新所有帖子。目前数据库中的帖子数为200000,请提出任何有效的查询或任何方法,以便完成我的任务。

谢谢,莫妮卡

4

1 回答 1

2

试试这个插件,它应该可以完成工作:

http://www.jerrytravis.com/598/wordpress-plugin-to-generate-post-slugs

这段代码也可以完成这项工作,但是您必须添加一些限制以避免脚本由于执行的最大限制而崩溃:

// get all posts
$posts = get_posts( array (  'numberposts' => -1 ) );

    foreach ( $posts as $post )
    {
        // check the slug and run an update if necessary 
        $new_slug = sanitize_title( $post->post_title );
        wp_update_post(
            array (
                'ID'        => $post->ID,
                'post_name' => $new_slug
            )
        );
    }

代码的信用: https ://wordpress.stackexchange.com/questions/46086/regenerate-slugs-from-title-of-posts

于 2012-10-03T23:36:55.613 回答