function get excluded category

  • Statut : non résolu
6 sujets de 1 à 6 (sur un total de 6)
  • Auteur
    Messages
  • #449515
    Patricia
    Membre
    Initié WordPress
    15 contributions

    Bonjour,

    j’utilise wp_list_cats(‘arguments’)
    je souhaiterai passer en argument pour exclude une liste de categorie
    non pas au niveau du code exclude=’1,2′
    mais suite à une lecture dans wp_categories.
    je pense qu’il faut ajouter une variable a wp_categories style exclude (0 / 1)
    si valeur = 1 alors la categorie correspondante est a exclure de la liste

    merci pour votre aide dans la creation de cette function

    dans la table wp_categories j’ai ajouté category_exclude bigint(20)

    function get_excluded_category()
    {
    $cat_excluded_ID = $cat->cat_ID;
    if ($cat->category_exclude == 1)
    {
    $cat_excluded =”‘”;
    $cat_excluded .= $cat_excluded_ID;
    $cat_excluded .= “,'”;
    }
    return $cat_excluded;
    }

    mais evidement cela ne fonction pas
    je ne boucle pas

    ensuite
    $cat_excluded = get_excluded_category();
    wp_list_cats(exclude=.$cat_excluded);

    Pat

    #585381
    xavier
    Gestionnaire du forum
    Maître WordPress
    2126 contributions

    N’as-tu pas déjà posé une question similaire ?
    Je ne comprend pas l’intérêt de créer une fonction pour une fonctionnalité qui existe déjà.
    Qu’est-ce qui ne te suffit pas dans exclude=’1,2′ ?

    #585382
    Patricia
    Membre
    Initié WordPress
    15 contributions

    je ne souhaite pas venir indiquer dans le code les valeurs ‘1,2’ mais
    lire les valeurs ID de la table wp_categories ou category_exclude = 1
    voila pourquoi il faut a mon avis creer une fonction qui boucle sur les categories pour creer la liste a exclure

    cela te permet par exemple de creer des listes de categories differentes en focntion des exclusions
    exemple pour creer un menu avec des categories et non pas des pages
    tu peux ne pas voulir avoir toutes les cat dans le menu,il faut donc les exclure
    alors soit tu modif le code, soit au niveau de l’admin tu indiques a publier ou non

    merci

    #585383
    xavier
    Gestionnaire du forum
    Maître WordPress
    2126 contributions

    Je pense qu’il absolument éviter de créer de nouvelles lignes dans ta table SQL – à la prochaine mise à jour, tu risques de tout perdre.
    M’est avis qu’il serait plus pérenne que tu écrives dans tes templates une fonction PHP genre if / else if / else if… qui modifie le contenu du exclude en fonction de la zone en cours d’affichage.

    #585384
    Patricia
    Membre
    Initié WordPress
    15 contributions

    ok mais comment puis je faire alors pour indiquer que tel categorie je souhaite la voir dans la liste et pas l’autre, je suis bien obligé de l’indiquer dans le exclude et jusqu’a present les valeurs du exclude sont indiquées manuellement dans le code.

    Donc pour reprendre mon pb, je suis bien obligé de créer peut importe soit une new table soit une variable dans la table categorie pour signaler que tel categorie oui je veux la voir dans la liste.

    d’ou la function get_excluded_category() *
    que je n’arrve tjrs pas a coder , sniff

    pb de creation de liste

    #585385
    Patricia
    Membre
    Initié WordPress
    15 contributions

    voila ma version qui ne fonctionne pas

    function get_excluded_category()
    {
    $categories = $wpdb->get_results(“SELECT * FROM $wpdb->categories ORDER BY cat_name”);

    $edit = “‘”;

    if ($categories) {
    foreach ($categories as $category) {

    if ($category->category_exclude =0)
    {
    $edit = $category->cat_ID;
    $edit .= “,”;
    }
    }
    }

    $edit .= “‘”;
    $cat_excluded = $edit;
    return $cat_excluded;
    }

6 sujets de 1 à 6 (sur un total de 6)
  • Vous devez être connecté pour répondre à ce sujet.