私はカスタム投稿タイプ "Email"を持っています。ここで、投稿タイトルは常に電子メールアドレスになります。例:[email protected]
私が抱えている問題は、 "@"がパーマリンクから削除されていることです。../ exampledomain-com
../ example-domain-comとして保存します。
"@"を " - "に置き換える
私はここから を試しましたが 、もっと知識のある人がすぐにわかるように、それはパーマリンクには当てはまりません:
function at_to_dash($title) {
return str_replace('@', '-', $title);
}
add_filter('sanitize_title', 'at_to_dash');
フィルタが/ Wordpress自身が適用するものの前に実行されることを確認してください - 優先順位9を追加します。
add_filter( 'sanitize_title', function( $title ) {
if ( FALSE !== strpos( $title, '@' ) ) {
$title = str_replace( '@', '-', $title );
}
return $title;
}, 9 );
使用法:
echo sanitize_title( '[email protected]' );
出力:
mytitle-example-org