[résolu] Comment modifier la catégorie par défaut ?

toutatistoutatis Member
mai 2023 modifié dans Plugins

Bonjour,
Je n'ai qu'une seule catégorie sur mon site, comment faire pour qu'elle soit celle par défaut (soit en remplaçant sans catégorie, soit en mettant la catégorie par défaut, car dès fois j'oublie de cocher ^^)
Merci

Réponses

  • mai 2023 modifié

    Bonjour,

    Tu peut eventuellement te servir de javascript

    exemple à ajouter dans ta page nouvel article :

    // au chargement de la page
    window.onload = function(){
      // on recherche le formulaire et on ecoute l'evement onsubmit pour lui attacher une fonction 
      document.querySelector('#form_article').addEventListener('submit', checkCat);
    }
    function checkCat() {
    // on prend tout les input des catégories checked
    let categories = document.querySelectorAll('#form_article input[id^=cat]:checked') ;
    // on choisi celui qui doit-être checker par défaut
    let defautCategorie = document.querySelector('#form_article input#cat_001');
    // on verifie si il y en a de déja checker, si 0, alors on checke celui par défaut
    if( categories.length =='0')  defautCategorie.setAttribute('checked','checked');    
    }
    
    

    À ajouter dans la page article.php dans la balise <script>vers la ligne 266

    Comme cela, à part injecter un peu plus de javascript, il n'y a pas lieu de toucher aux codes PHP de PluXml
    cdt


    Cordialement,
    gcyrillus

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

  • Bonjour
    Cela me va très bien comme solution :)
    Petite question, comment je choisis la catégorie par défaut ? juste en changeant le numéro de la catégorie (par exemple cat_003) ?
    Bonne journée

  • Oui, tout à fait B)


    Cordialement,
    gcyrillus

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

  • Bonjour,
    Je viens d'essayer, par contre la page article.php du thème par défaut n'a que 63 ignes et je ne trouve pas de balise dedans. Où puis-je mettre le code, dans une balise script que je mets avant l'inclupe pour footer.php ?
    Bonne soirée

  • mai 2023 modifié

    Il s'agit du fichier dans core/admin/article.php , pas du fichier du thème :) @toutatis


    Cordialement,
    gcyrillus

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

  • Bonjour,
    Désolé de mon retard de réponse, j'ai eu des soucis informatique et un rush niveau boulot…
    Après avoir testé (tu avais donné pile le bon numéro de ligne), ça n'a pas fonctionné chez moi.
    J'ai donc été dans admin/core/article.php et ai mis checked="checked" après <input type="checkbox"
    (pour ceux qui liraient cette solution, elle ne fonctionne que si l'on n'a qu'une seule catérgorie sur le site, sinon toutes seraient cochées).
    Voilà ce que donne le code (vu que ça oblige à commenter la partie qui précède), j'ai aussi supprimé les coches pour catégories Non classé et Accueil, car elles ne me servaient à rien, vu que je force la coche sur la catégorie unique.

    /*$selected = (is_array($catId) AND in_array('000', $catId)) ? ' checked="checked"' : '';
    echo '<label for="cat_unclassified"><input class="no-margin" disabled="disabled" type="checkbox" id="cat_unclassified" name="catId[]"'.$selected.' value="000" />&nbsp;'. L_UNCLASSIFIED .'</label>';*/
    /*$selected = (is_array($catId) AND in_array('home', $catId)) ? ' checked="checked"' : '';
    echo '<label for="cat_home"><input type="checkbox" class="no-margin" id="cat_home" name="catId[]"'.$selected.' value="home" />&nbsp;'. L_CATEGORY_HOME_PAGE .'</label>';
    foreach($plxAdmin->aCats as $cat_id => $cat_name) {
    $selected = (is_array($catId) AND in_array($cat_id, $catId)) ? ' checked="checked"' : '';
    if($plxAdmin->aCats[$cat_id]['active'])
    echo '<label for="cat_'.$cat_id.'">'.'<input type="checkbox" class="no-margin" id="cat_'.$cat_id.'" name="catId[]"'.$selected.' value="'.$cat_id.'" />&nbsp;'.plxUtils::strCheck($cat_name['name']).'</label>';
    else
    echo '<label for="cat_'.$cat_id.'">'.'<input type="checkbox" class="no-margin" id="cat_'.$cat_id.'" name="catId[]"'.$selected.' value="'.$cat_id.'" />&nbsp;'.plxUtils::strCheck($cat_name['name']).'</label>';
    }*/
    foreach($plxAdmin->aCats as $cat_id => $cat_name) {
    $selected = (is_array($catId) AND in_array($cat_id, $catId)) ? ' checked="checked"' : '';
    echo '<label for="cat_'.$cat_id.'">'.'<input type="checkbox" checked="checked" class="no-margin" id="cat_'.$cat_id.'" name="catId[]"'.$selected.' value="'.$cat_id.'" />&nbsp;'.plxUtils::strCheck($cat_name['name']).'</label>';
    }
    
  • okay, du coup c'est sans appel :)

    Petit truc à faire quand tu modifie une feuille de style ou un fichier javascript , tu peut faire un CTRL+F5 pour être certains de ne pas recharger les fichiers en cache mais bien les fichiers modifiés ;)

    Bonne continuation


    Cordialement,
    gcyrillus

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

Connectez-vous ou Inscrivez-vous pour répondre.