sanitize_title() の使い方|説明・引数・注意点

説明

sanitize_title() は、文字列をスラッグ(URL用の文字列)に変換する関数です。

基本構文

sanitize_title( string $str ): string

引数

  • $str:処理する文字列

戻り値

サニタイズ済みの文字列。

使い方(サンプル)

$slug = sanitize_title( 'Hello World' );

注意点

  • 日本語はそのままではなくURLエンコードされます。
  • 投稿のスラッグ生成にも使われます。

実務での使いどころ

  • タイトルから、URL用のスラッグを作るとき。
  • 文字列を、小文字・ハイフン区切りにそろえるとき。

よくあるミスと対処

  • 日本語は、そのまま残らない。URLエンコードされた形(%e3%81...)になる場合がある。
  • 空の結果になる場合の、代わりの文字列($fallback_title)を指定していない。
  • IDや、キーの文字列に使っている。キーには sanitize_key() を使う。

NG例

$slug = sanitize_title( '日本語のタイトル' ); // URLエンコードされた形になる場合がある

OK例

$slug = sanitize_title( 'Hello World', 'item' ); // hello-world(結果が空のときだけ、'item' になる)

使い分け早見表

関数 結果
sanitize_title() 小文字・ハイフン区切りのスラッグ
sanitize_key() 小文字の英数字・ハイフン・アンダースコアのキー
sanitize_file_name() ファイル名として使える文字列

関連項目

sanitize_title_with_dashes()、sanitize_key()

公式リファレンス:sanitize_title() | Function | WordPress Developer Resources

コメント

タイトルとURLをコピーしました