web-dev-qa-db-fra.com

Fonction Wordpress comme is_category pour la sous-catégorie? is_subcategory?

Existe-t-il une fonction dans WordPress permettant de vérifier si la page sur laquelle vous vous trouvez est une page d'archive de sous-catégorie?

Comme le fait is_category vérifie s'il s'agit d'une page de catégorie?

4
Kirill Fuchs

Les sous-catégories utilisent par défaut la page d'archivage des catégories standard. Il n'y a pas de fonction telle que is_subcategory. Mais vous pouvez écrire le vôtre.

Voici un exemple: Ceci vérifiera si la page actuelle est une sous-catégorie. Ou si vous transmettez un identifiant, il vérifiera si l'identifiant est une sous-catégorie.

function is_subcategory( $cat_id = NULL ) {

        if ( !$cat_id )
            $cat_id = get_query_var( 'cat' );

        if ( $cat_id ) {

            $cat = get_category( $cat_id );
            if ( $cat->category_parent > 0 )
                return true;
        }

        return false;
    }
4
Kirill Fuchs

Si vous souhaitez vérifier l'emplacement actuel (sans avoir besoin de spécifier un ID):

// Return type - Boolean or Object (if the latter, then check the result with is_object)
function is_subcategory($return_boolean=true) {
    $result = false;
    if (is_category()) {
        $this_category = get_queried_object();
        if (0 != $this_category->parent) // Category has a parent
            $result = $return_boolean ? true : $this_category;
    }
    return $result;
}
0
LWC