/* ====================== 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']); } belle de marilou - 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 !

belle de marilou

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

      bonjour eolienne et les membres d oasis des artistes

      elle n’a pas eu, de nomination depuis un an

      Nominés

      Nominés Je chante mes poÚmes
      18/1/2022 13:05:40
      Nominés Les amandiers
      5/4/2021 15:40:16
      Nominés Campagne automne/hiver
      16/9/2020 12:06:35
      __________________

      https://www.oasisdesartistes.org/modules/newbbex/viewtopic.php?viewmode=flat&topic_id=312684&forum=2

      Belle….

      Belle de nuit
      Danse dans les rues de Paris.
      Belle de jour
      Dort en rĂȘvant Ă  l’amour.

      Belle de nuit s’enivre de la vie,
      Belle de jour ,larmes d’un cƓur si lourd.

      Dans ses nuits ,elle est lumiĂšre.
      Elle s’amuse , belle aventuriĂšre.
      Elle sait qu’Ă  la fin de sa nuit,
      La solitude reviendra sans un bruit.

      Belle de nuit s’enivre de la vie ,
      Belle de jour, larmes d’un cƓur si lourd.

      A l’aube quand les chats s’enfuient,
      Elle s’endort seule dans son lit.
      Le drap recouvre son corps fatigué
      D’avoir dansĂ© pour essayer d’oublier.

      Belle de nuit s’enivre de la vie,
      Belle de jour,larmes d’un cƓur si lourd.

      Oublier qu’elle ne sait pas aimer
      Qu’elle sera seule Ă  jamais;
      Alors dans ses nuits ,elle oublie
      L’amertume de sa triste vie.

      MM 2023

      je vais créer image

      [url=https://zupimages.net/viewer.php?id=23/38/fvds.jpg][/url]

      l'Amour rayonne quand l'Ame s'?l?ve, citation maryjo
    Vous lisez 5 fils de discussion
    • Auteur
      Réponses
      • #3469277
        Webmaster
        Avatar photoeolienne
          • Sujet: 1579
          • RĂ©ponses: 57414
        • #3469294
          Plume de diamant
          ★★★★★★
          Avatar photocyrael
          Membre Oasis
            • Sujet: 14564
            • RĂ©ponses: 136022

            bonjour EOLIENNE et tous les membres, ( je ne cache pas ma maladie )

            je suis trĂšs peu en forme,
            mais , c ‘est normal , avec mes chimios
            j’ai des nausĂ©es jour et nuit
            il me reste dix jours de cachets matin et soir
            a prendre

            je repasse sous peu de temps, Ă  toulouse Ă  l’Oncopole pour
            controle, mais helas, au lieu d’une seule mĂ©tastase
            avec le covid , —–je n’ai pas pu aller Ă  toulouse
            pour aller me faire opĂ©rer, par radio frĂ©quence…

            à présent,
            sur les radios — pet scan — c’est examen trĂšs prĂ©cis,
            on a vu –6 mĂ©tastases cancĂ©reuses. dans les deux poumons ;
            j’ai du mal Ă  respirer…

            je ne suis pas dans la plainte, je déteste gémir..

            j’ai de la chance par rapport Ă  tant de malades
            dans le monde entier,d’ ĂȘtre suivie depuis 2O16
            aprÚs avoir été opérée cancer du colon ( qui va tres bien )
            je ne mange pas de viande, mais le destin est cruel

            je vous souhaite Ă  tous,

            Joli et bel Automne,

            l'Amour rayonne quand l'Ame s'?l?ve, citation maryjo
          • #3469297
            Webmaster
            Avatar photoeolienne
              • Sujet: 1579
              • RĂ©ponses: 57414
            • #3469321
              Plume de diamant
              ★★★★★★
              Avatar photocyrael
              Membre Oasis
                • Sujet: 14564
                • RĂ©ponses: 136022

                merc i pour la nomination de cette jeune dame

                je vous souhaite surtout bonne santé
                sans elle, on ne pourra plus faire de projets,

                merci eolienne pour ton soutien et ton amitié

                __ surtout préserve toi, de tout, dans ce monde ou

                la violence est bien rĂ©elle, on n’a jamais connu çà depuis
                des années, mais , nous sommes tous concernés, par ce manque
                de respect, vis Ă  vis de toute vie..

                merci , bisous

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

                  Bonsoir ma chĂšre amie Maryjo,

                  Je suis de tout coeur avec toi depuis tant d’annĂ©es.
                  Je ne trouve plus les mots sinon que je t’offre tout mon soutien.
                  Mon amitié, tu sais que tu la possÚdes depuis bien longtemps.

                  Je t’envoie pleins d’ondes positives et de douces pensĂ©es.
                  Avec toute mon amitié.

                  Douce soirée Maryjo !
                  Gros gros bisous
                  Sybilla

                  Le r?ve est le poumon de ma vie (Citation de Sybilla)
                • #3469756
                  Plume de diamant
                  ★★★★★★
                  Avatar photocyrael
                  Membre Oasis
                    • Sujet: 14564
                    • RĂ©ponses: 136022


                    merci …

                    pour elle ___

                    joli jour Ă  tous !

                    _______

                    ne soyez pas tristes , Ă  chacune ses batailles…

                    je deteste les plaintes..

                    VIVE la vie …

                    j ‘aime vivre partager , donner ce que j ‘ai reçu , l’Amour
                    de mes parents et ma famille

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