WordPress

wp_dropdown_categoriesのoptionタグのvalue値をカテゴリーIDからslugに変更する方法

ふー。今週の業務も今日で終わりです。
今は職場の昼休み時間。昼食後このエントリーを書きかけています。帰宅した後で仕上げようかな・・・

というわけで、今回のエントリーもWordPress関係です。
カテゴリーの一覧をselectタグで出力してくれる関数「wp_dropdown_categories」のカスタマイズです。

この関数ですが、以下のように普通に使うと、下のようなタグが出力されます。

ここで出力されるvalue属性のデータは標準ではカテゴリーIDとなります。このvalue値をカテゴリーIDからそのカテゴリーのslugに変更するのが今回紹介するカスタマイズです。

↓こんな感じにしたいのですよ。

valueの値がカテゴリーのslugになっています。

それでは具体的な方法について説明します。

【注意】
このカスタマイズはWordPressのシステムのファイルを変更するものです。作業を行う前に編集対象のファイルのバックアップを取ることをお勧めします。またこのカスタマイズを行った後でWordPressの自動アップデートなどをすると、正常に動作しなくなる可能性があります。

さて、ここで編集するファイルは、

「wp-includes/category-template.php」

というファイルです。
このファイルの958行目以降にある関数「start_el」が変更対象のソースコードです。
標準では↓のようになっています。

このコードを以下のように修正します。

コメントアウトした部分がカスタマイズ前のコードです。
ハイライトされている6行目と9行目がカスタマイズのコードです。

このようにすることで、optionタグ内のvalue値にカテゴリーslugを出力することができます。

スポンサーリンク

まだあまり詳しく見ていないのですが、どうやらcategory-template.phpに書かれている、wp_dropdown_categories関係のクラスをoverrideする方法だと、functions.php内での追加記述で同じカスタマイズができるような気がします。このカスタマイズについてはもうちょっと調査を続けてみることにします。

ABOUT ME
アバター
ドレッド
ライティングやWeb制作などインターネットを活用して毎日を自由に生活してるドレッドのブログです。Web制作のちょっとしたテクニックや、趣味で勉強している各種資格、放送大学での学びの記録、そして毎月買った本についての記録を残しています。
お気軽にご相談下さい!

このブログの運営者にお仕事を依頼しませんか?

コレカラウェブ

現在はフリーランスのクリエイターとして、ウェブメディアのライティングやホームページ制作、コンサルティングをしています。まずは事業用サイト「コレカラウェブ」にアクセスしていただき、お気軽にお問い合わせください。メールでのご相談は無料です。皆様からのご連絡お待ちしております。

コレカラウェブ公式サイトへ

関連記事

COMMENT

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA