自分のテーブルを作成するためのカスタムの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>
テーブルをform
タグにラップする必要があります。そうしないと、一括アクションボタンが機能しません。
この行は カスタムリストテーブルの例 Plugin theから解決された問題です。
<form id="events-filter" method="get">
<input type="hidden" name="page" value="<?php echo $_REQUEST['page'] ?>" />
<?php
$wp_list_table->display();
?>
</form>