Function Reference: geodir_user_favourite_listing_count
Summary
Get user’s favorite listing count.
Global Values
- $wpdb
- (object) (required) WordPress Database object.
- Default: None
- $current_user
- (object) (required) Current user object.
- Default: None
- $plugin_prefix
- (string) (required) Geodirectory plugin table prefix.
- Default: None
Package
GeoDirectory
Parameters
- $user_id
- (int) (optional) The user id to get, defaults to current user.
- Default: None
Return Values
- (array)
- User listing count for each post type.
Change Log
Since: 1.0.0
Source File
geodir_user_favourite_listing_count() is located in geodirectory-functions/user_functions.php [Line: 14]
Source Code
function geodir_user_favourite_listing_count($user_id=false) { global $wpdb, $plugin_prefix, $current_user; if(!$user_id){$user_id = $current_user->ID;} if(!$user_id){return array();} $site_id = ''; if ( is_multisite() ) { $blog_id = get_current_blog_id(); if($blog_id && $blog_id!='1'){$site_id = '_' . $blog_id ;} } $user_favorites = geodir_get_user_favourites($user_id); $all_posts = get_option('geodir_favorite_link_user_dashboard'); $user_listing = array(); if (is_array($all_posts) && !empty($all_posts) && is_array($user_favorites) && !empty($user_favorites)) { $user_favorites = "'" . implode("','", $user_favorites) . "'"; foreach ($all_posts as $ptype) { $total_posts = $wpdb->get_var("SELECT count( ID ) FROM " . $wpdb->prefix . "posts WHERE post_type='" . $ptype . "' AND post_status = 'publish' AND ID IN (" . $user_favorites . ")"); if ($total_posts > 0) { $user_listing[$ptype] = $total_posts; } } } return $user_listing; }