delete( $wpdb->prefix . 'yoone_bundle_items', array('bundle_id' => $bundle_id) ); // 删除混装产品 $wpdb->delete( $wpdb->prefix . 'yoone_bundles', array('id' => $bundle_id) ); } echo '

' . sprintf(__('已删除 %d 个混装产品', 'yoone-subscriptions'), count($bundle_ids)) . '

'; } } // 获取混装产品列表 $per_page = 20; $current_page = isset($_GET['paged']) ? max(1, intval($_GET['paged'])) : 1; $offset = ($current_page - 1) * $per_page; $search = isset($_GET['s']) ? sanitize_text_field($_GET['s']) : ''; $status_filter = isset($_GET['status']) ? sanitize_text_field($_GET['status']) : ''; $where_conditions = array('1=1'); $where_values = array(); if ($search) { $where_conditions[] = "(name LIKE %s OR description LIKE %s)"; $where_values[] = '%' . $wpdb->esc_like($search) . '%'; $where_values[] = '%' . $wpdb->esc_like($search) . '%'; } if ($status_filter) { $where_conditions[] = "status = %s"; $where_values[] = $status_filter; } $where_clause = implode(' AND ', $where_conditions); // 获取总数 $total_query = "SELECT COUNT(*) FROM {$wpdb->prefix}yoone_bundles WHERE {$where_clause}"; if (!empty($where_values)) { $total = $wpdb->get_var($wpdb->prepare($total_query, $where_values)); } else { $total = $wpdb->get_var($total_query); } // 获取混装产品数据 $query = "SELECT * FROM {$wpdb->prefix}yoone_bundles WHERE {$where_clause} ORDER BY created_at DESC LIMIT %d OFFSET %d"; $query_values = array_merge($where_values, array($per_page, $offset)); $bundles = $wpdb->get_results($wpdb->prepare($query, $query_values)); $total_pages = ceil($total / $per_page); // 获取状态统计 $status_counts = $wpdb->get_results( "SELECT status, COUNT(*) as count FROM {$wpdb->prefix}yoone_bundles GROUP BY status" ); ?>

get_var($wpdb->prepare( "SELECT COUNT(*) FROM {$wpdb->prefix}yoone_bundle_items WHERE bundle_id = %d", $bundle->id )); ?>
#id; ?> name); ?> description, 10)); ?> discount_type === 'percentage'): ?> discount_value; ?>% discount_type === 'fixed'): ?> discount_value); ?> status === 'active' ? __('启用', 'yoone-subscriptions') : __('禁用', 'yoone-subscriptions'); ?> created_at)); ?>
1): ?>
add_query_arg('paged', '%#%'), 'format' => '', 'prev_text' => __('«'), 'next_text' => __('»'), 'total' => $total_pages, 'current' => $current_page ); echo paginate_links($pagination_args); ?>