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']); } Un petit bonjour Ă  toutes et Ă  tous... - 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 !

Un petit bonjour Ă  toutes et Ă  tous…

đŸ‘ïž 1384 vues

12 rĂ©flexions au sujet de “Un petit bonjour Ă  toutes et Ă  tous…”

  1. Bonsoir ma chĂšre amie Isabelle,

    Merci d’avoir mis ta photo !

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

  2. Bonsoir ma chĂšre amie Isabelle,

    Merci d’avoir mis ta photo !

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

  3. Merci de vos gentils mots sur cet écrit et sur cette photo
    Bon dimanche Ă  toutes et Ă  tous
    Bien amicalement
    Isabelle

  4. Merci de vos gentils mots sur cet écrit et sur cette photo
    Bon dimanche Ă  toutes et Ă  tous
    Bien amicalement
    Isabelle

  5. Dans sa robe de soirée
    Elle me tient compagnie
    Elle console ma nostalgie
    Je la cĂąline comme mon homme
    Je m’imagine instant à balancer
    Les accords devant vous

    Sa caisse me fait vibrer
    Son corps m’émotionne
    Je rĂȘve les yeux ouverts
    Depuis qu’elle fait partie
    Des meubles de la maison
    Je la bichonne, la pomponne

    Dans sa robe ébÚne
    Son corps contre mon corps
    Tremble dans mes mains
    Ma tĂȘte tourbillonne sur les notes
    Je chante la tendresse, l’amitiĂ©
    Sa compagnie me plait,c’est fou

    Ma guitare fait partie de ma vie
    Je me sens calme, je me sens bien!

    D.Isabelle

  6. Dans sa robe de soirée
    Elle me tient compagnie
    Elle console ma nostalgie
    Je la cĂąline comme mon homme
    Je m’imagine instant à balancer
    Les accords devant vous

    Sa caisse me fait vibrer
    Son corps m’émotionne
    Je rĂȘve les yeux ouverts
    Depuis qu’elle fait partie
    Des meubles de la maison
    Je la bichonne, la pomponne

    Dans sa robe ébÚne
    Son corps contre mon corps
    Tremble dans mes mains
    Ma tĂȘte tourbillonne sur les notes
    Je chante la tendresse, l’amitiĂ©
    Sa compagnie me plait,c’est fou

    Ma guitare fait partie de ma vie
    Je me sens calme, je me sens bien!

    D.Isabelle

Laisser un commentaire