我想知道是否有可能将metaboxes的状态和位置添加到类似仪表板的页面中。
我的插件的主页上有几个元数据库,它们分别位于两列页面和顶部的“目录”框中(带有内部链接,如wikipedia页面)。但是,由于您可以订购/隐藏/显示元框,因此应该通过ajax方法相应地更新TOC框。
是否可以触发这样的方法,传递完成排序所需的所有参数(所有元数据库的位置和状态)?
tnx提前,
加布里埃尔
最合适的回答,由SO网友:Jan Fabry 整理而成
你可以加入the sortstop
event 的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并没有为此提供好的事件。看见
the postbox.js
script 了解更多详细信息。
有other answers on this site that deal with the Ajax part.