web-dev-qa-db-ja.com

wp_list_table一括操作ボタンが機能しない - 送信しない

自分のテーブルを作成するためのカスタムのwp_list_tableがあります。ほとんどすべてが完璧に機能しますが、一括操作ボタンは機能していないようです。それは正しく表示されますが、クリックしても何も起こりません。私はどういうわけか不足しているフォームラッパーまたはちょうどいくつかのJavaScriptがあると思いますか? wp-engineeersに記載されているボタンを追加しました。 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>
3
Karl Adler

テーブルをformタグにラップする必要があります。そうしないと、一括アクションボタンが機能しません。

6
Eugene Manuilov

この行は カスタムリストテーブルの例 Plugin theから解決された問題です。

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