wordpress

meta box を手っ取り早く自由に並び替える方法

カスタムフィールド を追加した時、プラグインなどの兼ね合いで表示したい順番通りにならないことがあります。

手動で並べ替えも出来ますが、やっぱり最初からイメージ通りに並んでいた方がありがたい、、、。
突き詰めれば、対応出来ますが、とりあえず手っ取り早く何とかしたい、、、。
今回はそんな時にパッと使える方法です。

jQuery の insertBefore 、 insertAfter を使う

例として、アイキャッチ画像を投稿本文の上に移動する場合はこんな感じです。

function meta_box_to_before_content_wrap() {
  $script = <<<EOM
  <script type="text/javascript">
    jQuery(document).ready(function($) {
        $('#postimagediv').insertBefore('#wp-content-wrap');
        $('#postimagediv').css('margin-top', '40px');
    });
  </script>
EOM;
  echo $script;
}
add_action('edit_form_after_editor', 'meta_box_to_before_content_wrap');

パーマリンクの項目に近すぎかなぁ?ってことで、 margin-top も追加しています。
#postimagediv の部分を移動する meta box 、 insertBefore (または insertAfter ) に移動・挿入箇所の id を指定しています。

あくまでとりあえずな対応ですが、参考までに。

自己紹介

松田 大と申しますm(_ _)m
インディーズでミュージシャンをやっていたのですがいつのまにか...

とある企業でショップのアルバイトスタッフから正社員、支店長を経てシステム部門に異動するという、開発担当としては変わった経緯を持っている方だと思います。

「Excel VBA」からスタートして、Yamaha RTX シリーズで VPN環境構築、Hyper-V環境構築、Windowsアプリ開発などを経験した後、「 WordPress 」に出会い、どっぷりハマっています(^_^)。

現在勤めているJTクラウドシステムでは、「 WordPress 」を活用したWEBサイト、業務用WEBアプリケーション開発を中心に、記事の執筆代行や掲載に必要な情報のリサーチ、映像のテロップ入れや切りはりなどの簡単な動画編集なども、まとめて行なっています。

現在、代表取締役兼二児のパパ。イクメン目指して、公私ともに慌ただしくしています(笑)

コメントを残す