Quelle indexation pour un arbre n-aire sans ordre ?

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par ortolojf, 9 Octobre 2021.

  1. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    3 485
    J'aime reçus:
    28
    Bonjour

    J'ai adapté un code d'arbre binaire en n-aire, pour représenter une page html.

    C'est donc un arbre non ordonné.

    Un noeud est de la forme :

    PHP:

    class $Node {
          public 
    $data;
            public 
    $children;
            public function 
    __construct($data)
            {
                    
    $this->data=$data;
                    
    $this->children=array();
            }
            public function 
    disp_data()
            {
                    echo 
    $this->data;
            }
    }
    //end class Node

    Les children sont les fils directs d'un même niveau de l'arbre.

    Evidemment, on peut y accéder par leurs index : $chidren[$i] etc...

    J'ai fait ceci : Parcours en preorder et en levelorder.

    Recherche en preorder et levelorder.

    Insertion( levelorder ).

    La comparaison des noeuds se fait par égalité d objet.

    Pour ce qui est de l'interface de l'insertion, j'insère à un emplacement précis ( parent et index ).

    Celà vous semble-t-il suffisant, ou faut-il indiquer l'endroit où insérer d'une autre manière ?

    Merci beaucoup de votre aide,

    Voici un exemple d'arbre fait avec mon interface :


    Code:
    
    *****************************************
    nTree Object
    (
        [root] => Node Object
            (
                [data] => Ancêtre
                [children] => Array
                    (
                        [0] => Node Object
                            (
                                [data] => Fils_1
                                [children] => Array
                                    (
                                        [0] => Node Object
                                            (
                                                [data] => PetitFils_1_1
                                                [children] => Array
                                                    (
                                                    )
                                            )
                                        [1] => Node Object
                                            (
                                                [data] => Petit Fils_1_2
                                                [children] => Array
                                                    (
                                                    )
                                            )
                                    )
                            )
                        [1] => Node Object
                            (
                                [data] => Fils_2
                                [children] => Array
                                    (
                                        [0] => Node Object
                                            (
                                                [data] => Petit Fils_2_1
                                                [children] => Array
                                                    (
                                                    )
                                            )
                                        [1] => Node Object
                                            (
                                                [data] => Petit Fils_2_2
                                                [children] => Array
                                                    (
                                                    )
                                            )
                                        [2] => Node Object
                                            (
                                                [data] => Petit Fils_2_3
                                                [children] => Array
                                                    (
                                                    )
                                            )
                                    )
                            )
                        [2] => Node Object
                            (
                                [data] => Fils_3
                                [children] => Array
                                    (
                                    )
                            )
                        [3] => Node Object
                            (
                                [data] => Fils_4
                                [children] => Array
                                    (
                                    )
                            )
                    )
            )
    )
    *******************************************
    ***            PARCOURS EN LEVEL ORDER        ***
    *******************************************
        Ancêtre    Fils_1    Fils_2    Fils_3    Fils_4    PetitFils_1_1    Petit Fils_1_2    Petit Fils_2_1    Petit Fils_2_2    Petit Fils_2_3
    *******************************************
    ***            PARCOURS EN PRE ORDER        ***
    *******************************************
        Ancêtre    Fils_1    PetitFils_1_1    Petit Fils_1_2    Fils_2    Petit Fils_2_1    Petit Fils_2_2    Petit Fils_2_3    Fils_3    Fils_4
    *******************************************
    
    
     
  2. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    3 485
    J'aime reçus:
    28
    Rebonjour

    L'autre option pour des insert ( au lieu de parent et indice de children ), serait l'objet à remplacer, ainsi qu'un booléen pour "même niveau que objet"/"fils de objet".

    L'option ( parent/children ) nécessite par le processus qui insère, le rang d'index du child à remplacer/insérer.

    Mais cette option est un peu plus rapide que la dernière.

    Ce modèle d'arbre en-aire est destiné à représenter un DOMDocument ( en PHP ).

    Je souhaite parcourir un DOMDocument en levelorder, et je ne sais pas faire autrement que de passer par un arbre n-aire.

    Je peux fournir mon code d'arbre n-aire.

    Merci beaucoup de votre aide.
     
  3. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    3 485
    J'aime reçus:
    28
    Bonjour

    J''ai besoin de parcourir un arbre n-aire en inorder.

    C'est -à-dire : ( pour un arbre binaire ) : sous-arbre-gauche, sous-arbre-droit, racine-sous-arbre.

    Mais qu'est-ce que celà donnerait pour un arbre n-aire ?

    Peut-être : tous-fils-d'un-noeud , noeud ?

    Quel est l'algorithme récursif ?

    Ci-dessous est-il correct ?

    Merci.

    PHP:

    <?php
    class Node
    {
            public 
    $data;
            public 
    $parent;
            public 
    $children;
            public function 
    __construct($data)
            {
                    
    $this->data=$data;
                    
    $this->parent null;
                    
    $this->children=array();
            }
            public function 
    disp_data()
            {
                    echo 
    $this->data;
            }
    }
    //end class Node
    class nTree
    {
            public 
    $root;
            
    //public $s;
            
    public function __construct()
            {
                    
    $this->root=null;
                    
    //$this->s=file_get_contents('store');
            
    }
            
    /*************************************/
            /**    FONCTION VISIT DISPLAY OBJECT    **/
            /*************************************/
            
    public function visit($current) {
                    echo 
    "\t" $current->data;
            }
            
    /****************/
            /**    INORDER    **/
            /****************/
            
    public function inorder($local_root)
            {
                    if(
    $local_root===null
                            return 
    false;
                    
    $tmp_count count($local_root->children);
                    for(
    $i 1$i $tmp_count 1$i++) {
                                    
    $this->inorder($local_root->children[$i 1]);
                            
    $this->visit($local_root->children[$i]);
                                    
    $this->inorder($local_root->children[$i 1]);
                    }
            } 
    }
    ?>

     
  4. voyance
    voyance WRInaute discret
    Inscrit:
    12 Mars 2020
    Messages:
    126
    J'aime reçus:
    12
    bonjour,

    N'est il pas plus urgent de modifier d'abord la partie SEO que la technique ? Cela ne reste que mon opinion biensur.

    Problème SEO :
    URL mal formatée pour le SEO
    Qu'est-ce que c'est et comment le corriger ?


    CE PROBLÈME EST SUR 137 PAGES

    par exemple : https://www.pronostics-courses.fr/php/courses_nouvelles/pronostics_new_courses,14.html
    https://www.pronostics-courses.fr/php/courses_anciennes/pronostics_new_old_courses,2110090402.html

    Le mélange français / anglais n'est pas très agréable et je pense n'apporte rien en terme de référencement.

    Depuis le temps je ne trouve pas sur google le site sur la requête :
    Statistiques Courses de Chevaux


    Vouloir de la technique, automatiser, coder ..., certes c'est louable mais la partie design et seo est importante aussi.

    Une belle bannière en accueil avec des chevaux cela dynamise le tout. Cela demeure fade en accueil, trop statique (le contraire donc du monde hippique qui bouge ...)

    Regardez comme c'est joli : https://pixabay.com/fr/photos/cheval-blanc-hiver-neige-décembre-3010129/

    Cette nature, les animaux ...

    Sans biensur rentrer dans le côté galerie de photos, ce n'est pas le but je pense.

    Mais cela donne un côté frais, de peps, on a envie d'être à côté du cheval ...
     
  5. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    3 485
    J'aime reçus:
    28
    Merci beaucoup voyance

    L'arbre n-aire que je fais est destiné à mon script evaluation.php , qui notera mes pages en fonction de leur indexabilité, suivant pratiquement les mêmes critères que RM-Tech.

    Ces arbres n-aires ( mes pages html ), me permettront de parser ces pages en levelorder ( largeur ), ce que je ne sais pas faire en PHP avec DOMDocument.

    Le DOMDocument ne me me permet que le preorder.

    Le levelorder est nécessaire à mon évaluation des H1-Hn.

    Pour des notes inférieures à une limite, je mettrai des noindex et des nofollow.

    Celà a donc de l'importance pour mon SEO.

    Amicalement.
     
  6. voyance
    voyance WRInaute discret
    Inscrit:
    12 Mars 2020
    Messages:
    126
    J'aime reçus:
    12
    Quoi donc ? La balise H1 ? Beaucoup de complications j'ai l'impression ...
     
  7. WebRankInfo
    WebRankInfo Admin
    Membre du personnel
    Inscrit:
    19 Avril 2002
    Messages:
    20 499
    J'aime reçus:
    626
    c'est pourtant un des trucs les plus simples prévus par @ortolojf depuis longtemps :)

    Bon, trêve de plaisanteries, est-ce que les internautes cherchent dans Google des infos sur des courses passées il y a des mois voire des années ? si la réponse est non, pourquoi les conserver sur le site ? (en tout cas indexables)
     
    spout apprécie ceci.
  8. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    3 485
    J'aime reçus:
    28
    Bonjour Monsieur Duffez

    J'ai désindexé début Juillet sur GSC toutes mes pages anciennes.

    J'ai enlevé le sitemap pour les pages anciennes.

    Les liens vers les pages anciennes sont dans mon calendrier.

    Seulement jusqu'à 160 jours dans le passé.

    Les glissements de mois se font en mode post, le calendrier est en php.

    Si je remettais les sitemaps en mode glissant 160 jours, j'aurais tout le temps des erreurs 404/410 sur GSC.

    Avec ce script evaluation.php , je cherche à automatiser ma gestion des pages désindexées.

    Merci beaucoup de votre aide.

    Respectueusement.
     
  9. WebRankInfo
    WebRankInfo Admin
    Membre du personnel
    Inscrit:
    19 Avril 2002
    Messages:
    20 499
    J'aime reçus:
    626
    Faut prendre le pb dans l'autre sens et se demander en amont, quels genres de pages doivent être indexées.
    Je ne vois pas l'intérêt de faire une usine à gaz pour identifier après coup les pages à supprimer (sachant qu'elles n'auront peut-être jamais généré de clics).

    Que demandent (à Google) les internautes que tu vises ?
    Et donc, quels contenus tu dois proposer sur ton site ?
    Les as-tu créés ?

    voilà les questions à se poser. Le reste, ça peut t'occuper encore les 15 prochaines années...
     
    voyance apprécie ceci.
  10. mickou51
    mickou51 WRInaute discret
    Inscrit:
    8 Janvier 2016
    Messages:
    182
    J'aime reçus:
    20
    [​IMG]

    C'est tout de même un petit peu plus beau en jouant seulement 5 minutes avec la console


    Code:
    Ajouté:
    <div style="background: url(<l'image_du_cheval>);height: 750px;background-size:  cover;background-position-y:  center;">
      test
    </div>
    
    Modifié:
    div.blochaut {
        border: 0;
        font-size: 1.25em;
        font-weight: 400;
        padding: 0;
        width: 95%;
        position: absolute;
        top: 50%;
    }
    (la mauvaise qualité de l'image vient de la capture d'écran pour gif )
     
  11. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    3 485
    J'aime reçus:
    28
    Je ne comprend pas.

    Ce programme d'arbre n-aire est également destiné à ma future PWA, et j'amasse actuellement, les outils que j'utiliserai ( PWA ou site ).

    Pour ce qui est du contenu, mes visiteurs sont des obsessionnels, qui aiment les chiffres.

    J'ai à terme l'intention de voir avec un graphiste comment modifier mon site.

    Mon soft consistera **en amont**, à laisser ou non les pages se faire indexer.

    J'ai une façon de concevoir ce site/PWA, technique, car l'utilité réelle que j'y vois pour les visiteurs, est mon moteur statistique.

    A quoi servirait un site de Turf, si ses visiteurs ne gagnaient pas, ou moins que ses concurrents ?

    Mon approche pour le moment est technique, je dauberai après.

    Celà dit, peut-être que je fais une erreur en ne faisant pas tout de suite, appel à un graphiste.

    Peut-être faut-il soigner de la même façon l'extérieur et l'intérieur.

    Amicalement.
     
  12. voyance
    voyance WRInaute discret
    Inscrit:
    12 Mars 2020
    Messages:
    126
    J'aime reçus:
    12
    Malheureusement google est un obsessionnel du contenu (texte riche ...), donc tant que les problèmes SEO (les urls par exemple) et le contenu seront aussi pauvres il n y aura pas foule de visiteurs.

    Et pour les visiteurs (nouveaux) il faut un bon référencement. Ou alors seul les habitués comptent.

    Très joli Mickou l'image comme cela c'est bien plus vivant mais je pense que nous écrivons dans le vent .....
     
    mickou51 apprécie ceci.
  13. voyance
    voyance WRInaute discret
    Inscrit:
    12 Mars 2020
    Messages:
    126
    J'aime reçus:
    12
    Aussi, pourquoi des majuscules à tous les mots ?

    Statistiques Prévisionnelles
    Pronostics
    Historiques Graphiques
    Courses

    7 majuscules pour à peine deux ligne de texte dès l'accueil.
     
  14. ortolojf
    ortolojf WRInaute accro
    Inscrit:
    14 Août 2002
    Messages:
    3 485
    J'aime reçus:
    28
    Bon voilà.

    J'ai l'algorithme suffixe de parcours d'arbre n-aire.

    C'est pour deleter les fils avant les pères.

    Je vais me pencher sur l'application à evaluation.php ( H1 ... Hn ).

    D'abord, mapper le DOMDocument vers l'arbre n-aire.

    Merci beaucoup de votre aide.
     
  15. WebRankInfo
    WebRankInfo Admin
    Membre du personnel
    Inscrit:
    19 Avril 2002
    Messages:
    20 499
    J'aime reçus:
    626
    Je crois bien qu'on n'est pas dans la même planète, désolé mais là je ne peux plus aider.
     
  16. voyance
    voyance WRInaute discret
    Inscrit:
    12 Mars 2020
    Messages:
    126
    J'aime reçus:
    12
    j'ai le sentiment aussi que peu importe les remarques justes de certains, on crache dans la soupe ...
     
  17. voyance
    voyance WRInaute discret
    Inscrit:
    12 Mars 2020
    Messages:
    126
    J'aime reçus:
    12
Chargement...
Similar Threads - indexation arbre aire Forum Date
Demande d'indexation refusée Crawl et indexation Google, sitemaps 30 Septembre 2021
Problème d'indexation Google : que faire ? Crawl et indexation Google, sitemaps 21 Septembre 2021
WordPress Problème d'indexation de mon article Demandes d'avis et de conseils sur vos sites 19 Août 2021
Formulaire pour signaler des bugs d'indexation Google Crawl et indexation Google, sitemaps 17 Août 2021
problème lors de l indexation de mes fichiers Crawl et indexation Google, sitemaps 15 Août 2021
Problèmes - Indexation et Sitemap Problèmes de référencement spécifiques à vos sites 10 Août 2021
problème avec l indexation de mes fichiers Problèmes de référencement spécifiques à vos sites 8 Août 2021
"Forcer" l'indexation suite noindex Débuter en référencement 14 Juin 2021
Service d'indexation Crawl et indexation Google, sitemaps 31 Mai 2021
Search Console Problème d'indexation : Détectée, actuellement non indexée Référencement Google 16 Mai 2021