Не удается сохранить положение метабоксов в плагине WordPress - PullRequest
0 голосов
/ 07 апреля 2011

Я разрабатываю плагин для WordPress, который представляет собой своего рода панель инструментов, полную пользовательских метабоксов.Мне удалось заставить работать ручки открытия / скрытия / закрытия и перетаскивания;однако эти настройки экрана не сохраняются: когда я перезагружаю страницу, все переходит к конфигурации по умолчанию (фактически все метабоксы открываются и сортируются в порядке добавления кода в коде add_meta_box).

Я добавил этот код nonce на свою страницу администратора, но ничего не меняется:

                <form action="" method="">
                    <?php wp_nonce_field('dice-roller-metaboxes-settings'); ?>
                    <?php wp_nonce_field('closedpostboxes', 'closedpostboxesnonce', false ); ?>
                    <?php wp_nonce_field('meta-box-order', 'meta-box-order-nonce', false ); ?>
                    <input type="hidden" name="action" value="save_dashboard_settings" />   
                </form>

Возможно, я что-то забыл еще?

1 Ответ

0 голосов
/ 23 июля 2011

вам нужно добавить некоторый javascript внизу страницы, который показывает метабоксы для обработки ajax сохранения позиций

    <script type="text/javascript">
            //<![CDATA[
            jQuery(document).ready( function($) {
                // close postboxes that should be closed
                $('.if-js-closed').removeClass('if-js-closed').addClass('closed');
                // postboxes setup
                postboxes.add_postbox_toggles('<?php echo $hook; ?>');
            });
            //]]>
     </script>

Обязательно измените $ hook в строке add_postbox_toggles на правильное значение для страницы, на которой вы находитесь

...