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']); } plaisir - 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 !

plaisir

  • Ce sujet contient 2 réponses, 2 participants et a Ă©tĂ© mis Ă  jour pour la derniĂšre fois par Avatar photoSybilla, le 07-12-2023 19:54.
  • Créateur
    Sujet
  • #2707458
    Plume de diamant
    ★★★★★★
    Avatar photocyrael
    Membre Oasis
      • Sujet: 14564
      • RĂ©ponses: 136022

      THAIEVA

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

      pas de nomination en décembre

      mais je peux me tromper

      bon jour

      je propose

      ce poĂšme

      https://www.oasisdesartistes.org/modules/newbbex/viewtopic.php?viewmode=flat&topic_id=316287&forum=2
      JE CHERCHE IMAGE

      PLAISIR

      En novembre, décembre je suis triste
      J’allume ma chaüne Hifi,
      J’écoute Albinoni, Bach, Mozart
      En cuisinant pour mes fils un délicat repas.

      Cela me rend heureuse de confectionner
      Pour l’anniversaire de l’un d’entre eux des mets
      Lesquels je sais seront trÚs appréciés
      Et « amour » de les voir ensemble discuter 


      La musique m’accompagne, si importante dans ma vie
      En toutes circonstances, elle me réjouit,
      M’apporte beaucoup de plaisir
      Seule, mes fils me donnent encore l’envie de vivre.

      Thaieva, le 07/12/23

      l'Amour rayonne quand l'Ame s'?l?ve, citation maryjo
    Vous lisez 1 fil de discussion
    • Auteur
      Réponses
      • #3483919
        Plume de diamant
        ★★★★★★
        Avatar photocyrael
        Membre Oasis
          • Sujet: 14564
          • RĂ©ponses: 136022

          bonjour

          bisous FRANIE

          MERCI A TOUS

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

            Bonsoir ma chĂšre amie Maryjo,

            Excellent choix !

            Belle soirée chÚre amie poétesse Maryjo !
            Toutes mes amitiés
            Gros bisous
            Sybilla

            Le r?ve est le poumon de ma vie (Citation de Sybilla)
        Vous lisez 1 fil de discussion
        • Vous devez être connecté pour répondre à ce sujet.