您可以使用一个插件来实现这一点,如;Custom Permalinks"E;
步骤如下:
1-安装并激活插件。
2-将所有帖子当前永久链接保存到自定义元字段中“;custom\\u permalink“自定义”;该元字段是插件用来为每个帖子保存自定义永久链接并将其用作永久链接的字段,无论默认结构是什么。
3-您将在中保存的永久链接;custom\\u permalink“自定义”;每个帖子的字段是不带起始斜杠的相对永久链接,例如:
如果您的post permalink是;https://yourdomain.com/something/something/";,将保存在元字段中的部分是;某物/某物;。
4-保存所有帖子的永久链接后,现在可以更改永久链接结构,插件将保留当前帖子的旧结构,因为每个帖子的结构都保存为自定义永久链接。
在更改结构之前,可以通过编程方式为所有当前帖子保存当前永久链接结构,如下所示:
add_action(\'admin_notices\', function(){
$posts = get_posts([
\'post_status\' => \'publish\',
\'post_type\' => \'post\',
\'no_found_rows\' => true,
\'posts_per_page\' => 100,
\'meta_query\' => [
[
\'key\' => \'custom_permalink\',
\'compare\' => \'NOT EXISTS\'
]
]
]);
if(empty($posts)) {
echo \'<div class="notice notice-success"><p><strong>All custom permalinks were saved</strong></p></div>\';
return;
}
foreach ($posts as $post) {
$customPermalink = str_replace(home_url(\'/\'), \'\', get_permalink($post));
update_post_meta($post->ID, \'custom_permalink\', $customPermalink);
}
});
前面的代码将在每次仪表板页面刷新时为100篇文章保存永久链接,直到出现完成消息。
Important: You must remove this code when done using it.