web-dev-qa-db-ja.com

ダッシュボード - メタボックスのステータスと位置を取得し、それらをajaxメソッドに渡します

ダッシュボードのようなページにメタボックスのステータスと位置を追加することが可能かどうか疑問に思います。

私のプラグインのメインページには、2列のページと上部に「目次」ボックスが配置されたいくつかのメタボックスがあります(ウィキペディアページのように内部リンク付き)。ただし、メタボックスを注文/非表示/表示することができるので、目次ボックスはそれに応じてajaxメソッドを介して更新する必要があります。

そのような方法をトリガーすることは可能ですか?私は順序付けを達成するために必要なすべてのパラメーターを渡す(すべてのメタボックスの位置と状況)。

事前にt​​nx、

ガブリエレ

1
Gabriele B

sortstopメタボックスの sortableイベント にフックして、現在の状態を読み取ることができます。

jQuery( function( $ ) {
    $( '.meta-box-sortables' ).bind( 'sortstop', function( event, ui ) {
        var sortData = {};
        $('.meta-box-sortables').each( function() {
            sortData[this.id.split('-')[0]] = $(this).sortable( 'toArray' );
        } );
        console.log( sortData );
    } );
} );

メタボックスを隠したり隠したりするイベントにフックすることもできますが、WordPressはこれに対してNiceイベントを提供しないため、これにはもう少し作業が必要です。詳細は postbox.jsスクリプト を参照してください。

このサイトには というAjaxの部分 に関する他の回答があります。

1
Jan Fabry