メタ情報をカスタムフィールド欄に表示させないようにするには
カスタムフィールドの[名前]の1文字目を '_' アンダースコア(アンダーバー)にします。
そんだけです。コーダーなアナタは add_post_meta($post_id, '_my_meta_key', $meta_value)
のように書きましょう。これで秘密の情報をクライアントから隠すことができます。プラグインを作成する方は、こういった細かいところまで気を配りましょう。でなければ配布なんかするなっつー、ね。
ちなみに Tweet Tools は「_aktt_hash_meta」というメタキーも使用してるので、この仕様はご存知らしいです。当該の投稿を Tweet したかどうか明示するためにあえて非表示にしていないのかも!でもそれなら、わざわざ投稿/ページ画面に Tweet Tools のメタボックスを配置してるんだから、そこで非表示メタ値の情報を read only なテキストで見せればいいじゃないか中途半端な仕事しやがって、ですね。
WordPress が使っている非表示メタ値
WordPress 自身もこの仕様をうまく利用しています。以下にその非表示メタ情報をいくつか挙げておくぜ。
- _wp_page_template ページ:ページテンプレートのファイル名
- _wp_attached_file メディア:ファイル名
- _wp_attachment_metadata メディア:画像のサイズなど
- _wp_attachment_image_alt メディア:画像の alt(代替テキスト)値
- _wp_old_slug 投稿/ページ:スラッグを変更したときの、変更前のスラッグ
これのおかげで、スラッグを変更しても以前のスラッグを使用した URL でアクセスできます。 - _wp_trash_meta_status 投稿/ページ/添付/コメント:ゴミ箱へ移動した時のステータス
- _wp_trash_meta_time 投稿/ページ/添付/コメント:ゴミ箱へ移動した時の時間
- _edit_lock 投稿/ページ:編集ロックした時間
「この記事は他のユーザーが編集中ですよ」の排他制御に使われます。 - _edit_last 投稿/ページ:最後に編集したユーザーの ID
WordPress の秘密を知ったアナタはますます WordPress に愛着が湧いてきたことでしょう。もっと知りたくなったら、ソースやデータベースを覗いてみてください。一日中見てても飽きませんよ。それで興奮してきたら立派な変態 WPist です。やったね!
動作確認バージョン
- WordPress 2.9.1
BLOG POST: カスタムフィールドに表示されないメタ情報の作り方 http://wpxtreme.jp/meta-key-and-value-hidden-on-custom-fields
BLOG: カスタムフィールドに表示されないメタ情報の作り方 http://bit.ly/cp4SeW
ぶくま→ カスタムフィールドに表示されないメタ情報の作り方 | wpxtreme http://bit.ly/cYMeEQ