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']); } The small pains - 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 !

The small pains

  • Ce sujet contient 1 réponse, 1 participant et a Ă©tĂ© mis Ă  jour pour la derniĂšre fois par Avatar photoYfig, le 15-08-2011 09:18.
  • Créateur
    Sujet
  • #2616795
    Plume de soie
    ★★☆☆☆☆
    Avatar photoYfig
      • Sujet: 69
      • RĂ©ponses: 65

      [size=large][color=990033][font=Verdana]The small pains [/font][/color][/size]

      Ah pain the navel
      And migraine misery
      Very volatile Scriptas
      In liberty barren
      On the shelf I wander
      Medicines offered

      To the so subtle reflections
      In deleterious steams
      Of the outrageous babble
      Toward my jail transfer
      My pains free themselves
      I have too much suffered so much

      Thanks to the juice of barrel
      Rimbaud-Apollinaire
      Sharpened tools
      To become some of verse
      I will be your muse-mother
      If you my poet-glass

      Twill in it’s curtain
      In the urn green bulletin
      Blue-sky colour parsley
      But as muzzle
      Barbed sons of iron
      There is our universe

      Plural in exile
      Libertarian lover
      Olfactory your slag heap
      When its magic operates
      Adieu world torturer
      So much concentrationnary

      Ah pain the navel
      And migraine misery
      Very volatile Scriptas
      In liberty err
      On the shelf I wander
      Médicines offered

    Vous lisez 0 fil de discussion
    • Auteur
      Réponses
      • #2813782
        Plume de soie
        ★★☆☆☆☆
        Avatar photoYfig
          • Sujet: 69
          • RĂ©ponses: 65

          Bonjour Bouclier,
          pardon pour le retard à répondre, je ne suis pas encore bien accoutumé.

          C’est un petit poĂšme surrĂ©aliste, il ne faut pas se fier au titre, c’est plutĂŽt une tentative de jeux de mots en anglais, ça joue sur les mots, les sonoritĂ©s et les sens ….. mais ce n’est pas dit que ça plaise Ă  tout le monde

          Merci pour le commentaire
          Amicalement

          Et voici la traduction :

          [b][size=large] Les petits maux [/size][/b]

          Ah bobo le nombril
          Et migraine misĂšre
          Scripta trĂšs volatils
          En liberté déshÚrent
          Sur l’étagĂšre j’erre
          Médica-maux offerts

          Aux pensées si subtiles
          En vapeurs délétÚres
          De l’outrageant babil
          Vers ma prison transfert
          Mes maux se libĂšrent
          J’ai tel’ment trop souffert

          GrĂące au jus de baril
          Rimbaud-Apollinaire
          Affûtaient des outils
          En devenir de vers
          Serai-je ta muse-mĂšre
          Si toi mon poĂšte-verre

          Courtier en son courtil
          Dans l’urne bulletin vert
          Bleu-ciel couleur persil
          Mais aussi museliĂšre
          Barbelés fils de fer
          VoilĂ  notre univers

          Plurielle-seule en exil
          Amoureuse libertaire
          Olfactif ton terril
          En sa magie opĂšre
          Adieu monde tortionnaire
          Si tant concentrationnaire

          Ah bobo le nombril
          Et migraine misĂšre
          Scripta trĂšs volatils
          En liberté déshÚrent
          Sur l’étagĂšre j’erre
          Médica-maux offerts

          Yfig

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