[英]Adding slashes to custom Post Type slug in WP
我有一個使用 RubyPress 通過 XML-RPC 創建的自定義帖子類型。
創建帖子時,我在 post_name 中指定了一些斜杠(slug 或永久鏈接)
但是,將這些斜杠轉換為連字符:
例如: year/code/some-string-name
最終成為year-code-some-string-name
Year 和 Code 是動態值,所以我不能使用父頁面方法,因為每個 Post 都有不同的值。
經過一些研究,這最終對我有用。
您必須安裝一個名為Custom Permalinks的插件,因為 WordPress 不允許您通過代碼在永久鏈接中添加斜杠。
每次發布 MyPost 時,都會執行以下代碼。 除了 Publish 之外,您還可以使用其他保留字,如果您有興趣,請查找“Post Status Transitions”。
add_action('publish_mypost', 'add_slashes_to_mypost_slug');
function add_slashes_to_mypost_slug( $post_id ) {
$post = get_post($post_id);
$slug = $post->post_name;
$slug_exploded = explode('-', $slug);
$year = array_shift($slug_exploded);
$code = array_shift($slug_exploded);
$remainder = implode('-', $slug_exploded);
$new_slug = $year.'/'.$code.'/'.$remainder;
update_post_meta($post_id, 'custom_permalink', $new_slug);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.