CPTP_Util::get_taxonomy_parents_slug PHP Method

get_taxonomy_parents_slug() public static method

Get Custom Taxonomies parents slug.
public static get_taxonomy_parents_slug ( integer | WP_Term | object $term, string $taxonomy = 'category', string $separator = '/', boolean $nicename = false, array $visited = [] ) : string
$term integer | WP_Term | object
$taxonomy string
$separator string
$nicename boolean
$visited array
return string
    public static function get_taxonomy_parents_slug($term, $taxonomy = 'category', $separator = '/', $nicename = false, $visited = array())
    {
        $chain = '';
        $parent = get_term($term, $taxonomy);
        if (is_wp_error($parent)) {
            return $parent;
        }
        if ($nicename) {
            $name = $parent->slug;
        } else {
            $name = $parent->name;
        }
        if ($parent->parent && $parent->parent != $parent->term_id && !in_array($parent->parent, $visited)) {
            $visited[] = $parent->parent;
            $chain .= CPTP_Util::get_taxonomy_parents_slug($parent->parent, $taxonomy, $separator, $nicename, $visited);
        }
        $chain .= $name . $separator;
        return $chain;
    }

Usage Example

 /**
  *
  * Get Custom Taxonomies parents slug.
  *
  * @version 1.0
  *
  * @param int|WP_Term|object $term
  * @param string             $taxonomy
  * @param string             $separator
  * @param bool               $nicename
  * @param array              $visited
  *
  * @return string
  */
 public static function get_taxonomy_parents_slug($term, $taxonomy = 'category', $separator = '/', $nicename = false, $visited = array())
 {
     $chain = '';
     $parent = get_term($term, $taxonomy);
     if (is_wp_error($parent)) {
         return $parent;
     }
     if ($nicename) {
         $name = $parent->slug;
     } else {
         $name = $parent->name;
     }
     if ($parent->parent && $parent->parent != $parent->term_id && !in_array($parent->parent, $visited)) {
         $visited[] = $parent->parent;
         $chain .= CPTP_Util::get_taxonomy_parents_slug($parent->parent, $taxonomy, $separator, $nicename, $visited);
     }
     $chain .= $name . $separator;
     return $chain;
 }
All Usage Examples Of CPTP_Util::get_taxonomy_parents_slug