get_row( $wpdb->prepare( "SELECT s.*, p.name, p.max_products, p.commission_rate, p.featured_listing, p.priority_support FROM {$wpdb->prefix}vv_vendor_subscriptions s JOIN {$wpdb->prefix}vv_vendor_plans p ON s.plan_id = p.id WHERE s.vendor_id = %d AND s.status = 'active' AND s.expires_at > NOW() ORDER BY s.expires_at DESC LIMIT 1", $vendor_id ) ); } public static function get_plans() { global $wpdb; return $wpdb->get_results( "SELECT * FROM {$wpdb->prefix}vv_vendor_plans WHERE is_active=1 ORDER BY price ASC" ); } public static function max_products( $vendor_id ) { $sub = self::get_active( $vendor_id ); return $sub ? (int) $sub->max_products : (int) get_option( 'vv_free_max_products', 5 ); } }