WP_LIST_TABLE批量操作按钮不起作用-未提交

时间:2013-09-10 作者:Karl Adler

我有个习惯wp_list_table 创建我自己的表。几乎所有功能都很完美,但批量操作按钮似乎不起作用。它是正确显示的,但单击后什么也没有发生。我想不知怎么的,有一个表单包装器丢失了,或者只是一些javascript?我添加了wp Engineers上描述的按钮:http://wpengineer.com/2426/wp_list_table-a-step-by-step-guide/#bulk

我的批量操作功能:

function get_bulk_actions() {
    $actions = array(
        \'activate\'    => __(\'Show\'),
        \'deactivate\'  => __(\'Hide\')
    );
    //Add delete function for admins
    if(current_user_can( \'delete_published_posts\' )){
        $actions[\'delete\'] = __(\'Delete\');
    }
    return $actions;
 }

    function process_bulk_action() {

        $action = $this->current_action();
        if( \'activate\'===$action ) {

          foreach($_GET[\'wp_list_event\'] as $event) {
                echo($event[\'title\']);
            }

        }
        if( \'deactivate\'===$action ) {
          wp_die(\'Items deactivated (or they would be if we had items to deactivate)!\');
        }
        //Detect when a bulk action is being triggered...
        if( \'delete\'===$action ) {
          wp_die(\'Items deleted (or they would be if we had items to delete)!\');
        }
    } 
呈现的HTML(不由任何form 标签)

<div class="alignleft actions">
  <select name=\'action\'>
    <option value=\'-1\' selected=\'selected\'>Aktion wählen</option>
    <option value=\'activate\'>Anzeigen</option>
    <option value=\'deactivate\'>Verstecken</option>
  </select>
  <input type="submit" name="" id="doaction" class="button action" value="Übernehmen"  />
</div>

2 个回复
最合适的回答,由SO网友:Eugene Manuilov 整理而成

你需要把你的桌子包起来form 标记,否则您的批量操作按钮将无法工作。

SO网友:Karl Adler

此行来自Custom List Table Example 插件解决了问题:

   <form id="events-filter" method="get">
    <input type="hidden" name="page" value="<?php echo $_REQUEST[\'page\'] ?>" />
    <?php
      $wp_list_table->display();
    ?>
    </form>

结束

相关推荐

Bulk User Deletion

我创建了一个WordPress 3.0站点,启用了多站点,并安装了BuddyPress插件(每个插件的最新可用版本)。最初,该网站没有启用验证码,现在创建了数百个垃圾邮件帐户。默认情况下,用户的超级管理面板一次仅显示15个用户。我需要删除几百个用户,一页一页地浏览这个页面很单调。是否有可以帮助批量删除用户的插件?我希望能够一次选择和删除几百个用户(或者更好地通过用户名进行regex搜索)。谢谢