您可以通过两个步骤完成:
在数据库上创建一个标志值,该标志值将实际的post计数作为int钩子保存到wp_insert_post_data
过滤并更改生成的段塞itercepts every下面的代码段wp_insert_post data
调用将常规slug更改为1+数据库上引用的最后一个id;
请注意,在运行此操作之前,您需要至少初始化一次db calling update\\u选项上的“last\\u post\\u number”。
function wpse_permalink_change($data) {
// IMPORTANT: before running the code below, check if this is a new post,
// or a post edit and discard post edits.
// Retrieve the last post number saved
$i = get_option( \'last_post_number\' );
$i++;
// Set it as your post_name
$data[\'post_name\'] = $i;
// Update the last post number
update_option(\'last_post_number\', $i)
return $data;
}
add_filter(\'wp_insert_post_data\',\'wpse_permalink_change\',10,2);
这是未经测试的,有点黑客,但如果有兴趣的话,我可能会把它变成一个插件
另外:只有当您主要关心的是永久链接,而不是真正的数据库primary\\u键时,这才有帮助。