我想让每个自定义帖子类型的slug成为帖子ID号。我该怎么做?我的帖子都不接受帖子标题、内容或任何其他内容——它们需要不同的数据,这些数据更容易显示为元框)。举例说明:
我有一个CPT(“教育”)。当我将帖子提交到数据库时,它的ID是,比如说,15。当我访问我的网站时。com/edu/15(“edu”是我设置的帖子slug),我在我的网站上看到了这篇帖子的详细信息。
我知道我可以简单地更改永久链接,但我希望它们保持原样;我只想更改这些自定义帖子类型的帖子。如果问题让人困惑,很抱歉。答案可能很简单,但我真的不知道答案是什么。
最合适的回答,由SO网友:Stubbies 整理而成
下面是一种如何更改slug的方法:
add_action(\'wp_insert_post\', \'change_slug\');
function change_slug( $post_id ) {
// Making sure this runs only when a \'eduation\' post type is created
$slug = \'eduation\';
if ( $slug != $_POST[\'post_type\'] ) {
return;
}
wp_update_post( array(
\'ID\' => $post_id,
\'post_name\' => $post_id // slug
));
}