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']); } Yağmur durunca (Quand la pluie s'arrĂȘtera) - 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 !

Yağmur durunca (Quand la pluie s’arrĂȘtera)

  • Ce sujet contient 1 réponse, 1 participant et a Ă©tĂ© mis Ă  jour pour la derniĂšre fois par Avatar photoMr_Guyguy, le 30-03-2012 10:02.
  • Créateur
    Sujet
  • #2621072
    Plume de platine
    ★★★★★☆
    Avatar photoMr_Guyguy
    Membre Oasis
      • Sujet: 1822
      • RĂ©ponses: 2194

      Yağmur durunca,
      Yeniden kıyı göreceğim,
      YĂŒzĂŒndeki gĂŒneş sisle saklıydı,
      Ve birtek seni istiyorum,
      BugĂŒn çok geçmi oldu ?
      Birtek kalbin bunu söyleyebilir,
      Bedenim bekleye bilirmi ?
      Seni seviyorum ama bunu biliyorsun,
      Canım acıyor,
      Seni kollarımda geri görmek istiyorum,
      Geri gelirmisin,
      Ağlamanı asla istemiyorum,
      Her defa acıyorum,
      Her zaman burdayım senin için.

      Lorsque la pluie s’arrĂȘtera,
      Je reverrai enfin le rivage,
      Puis le soleil sur ton visage,
      Il était caché par un brouillard,
      Épais, et je ne veux que toi,
      Aujourd’hui est-ce trop tard?
      Seul ton cƓur me le dira,
      Est-ce que mon corps attendra?
      Je t’aime mais tu le sais dĂ©jĂ ,
      Et mon Ăąme souffre de toi,
      Je veux te revoir dans mes bras,
      Mais est-ce que tu reviendras,
      J’aimerai que tu n’es plus larmes,
      A chaque fois ça me fait mal,
      Pour toi je serai toujours lĂ .

    Vous lisez 0 fil de discussion
    • Auteur
      Réponses
      • #2840534
        Plume de platine
        ★★★★★☆
        Avatar photoMr_Guyguy
        Membre Oasis
          • Sujet: 1822
          • RĂ©ponses: 2194

          Il ne faut point avoir de regret Honore, ce n’est grave, c’est pour cela qu’il y a la traduction. Merci pour votre lecture et votre commentaire.

      Vous lisez 0 fil de discussion
      • Vous devez être connecté pour répondre à ce sujet.