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

説明

wp_parse_slug_list() は、カンマ(や空白)区切りの文字列や、配列を、スラッグの配列に整える関数です。各要素は、sanitize_title() で整えられ、重複は取り除かれます。

基本構文

wp_parse_slug_list( array|string $input_list ): string[]

引数

  • $input_list:スラッグの一覧(カンマ区切りの文字列、または配列)

戻り値

整えられたスラッグの配列。

使い方(サンプル)

$slugs = wp_parse_slug_list( 'news, event, news' );
// array( 'news', 'event' )

注意点

  • 各要素は、小文字・ハイフン区切りに整えられます。
  • 重複は、取り除かれます。
  • キーが連番にならない場合があり、空文字が混じることもある。必要なら array_values() を通す。

実務での使いどころ

  • ショートコードの属性(categories="news,event")を、スラッグの配列にして、使うとき。

よくあるミスと対処

  • explode() だけで分けて、空白や大文字が、そのまま残る。
  • 数値のIDの一覧を整えたいのに、使っている。IDには wp_parse_id_list()。

NG例

$slugs = explode( ',', $atts['categories'] ); // 空白や大文字が、そのまま残る

OK例

$slugs = wp_parse_slug_list( $atts['categories'] );

使い分け早見表

関数 整える対象
wp_parse_slug_list() スラッグの一覧
wp_parse_id_list() IDの一覧
sanitize_title() 1つのスラッグ

関連項目

wp_parse_id_list()、sanitize_title()

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

コメント

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