9999ème article publiés et impossible d'en publier un autre

Bonjour,

J'ai la version 5.0.2 de pluxml.
Etant arrivé au 9999ème article publiés, je ne peux plus en publier d'autres.
J'ai ce message d'erreur: "L'article demandé n'existe pas ou n'existe plus !"
Pouvez vous me dire ce que je dois faire pour continuer à poster.

Merci

Mots clés:

Réponses

  • @catarali76

    Whaou, 9999 articles et une v5.02 ;)

    En fait ce n'est pas un bogue, t'es arrivé a la limite des articles de Pluxml...

    A mon avis il n'y a pas 9999 fichiers ds le dossier data/articles (il doit y en avoir qui on du être effacés entre temps).

    Peut-être créer un script qui réordonne les articles (et tags.xml) mais attention au liens interne entre articles et au référencement...

    Ou alors un plugin/script qui te permette de créer un article a partir d'un numéro d'article inexistant.

    A par ça je ne vois pas pour l'instant...

    Notre temps est la seule monnaie vraie ;)

    Site, Dépôt, framagit, MyShop, Factux

    #mozinor président

  • bazooka07bazooka07 PluXml Lead Developer, Moderator

    Bonsoir,
    Version 5.0.2 de PluXml ! Tu n'as jamais envisager une mise à jour ?
    As-tu vraiment 9999 articles en ligne ? Ou y a-t-il des trous dans la numérotation des articles ?
    La limite de numérotation des articles est fixée à 9999 par construction, cadrée sur 4 digits.

    La plus ancienne version de PluXml sur Github est 5.1.7.
    On peut créer une archive zip de cette version pour que tu puisses faire une première mise à jour. Évidemment,il est prudent de faire une sauvegarde de ton site.
    Les sources de la 5.0.2 ne sont pas disponibles sur Github. As-tu une archive zip de cette version ?

    Peux-tu nous donner l'adresse de ton site ?

  • bazooka07bazooka07 PluXml Lead Developer, Moderator

    Dans la version 5.1.7 on peut remplacer la fonction nextIdArticle() dans le fichier core/lib/class.plx.admin.php pour récupérer le numéro du plus vieil article effacé :

        public function nextIdArticle() {
    
            $aKeys = array_keys($this->plxGlob_arts->aFiles);
            if(is_array($aKeys) and count($aKeys) > 0) {
                rsort($aKeys);
                $lastId = intval($aKeys['0']);
                if($lastId == 9999) {
                    # On va rechercher des dents creuses dans la numérotation des articles
                    sort($aKeys);
                    foreach($aKeys as $key=>$value) {
                        if(str_pad($key + 1, 4, '0', STR_PAD_LEFT) != $value) {
                            $lastId = $key;
                            break;
                        }
                    }
                }
                $lastId++;
                return str_pad($lastId, 4, '0', STR_PAD_LEFT);
            }
    
            return '0001';
        }
    
    

    Je vais faire un PR pour la prochaine version de PluXml

  • 22 févr. modifié

    Bonjour/bonsoir,

    Voilà quelque chose de remarquable , un record !!! et une belle preuve de résilience de PluXml.

    Il y a peut-être une piste de solution que montre le plugin PlxMultiLingue, en utilisant plusieurs dossiers.
    Je m'avance peut-être trop vite car il ne s'agit bien sur de ne pas proposé une autre interface, mais de pointer ou fusionner sur un nouveau dossier dans le tableau, pour pointer sur 10001 lorsque le numéro d'article dans ce nouveau dossier serait quand à lui 0001 .
    À froid comme ça , je n'ai pas encore d'idée quels hooks solliciter tant coté front que backend pour faire cohabiter ces deux dossier comme n'étant qu'un seul.
    en raccourcie l'idée est : on redirige la demande de l'article 10001 vers l'article 0001 de l'autre dossier ;)


    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

  • @bazooka07 avait proposé une solution simple il y a quelques années : https://forum.pluxml.org/discussion/comment/53541/#Comment_53541
    à voir si c'est toujours d'actualité

  • @kowalsky merci , bien vue.

    Si la solution est simple, peut-être l'intégrer en natif. maintenant que l'on sait que c'est possible de toucher le plafond ;)


    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

  • bazooka07bazooka07 PluXml Lead Developer, Moderator
Connectez-vous ou Inscrivez-vous pour répondre.