Custom Field GUI の管理画面で「キー」と「表示名」を別にするカスタマイズ
目次
Custom Field GUI Utility に JaSMiN さんから「キーは英字で、表示は日本語にできたらいいなぁ
」というコメントをいただきました。
確かにおっしゃるとおりで、これはかなり便利になるカスタマイズだと思います。
カスタムフィールドのキーとして保存しておくデータは、英数字のみの方が後々都合がよいでしょうし、運営後にカスタムフィールドの管理画面上の表示名を変更したくなったときに、今までの仕様だとカスタムフィールドの「キー」を変更しなければならず、過去のカスタムフィールド情報と別々の種類のデータを持つことになってしまいます。
その点、「キー」と「表示名」を別々にしておけば、「表示名」だけを変更すれば良いので非常に使い勝手が良くなります。
というわけで、今回「キー」と「表示名」を別々にできるようにしてみました。
カスタマイズ内容
Custom Field GUI をカスタマイズしてカスタムフィールドをもっと便利に使う方法 という記事で行った、フィールドの下にサンプルなどを表示できるようにするカスタマイズと同様の方法をとりました。
僕はPHP はおろかプログラミングは素人で JavaScript 初心者程度のレベルなので詳しくは分かりませんが、記事投稿画面に textfield などを出力する関数に、「$fieldname」をいう引数を追加するなどのカスタマイズをしてみました。
使い方
ここでは、今回カスタマイズした部分の使い方の説明と表示テストをしますので、このプラグイン自体の説明は Custom Field GUI Utility をご覧ください。
conf-xx.ini ファイル側
conf-common.ini 、conf-post.ini 、conf-page.ini ファイルには以下のように記述します。
[共通Plan]
fieldname = plan(共通表示)
type = textfield
size = 35
sample = input the example or the captionこの中の[半角大かっこ]で囲まれた部分は今までどおりカスタムフィールドの「キー」に該当し、その下の「fieldname」部分が管理画面での表示名になります。
テンプレート側
テンプレート側には、カスタムフィールドを反映させるテンプレートタグを書きます。
上記の例であれば「キー」は「共通Plan」ですので、次のようなテンプレートタグを書けばいいわけです。
ID,'共通Plan',TRUE); ?>今回は、Custom Field GUI の管理画面にサムネイルを表示するカスタマイズ で実験したときのをイメージフィールドを一つだけにした以下のコードがテンプレートに書いてあります。
共通カスタムフィールド
- 共通Plan
- ID,'共通Plan',TRUE); ?>
- 共通Image
- ID,'共通Image',TRUE); ?>
; ?>)
- 共通Favorite Post
- ID,'共通Favorite Post',TRUE); ?>
- 共通Miles Walked
- ID,'共通Miles Walked',TRUE); ?>
- 共通Temper Level
- ID,'共通Temper Level',TRUE); ?>
- 共通Hidden Thought
- ID,'共通Hidden Thought',TRUE); ?>
投稿用カスタムフィールド
- 投稿Plan
- ID,'投稿Plan',TRUE); ?>
- 投稿Image
- ID,'投稿Image',TRUE); ?>
; ?>)
- 投稿Favorite Post
- ID,'投稿Favorite Post',TRUE); ?>
- 投稿Miles Walked
- ID,'投稿Miles Walked',TRUE); ?>
- 投稿Temper Level
- ID,'投稿Temper Level',TRUE); ?>
- 投稿Hidden Thought
- ID,'投稿Hidden Thought',TRUE); ?>
ページ用カスタムフィールド
- ページPlan
- ID,'ページPlan',TRUE); ?>
- ページImage
- ID,'ページImage',TRUE); ?>
; ?>)
- ページFavorite Post
- ID,'ページFavorite Post',TRUE); ?>
- ページMiles Walked
- ID,'ページMiles Walked',TRUE); ?>
- ページTemper Level
- ID,'ページTemper Level',TRUE); ?>
- ページHidden Thought
- ID,'ページHidden Thought',TRUE); ?>
表示テスト
管理画面は次のようになりました。前提条件も合わせてご確認ください。
- カスタムフィールドのキー: 共通Plan
- 表示名: plan(共通表示)
表示結果は次のようになりました。OKですね。
ダウンロード
ダウンロードは以下のページからお願いします。