gpt4 book ai didi

wordpress - 如何在 wordpress WP_List_Table 中添加自定义下拉过滤器

转载 作者:行者123 更新时间:2023-12-04 03:15:38 25 4
gpt4 key购买 nike

我扩展类WP_List_Table显示自定义数据库表的列表记录。列表是成功的,但我对如何实现下拉过滤器以根据其类别过滤我的自定义数据库表记录感到生气。

请分享任何代码以添加下拉过滤器来过滤我的自定义数据库表记录。字段名称是 cat_id .

最佳答案

在这里发布问题后经过 3 小时的挣扎,我探索了类(class),并找到了解决方案,所以我在这里分享信息。

有一个函数 function extra_tablenav( $which ),我用我的函数覆盖了那个函数,

function extra_tablenav( $which ) {
global $wpdb, $testiURL, $tablename, $tablet;
$move_on_url = '&cat-filter=';
if ( $which == "top" ){
?>
<div class="alignleft actions bulkactions">
<?php
$cats = $wpdb->get_results('select * from '.$tablename.' order by title asc', ARRAY_A);
if( $cats ){
?>
<select name="cat-filter" class="ewc-filter-cat">
<option value="">Filter by Category</option>
<?php
foreach( $cats as $cat ){
$selected = '';
if( $_GET['cat-filter'] == $cat['id'] ){
$selected = ' selected = "selected"';
}
$has_testis = false;
$chk_testis = $wpdb->get_row("select id from ".$tablet." where banner_id=".$cat['id'], ARRAY_A);
if( $chk_testis['id'] > 0 ){
?>
<option value="<?php echo $move_on_url . $cat['id']; ?>" <?php echo $selected; ?>><?php echo $cat['title']; ?></option>
<?php
}
}
?>
</select>
<?php
}
?>
</div>
<?php
}
if ( $which == "bottom" ){
//The code that goes after the table is there

}
}

然后我跳到函数 prepare_items() 并在查询字符串后添加一行,
if( $_GET['cat-filter'] > 0 ){
$query = $query . ' where cat_id=' . $_GET['cat-filter'];
}

到这里还没有完成,我添加了几行 javascript 来执行下拉菜单,
$('.ewc-filter-cat').live('change', function(){
var catFilter = $(this).val();
if( catFilter != '' ){
document.location.href = 'admin.php?page=ewc-testimonial'+catFilter;
}
});

并且它的工作很酷而且很好,如果有人需要更多帮助,请在此处发表评论。

谢谢你的时间。

关于wordpress - 如何在 wordpress WP_List_Table 中添加自定义下拉过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23859559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com