WordPress get_permalink错误 - 不会在管理区域中返回干净的URL


Wordpress get_permalink bug - does not return clean URLs in admin area?

我已经在永久链接设置中将所有站点URL设置为自定义结构:

/portfolio/%postname%/

但是当我尝试在我的管理区域中获取一个干净的 URL 时http://mywebsite.com/wp-admin/post.php?post=415&action=edit

// Get post/page ID.
$post_id = $_GET['post'] ? $_GET['post'] : $_POST['post_ID'] ;
get_permalink($post->ID);

结果:

http://mywebsite.com/?p=415

但它应该是

http://mywebsite.com/portfolio/sample-1/

为什么?我错过了什么?

它的原因是页面没有蛞蝓数据。只存储 slug 数据,然后我才能获得干净的 URL。