function wds_metadesc()
 {
     if (is_admin()) {
         return false;
     }
     global $post, $wp_query;
     //global $wds_options;
     $wds_options = get_wds_options();
     if (is_singular()) {
         if (function_exists('groups_get_current_group') && 'groups' == bp_current_component() && ($group = groups_get_current_group())) {
             // BP group?
             $optvar = !empty($wds_options['metadesc-bp_groups']) ? $wds_options['metadesc-bp_groups'] : '';
             $metadesc = wds_replace_vars($optvar, array('name' => $group->name, 'description' => $group->description));
         } else {
             if (function_exists('bp_current_component') && 'profile' == bp_current_component()) {
                 $optvar = !empty($wds_options['metadesc-bp_profile']) ? $wds_options['metadesc-bp_profile'] : '';
                 $metadesc = wds_replace_vars($optvar, array('full_name' => bp_get_displayed_user_fullname(), 'username' => bp_get_displayed_user_username()));
             } else {
                 $metadesc = wds_get_value('metadesc');
                 if (empty($metadesc)) {
                     $optvar = !empty($wds_options['metadesc-' . $post->post_type]) ? $wds_options['metadesc-' . $post->post_type] : '';
                     $metadesc = wds_replace_vars($optvar, (array) $post);
                 }
             }
         }
     } else {
         if (function_exists('is_shop') && is_shop() && function_exists('woocommerce_get_page_id')) {
             // WooCommerce shop page
             $post_id = woocommerce_get_page_id('shop');
             $metadesc = wds_get_value('metadesc', $post_id);
             if (empty($metadesc)) {
                 $optvar = !empty($wds_options['metadesc-' . $post->post_type]) ? $wds_options['metadesc-' . $post->post_type] : '';
                 $metadesc = wds_replace_vars($optvar, (array) $post);
             }
         } else {
             if (is_home() && 'posts' == get_option('show_on_front') && isset($wds_options['metadesc-home'])) {
                 $metadesc = wds_replace_vars($wds_options['metadesc-home'], array());
             } else {
                 if (is_home() && 'posts' != get_option('show_on_front')) {
                     $post = get_post(get_option('page_for_posts'));
                     $metadesc = wds_get_value('metadesc');
                     if (($metadesc == '' || !$metadesc) && isset($wds_options['metadesc-' . $post->post_type])) {
                         $metadesc = wds_replace_vars($wds_options['metadesc-' . $post->post_type], (array) $post);
                     }
                 } else {
                     if (is_category() || is_tag() || is_tax()) {
                         $term = $wp_query->get_queried_object();
                         $metadesc = wds_get_term_meta($term, $term->taxonomy, 'wds_desc');
                         if (!$metadesc && isset($wds_options['metadesc-' . $term->taxonomy])) {
                             $metadesc = wds_replace_vars($wds_options['metadesc-' . $term->taxonomy], (array) $term);
                         }
                     } else {
                         if (is_author()) {
                             $author_id = get_query_var('author');
                             $metadesc = get_the_author_meta('wds_metadesc', $author_id);
                         } else {
                             if (function_exists('groups_get_current_group') && 'groups' == bp_current_component() && ($group = groups_get_current_group())) {
                                 // BP group?
                                 $optvar = !empty($wds_options['metadesc-bp_groups']) ? $wds_options['metadesc-bp_groups'] : '';
                                 $metadesc = wds_replace_vars($optvar, array('name' => $group->name, 'description' => $group->description));
                             } else {
                                 if (function_exists('bp_current_component') && 'profile' == bp_current_component()) {
                                     $optvar = !empty($wds_options['metadesc-bp_profile']) ? $wds_options['metadesc-bp_profile'] : '';
                                     $metadesc = wds_replace_vars($optvar, array('full_name' => bp_get_displayed_user_fullname(), 'username' => bp_get_displayed_user_username()));
                                 }
                             }
                         }
                     }
                 }
             }
         }
     }
     if (!empty($metadesc)) {
         echo "\t" . '<meta name="description" content="' . esc_attr(strip_tags(stripslashes(apply_filters('wds_metadesc', $metadesc)))) . '" />' . "\n";
     }
 }
 /**
  * Loads taxonomies into the sitemap.
  */
 private function _load_taxonomy_items()
 {
     if (wds_is_switch_active('WDS_SITEMAP_SKIP_TAXONOMIES')) {
         return false;
     }
     global $wds_options;
     $tax = array();
     $raw = get_taxonomies(array('public' => true, 'show_ui' => true), 'objects');
     foreach ($raw as $tid => $taxonomy) {
         if (@$wds_options['taxonomies-' . $taxonomy->name . '-not_in_sitemap']) {
             continue;
         }
         $tax[] = $taxonomy->name;
     }
     $terms = get_terms($tax, array('hide_empty' => true));
     foreach ($terms as $term) {
         if (wds_get_term_meta($term, $term->taxonomy, 'wds_noindex')) {
             continue;
         }
         $canonical = wds_get_term_meta($term, $term->taxonomy, 'wds_canonical');
         $link = $canonical ? $canonical : get_term_link($term, $term->taxonomy);
         $priority = apply_filters('wds-term-priority', $term->count > 10 ? 0.6 : ($term->count > 3 ? 0.4 : 0.2), $term);
         // -------------------------------------- Potential kludge
         $q = new WP_Query(array('tax_query' => array('taxonomy' => $term->taxonomy, 'field' => 'id', 'terms' => $term->term_id), 'orderby' => 'date', 'order' => 'DESC', 'posts_per_page' => 1));
         $time = $q->posts ? strtotime($q->posts[0]->post_date) : time();
         // -------------------------------------- Potential kludge
         $this->_add_item($link, $priority, 'weekly', $time);
     }
 }