'', 'id' => 0 ], $atts );
$vendor = null;
if ( $atts['id'] ) $vendor = get_user_by( 'id', (int) $atts['id'] );
elseif ( $atts['slug'] ) {
$slug = sanitize_text_field( $atts['slug'] );
$vendor = get_user_by( 'login', $slug ) ?: get_user_by( 'slug', $slug );
} else {
$slug = get_query_var( 'vv_vendor_store' );
if ( $slug ) $vendor = get_user_by( 'login', $slug ) ?: get_user_by( 'slug', $slug );
}
if ( ! $vendor || ! VV_Helpers::is_vendor( $vendor->ID ) ) {
return '
';
}
$vid = $vendor->ID;
$stats = VV_Helpers::get_vendor_stats( $vid );
$banner = get_user_meta( $vid, 'vv_store_banner', true );
$logo = get_user_meta( $vid, 'vv_store_logo', true );
$bio = get_user_meta( $vid, 'vv_store_bio', true );
$store_name = get_user_meta( $vid, 'vv_store_name', true ) ?: $vendor->display_name;
$current = get_current_user_id();
global $wpdb;
$is_following = $current ? (bool) $wpdb->get_var( $wpdb->prepare(
"SELECT id FROM {$wpdb->prefix}vv_followers WHERE vendor_id=%d AND customer_id=%d", $vid, $current
) ) : false;
$follower_count = $stats['follower_count'];
$products = get_posts( [ 'post_type'=>'product','post_status'=>'publish','post_author'=>$vid,'numberposts'=>12 ] );
$reviews = $wpdb->get_results( $wpdb->prepare(
"SELECT r.*, u.display_name FROM {$wpdb->prefix}vv_vendor_reviews r LEFT JOIN {$wpdb->prefix}users u ON r.customer_id=u.ID WHERE r.vendor_id=%d ORDER BY r.created_at DESC LIMIT 6",
$vid
) );
ob_start();
?>
No products listed yet.
ID );
if ( ! $product ) continue;
$img = get_the_post_thumbnail_url( $p->ID, 'medium' );
?>
No reviews yet.
display_name); ?>
rating?'':''; ?>
review); ?>
vendor_response): ?>
vendor_response); ?>
Store Info