/* ====================== REPLIES + CONTENT (OPTIMISÉ) ====================== */ private function migrateReplies(){ global $wpdb; // đŸ”č dernier topic WP traitĂ© $last_topic_wp = (int) $this->getLast_Topic(); // ====================== // STEP 1 : batch topics WP // ====================== $topic_rows = $wpdb->get_results($wpdb->prepare(" SELECT p.ID AS wp_topic_id, pm.meta_value AS xoops_topic_id FROM {$wpdb->posts} p JOIN {$wpdb->postmeta} pm ON pm.post_id = p.ID AND pm.meta_key = 'bbex_topic_id' WHERE p.post_type = 'topic' AND p.ID > %d ORDER BY p.ID ASC LIMIT 2000 ", $last_topic_wp)); if(!$topic_rows){ $this->log('🏁 REPLIES DONE → plus aucun topic WP Ă  traiter'); update_option('bbex_replies_done', 1, false); return; } // ====================== // BUILD MAP // ====================== $topic_map = []; $xoops_topic_ids = []; foreach($topic_rows as $t){ $topic_map[(int)$t->xoops_topic_id] = (int)$t->wp_topic_id; $xoops_topic_ids[] = (int)$t->xoops_topic_id; } $ids_sql = implode(',', $xoops_topic_ids); $this->log("🔄 REPLIES BATCH START"); $this->log("WP topics batch: " . count($topic_rows)); $this->log("XOOPS topics batch: " . count($xoops_topic_ids)); $this->log("XOOPS range: " . (min($xoops_topic_ids) ?? 0) . " → " . (max($xoops_topic_ids) ?? 0)); // ====================== // STEP 2 : GET POSTS // ====================== $posts = $wpdb->get_results(" SELECT p.post_id, p.topic_id AS xoops_topic_id, p.uid, p.pid, p.post_time, pt.post_text FROM {$this->getTable('posts')} p JOIN {$this->getTable('posts_text')} pt ON pt.post_id = p.post_id WHERE p.topic_id IN ($ids_sql) ORDER BY p.post_id ASC "); if(!$posts){ $max_wp_topic = max(array_column($topic_rows, 'wp_topic_id')); $this->setLast_Topic($max_wp_topic); $this->log("⚠ Aucun post trouvĂ©"); $this->log("âžĄïž Skip batch → last_topic_wp=$max_wp_topic"); return; } // ====================== // STATS // ====================== $inserted = 0; $skipped = 0; $updated = 0; $total = count($posts); $i = 0; // ====================== // PROCESS // ====================== foreach($posts as $p){ $i++; // đŸ”č progression % if($i % 200 === 0 || $i === $total){ $pct = round(($i / $total) * 100, 2); $this->log("⏳ Progress replies: $i/$total ($pct%) | inserted=$inserted skipped=$skipped updated=$updated"); } // user check if(empty($this->user_map[$p->uid])){ $skipped++; continue; } $wp_tid = $topic_map[(int)$p->xoops_topic_id] ?? 0; if(!$wp_tid){ $skipped++; continue; } // ====================== // MAIN TOPIC POST → CONTENT // ====================== if($p->pid == 0){ $wpdb->query($wpdb->prepare(" UPDATE {$wpdb->posts} SET post_content = IF(post_content = '', %s, post_content) WHERE ID = %d ", $p->post_text, $wp_tid)); $updated++; continue; } // ====================== // ANTI DOUBLON (IMPORTANT FIX) // ====================== $exists = $wpdb->get_var($wpdb->prepare(" SELECT 1 FROM bbex_post_lookup WHERE xoops_post_id = %d AND type = 'reply' LIMIT 1 ", $p->post_id)); if($exists){ $skipped++; continue; } // ====================== // INSERT REPLY // ====================== $wpdb->insert($wpdb->posts, [ 'post_author' => $this->user_map[$p->uid], 'post_date' => date('Y-m-d H:i:s', $p->post_time), 'post_content' => $p->post_text, 'post_status' => 'publish', 'post_type' => 'reply', 'post_parent' => $wp_tid ]); $rid = (int) $wpdb->insert_id; if(!$rid){ $skipped++; continue; } $inserted++; // meta topic $wpdb->insert($wpdb->postmeta,[ 'post_id' => $rid, 'meta_key' => '_bbp_topic_id', 'meta_value' => $wp_tid ]); // forum $forum_id = $wpdb->get_var($wpdb->prepare(" SELECT post_parent FROM {$wpdb->posts} WHERE ID = %d ", $wp_tid)); if($forum_id){ $wpdb->insert($wpdb->postmeta,[ 'post_id' => $rid, 'meta_key' => '_bbp_forum_id', 'meta_value' => $forum_id ]); } // lookup $wpdb->query($wpdb->prepare(" INSERT INTO bbex_post_lookup (xoops_post_id, wp_post_id, type) VALUES (%d, %d, 'reply') ON DUPLICATE KEY UPDATE wp_post_id = wp_post_id ", $p->post_id, $rid)); } // ====================== // SAVE PROGRESSION // ====================== $max_wp_topic = max(array_column($topic_rows, 'wp_topic_id')); $this->setLast_Topic($max_wp_topic); // ====================== // FINAL LOG // ====================== $this->log("===================================="); $this->log("🏁 REPLIES BATCH FINISHED"); $this->log("📊 total=$total | inserted=$inserted | updated=$updated | skipped=$skipped"); $this->log("âžĄïž last_topic_wp=$max_wp_topic"); $this->log("===================================="); } add_action('init', function(){ if(!isset($_GET['bbex_batch_sans_mirror'])) return; if($_GET['bbex_batch_sans_mirror'] !== 'run') return; if(!isset($_GET['key']) || $_GET['key'] !== 'oasis-cron'){ die('clĂ© invalide'); } $migration = new BBExBatchMigration(); $migration->setSource('live'); $migration->run(); echo "Batch LIVE exĂ©cutĂ©"; exit; });private function migrateReplies(){ global $wpdb; // đŸ”č dernier topic WP traitĂ© pour les replies $last_topic_wp = (int) $this->getLast_Topic(); // STEP 1 : batch topics WP $topic_rows = $wpdb->get_results($wpdb->prepare(" SELECT p.ID AS wp_topic_id, pm.meta_value AS xoops_topic_id FROM {$wpdb->posts} p JOIN {$wpdb->postmeta} pm ON pm.post_id = p.ID AND pm.meta_key = 'bbex_topic_id' WHERE p.post_type = 'topic' AND p.ID > %d ORDER BY p.ID ASC LIMIT 2000 ", $last_topic_wp)); if(!$topic_rows){ $this->log('🏁 REPLIES DONE → plus aucun topic WP Ă  traiter'); update_option('bbex_replies_done', 1, false); return; } // BUILD MAP $topic_map = []; $xoops_topic_ids = []; foreach($topic_rows as $t){ $topic_map[(int)$t->xoops_topic_id] = (int)$t->wp_topic_id; $xoops_topic_ids[] = (int)$t->xoops_topic_id; } $ids_sql = implode(',', $xoops_topic_ids); $this->log("🔄 REPLIES BATCH START"); $this->log("WP topics batch: " . count($topic_rows)); $this->log("XOOPS topics batch: " . count($xoops_topic_ids)); $this->log("XOOPS range: " . (min($xoops_topic_ids) ?? 0) . " → " . (max($xoops_topic_ids) ?? 0)); // STEP 2 : GET POSTS (LIVE XOOPSEOL) $posts = $wpdb->get_results(" SELECT p.post_id, p.topic_id AS xoops_topic_id, p.uid, p.pid, p.post_time, pt.post_text FROM {$this->getTable('posts')} p JOIN {$this->getTable('posts_text')} pt ON pt.post_id = p.post_id WHERE p.topic_id IN ($ids_sql) ORDER BY p.post_id ASC "); if(!$posts){ $max_wp_topic = max(array_column($topic_rows, 'wp_topic_id')); $this->setLast_Topic($max_wp_topic); $this->log("⚠ Aucun post trouvĂ©"); $this->log("âžĄïž Skip batch → last_topic_wp=$max_wp_topic"); return; } $inserted = 0; $skipped = 0; $updated = 0; $total = count($posts); $i = 0; foreach($posts as $p){ $i++; if($i % 200 === 0 || $i === $total){ $pct = round(($i / $total) * 100, 2); $this->log("⏳ Progress replies: $i/$total ($pct%) | inserted=$inserted skipped=$skipped updated=$updated"); } // user check if(empty($this->user_map[$p->uid])){ $skipped++; continue; } $wp_tid = $topic_map[(int)$p->xoops_topic_id] ?? 0; if(!$wp_tid){ $skipped++; continue; } // MAIN TOPIC POST → CONTENT if($p->pid == 0){ $wpdb->query($wpdb->prepare(" UPDATE {$wpdb->posts} SET post_content = IF(post_content = '', %s, post_content) WHERE ID = %d ", $p->post_text, $wp_tid)); $updated++; continue; } // ANTI DOUBLON $exists = $wpdb->get_var($wpdb->prepare(" SELECT 1 FROM bbex_post_lookup WHERE xoops_post_id = %d AND type = 'reply' LIMIT 1 ", $p->post_id)); if($exists){ $skipped++; continue; } // INSERT REPLY $wpdb->insert($wpdb->posts, [ 'post_author' => $this->user_map[$p->uid], 'post_date' => date('Y-m-d H:i:s', $p->post_time), 'post_content' => $p->post_text, 'post_status' => 'publish', 'post_type' => 'reply', 'post_parent' => $wp_tid ]); $rid = (int) $wpdb->insert_id; if(!$rid){ $skipped++; continue; } $inserted++; // meta topic $wpdb->insert($wpdb->postmeta,[ 'post_id' => $rid, 'meta_key' => '_bbp_topic_id', 'meta_value' => $wp_tid ]); // forum $forum_id = $wpdb->get_var($wpdb->prepare(" SELECT post_parent FROM {$wpdb->posts} WHERE ID = %d ", $wp_tid)); if($forum_id){ $wpdb->insert($wpdb->postmeta,[ 'post_id' => $rid, 'meta_key' => '_bbp_forum_id', 'meta_value' => $forum_id ]); } // lookup $wpdb->query($wpdb->prepare(" INSERT INTO bbex_post_lookup (xoops_post_id, wp_post_id, type) VALUES (%d, %d, 'reply') ON DUPLICATE KEY UPDATE wp_post_id = wp_post_id ", $p->post_id, $rid)); } $max_wp_topic = max(array_column($topic_rows, 'wp_topic_id')); $this->setLast_Topic($max_wp_topic); $this->log("===================================="); $this->log("🏁 REPLIES BATCH FINISHED"); $this->log("📊 total=$total | inserted=$inserted | updated=$updated | skipped=$skipped"); $this->log("âžĄïž last_topic_wp=$max_wp_topic"); $this->log("===================================="); } if(isset($_GET['source'])){ $migration->setSource($_GET['source']); } bonjour - Oasis des Artistes. Le plus beau site de poĂ©sie

Oasis des Artistes. Le plus beau site de poésie

Oasis des artistes: PoĂ©sie en ligne, Concours de poĂšmes en ligne – membres !

bonjour

  • Ce sujet contient 5 réponses, 4 participants et a Ă©tĂ© mis Ă  jour pour la derniĂšre fois par Avatar photocyrael, le 11-09-2023 11:08.
  • Créateur
    Sujet
  • #2704928
    Plume de diamant
    ★★★★★★
    Avatar photocyrael
    Membre Oasis
      • Sujet: 14564
      • RĂ©ponses: 136022

      bonjour

      suite au message de monsieur chibani
      dans partages Oasiens

      je suis touchée ,

      je n’ai plus __envie d’Ă©crire de poĂšme ___si__ je rĂ©agis comme lui__
      c’est _____fini…

      ___j’ai Ă©tĂ© comme vous le savez, plagiĂ©e
      je n’ai besoin de____personne, pour me dĂ©fendre, ____
      j’ai pardonnĂ©, __ je suis restĂ©e__ dans le site___

      mon amie__ daniele BENINO__ a été plagiée ici, mais_ elle a quitté_ le site oasis!

      _________PS____________

      Je ne dĂ©sire___pas___ aprĂšs tant d’annĂ©es de souffrance Ă  lutter contre cancer

      qu’on mette dans __oasis ____ un HOMMAGE Ă __ CYRAEL____

      c’est ma VOLONTE…merci de la____ respecter !

      tous mes amies amis
      pourront Ă©crire un poĂšme Ă  maryjo, bien sur, car l’amitiĂ© vraie demeure bien au de lĂ  de la mort..

      remerciements, gratitude..

      l'Amour rayonne quand l'Ame s'?l?ve, citation maryjo
    Vous lisez 4 fils de discussion
    • Auteur
      Réponses
      • #3466755
        Mascotte d'Oasis
        Avatar photoluzdelsol
        Membre Oasis
          • Sujet: 6731
          • RĂ©ponses: 48018

          Ton message m ‘attriste mon amie
          Tu dois accepter que l’on te rende hommage maryjo.
          Oasis te dois bien cela , ce sera une juste reconnaissance pour la belle personne et la poétesse extraordinaire que tu es mon amie .
          Accepte avec humilitĂ© que l’on t ‘honore Maryjo tu le mĂ©rite tant.
          Ne nous prive pas de ces adieux.
          Le plus tard possible bien sur et puis qui partira la premiĂšre , nul ne le sait?…

          En ce qui me concerne , chacun fera comme il veut si c’est sincĂšre .

          Sphyria à tout exprimé bien mieux que moi et je suis d accord avec chacun de ses mots. Merci à elle

          Je t’embrasse trĂšs fort ma sƓur de cƓur

          Bises de Luz

          Les gens vivent comme s'ils n'allaient jamais mourir... Et meurent comme s'ils n'avaient jamais vécu. Le Dalai Lama . Nul ne peut atteindre l'aube sans passer par le chemin de la nuit? Khalil Gibran
        • #3466764
          Plume de diamant
          ★★★★★★
          Avatar photocyrael
          Membre Oasis
            • Sujet: 14564
            • RĂ©ponses: 136022

            Sphyria, Marie Luz del Sol, mes amies, Eolienne et tous les membres d’oasis

            sensible , vos mots me touchent le coeur !

            j’ai vu disparaitre mes amies emportĂ©es
            par ce cancer. Daniele une amie venue de Gaspésie canada
            dix ans de lutte, rémission,__ elle a laché ma main en Juin 2O23___
            depuis, ce jour, c ‘est grand silence…imposĂ© par sa disparition

            je suis terrassĂ©e .c’Ă©tait une .. amitiĂ© scellĂ©e__ 2OO5 / 2O23…

            Nous sommes mortels, demain ___est___ l’inconnu..

            je reste ce jour, décidée à ne pas Figurer.. dans les hommages aux poÚtes
            disparus..

            seul le temps qui vient, me dira si je dois rester ..ferme dans mes derniÚres volontés..

            merci , Ă  vous..

            l'Amour rayonne quand l'Ame s'?l?ve, citation maryjo
          • #3466793
            Administratrice
            Avatar photoSybilla
            Maßtre des clés
              • Sujet: 17798
              • RĂ©ponses: 198089

              Bonsoir ma chĂšre amie Maryjo,

              Pour ma part, ton message m’attriste extrĂȘmement Ă©galement.
              Car bien entendu, ce serait plus que mérité !
              Tu es un des pilliers d’Oasis des artistes et tu t’es toujours montrĂ© si gĂ©nĂ©reuse envers toutes et tous !

              Cela me donne des larmes aux yeux en lisant ton message…

              Tu seras auprĂšs de nous longtemps encore ma chĂšre amie Maryjo.

              Je t’envoie pleins de douces pensĂ©es amicales et chaleureuses.

              Passe une trÚs douce soirée !
              Je t’embrasse trĂšs fort et affectueusement
              Ton amie Sybilla

              Le r?ve est le poumon de ma vie (Citation de Sybilla)
            • #3466811
              Plume de diamant
              ★★★★★★
              Avatar photoMICKAELLE
              Membre Oasis
                • Sujet: 2353
                • RĂ©ponses: 32108

                je viens de lire ce message par lequel tu ne veux pas d’honneur s’il t’arrivait quelque chose!!!!!!!!!!!!!!!!!!!!

                je ne sais quoi dire tellement ça me surprend…………..toi qui mĂ©rites tant d’en avoir………..

                j’espĂšre que tu reviendras sur ta dĂ©cision, et que tu resteras encore longtemps parmi nous sur le site, personne ne sait quand sera sa derniĂšre heure, je comprends que tu ne veux pas d’hypocrisie……………que tu aies Ă©tĂ© blessĂ©e par certains plagiats sur certains de tes poĂšmes, mais tout ça, c’est derriĂšre, il faut regarder devant…………….mĂȘme si c’est pas facile…………

                il faut continuer Ă  inonder le site de tes beaux Ă©crits……….et ne pas nous enlever ce plaisir.
                il y a beaucoup de vrais amis et amies sur ce site, il ne faut s’intĂ©resser qu’Ă  eux, et laisser les vieilles rancoeurs au vestiaire….ça n’apporte rien de bon………… je pense faire partie de tes vrais amies………………je te fais plein de bisous………..

              • #3466901
                Plume de diamant
                ★★★★★★
                Avatar photocyrael
                Membre Oasis
                  • Sujet: 14564
                  • RĂ©ponses: 136022

                  merci à tous, bien sur, je suis touchée, mon coeur est ému, en vous lisant

                  ______________________________

                  je vais maintenir ma décision ne pas figurer dans

                  HOMMAGES si demain je m’en vais, rejoindre mes chers disparus

                  merci de respecter ma volonté

                  _______________

                  Il y a trop de gens qui vont vouloir comme chibani
                  remuer des histoires anciennes,___ je trouve déplacé, cette façon de
                  critiquer un poÚte décédé, il ne pourra pas se défendre !

                  CĂ  me ___blesse ___car je me positionne Ă  la place de la femme
                  et des enfants du mort, pour eux c ‘est horrible…

                  meme si Chibani a raison, il aurait pu écrire ce message quand
                  John Kerber était en vie..

                  Ainsi, le poĂšte JK aurait pu nous donner sa version,
                  qu’elle soit vraie ou fausse…

                  _____________________________________________________

                  bon lundi Ă  tous, pensons Ă  nos soeurs frĂšres du maroc
                  qui souffrent

                  l'Amour rayonne quand l'Ame s'?l?ve, citation maryjo
              Vous lisez 4 fils de discussion
              • Vous devez être connecté pour répondre à ce sujet.