パーマリンクは、大抵投稿IDにすることが多いのだけど、たまに投稿名にしたいという要望がある。
WPが自動で投稿名を入れてくれるのだけど、投稿名が日本語だと、それがそのまま入ることになるんだけど、できればURLに日本語が入るのは避けたい。
というわけで、そんな時、自動で入る文字を日本語以外の文字にするという設定です。
使っているテーマのfunction.phpに追記します。
パーマリンクを英数字に
挿入コード
function.php
function auto_post_slug( $slug, $post_ID, $post_status, $post_type ) {
if ( preg_match( '/(%[0-9a-f]{2})+/', $slug ) ) {
$slug = utf8_uri_encode( $post_type ) . '-' . $post_ID;
}
return $slug;
}
add_filter( 'wp_unique_post_slug', 'auto_post_slug', 10, 4 );