From d5475ede8f0b729cda279be5afc6d1000c27a6c5 Mon Sep 17 00:00:00 2001 From: rafa Date: Mon, 22 Jun 2026 16:45:59 -0400 Subject: [PATCH] chore(sync): scripts ajustados para deploy a prod (staging wp-nuevo) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - autores_biblicos.php: 2ª pasada directa de reasignación de autor. - quitar_multimedia.php: #4 como fichero reutilizable. - trad_cats.php: quitado require_once con ruta local (wp eval-file ya carga WP). Sync a prod ejecutado y verificado: código + 440 lecturas + grupo D + 8 usuarios bíblicos + reasignación de autores y categorías. 0 fatales en las 5 portadas. Co-Authored-By: Claude Opus 4.8 --- scripts/autores_biblicos.php | 12 +++++++++++- scripts/quitar_multimedia.php | 14 ++++++++++++++ scripts/trad_cats.php | 1 - 3 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 scripts/quitar_multimedia.php diff --git a/scripts/autores_biblicos.php b/scripts/autores_biblicos.php index 9722b6c..1b780e1 100644 --- a/scripts/autores_biblicos.php +++ b/scripts/autores_biblicos.php @@ -37,4 +37,14 @@ foreach ([408,409] as $es_author) { } echo "ES autor $es_author: ".count($posts)." posts ES procesados\n"; } -echo "traducciones reasignadas de autor: $reasig\n"; +// 2ª pasada: cualquier post no-ES que aún tenga el autor bíblico ES → autor del idioma +$reasig2 = 0; +foreach ([408,409] as $es_author) { + foreach (['en','fr','it','pt'] as $L) { + if (empty($uid_map[$es_author][$L])) continue; + $ids = get_posts(['author'=>$es_author,'lang'=>$L,'post_type'=>'post', + 'post_status'=>['publish','draft'],'fields'=>'ids','posts_per_page'=>-1,'no_found_rows'=>true]); + foreach ($ids as $id) { wp_update_post(['ID'=>$id,'post_author'=>$uid_map[$es_author][$L]]); $reasig2++; } + } +} +echo "traducciones reasignadas de autor: $reasig (1ª) + $reasig2 (2ª directa)\n"; diff --git a/scripts/quitar_multimedia.php b/scripts/quitar_multimedia.php new file mode 100644 index 0000000..7727cbf --- /dev/null +++ b/scripts/quitar_multimedia.php @@ -0,0 +1,14 @@ +get_results("SELECT ID FROM {$wpdb->posts} WHERE post_type='post' AND post_status='publish' AND post_title REGEXP '[0-9]+, *[0-9]+(-[0-9]+)?\\.?$'"); +$feadulta=(int)$wpdb->get_var("SELECT term_id FROM {$wpdb->terms} WHERE name='Feadulta' LIMIT 1"); +$changed=0; +foreach($rows as $r){ + $cats=wp_get_post_categories($r->ID); + $new=array_values(array_diff($cats,$multi)); + if(count($new)!==count($cats)){ if(!$new)$new=[$feadulta]; wp_set_post_categories($r->ID,$new); $changed++; } +} +echo "lecturas con Multimedia eliminada: $changed\n"; diff --git a/scripts/trad_cats.php b/scripts/trad_cats.php index a817561..cb353a7 100644 --- a/scripts/trad_cats.php +++ b/scripts/trad_cats.php @@ -1,5 +1,4 @@ [en,fr,it,pt]) $D = [ 410 => ['Nuevo Testamento', 'New Testament','Nouveau Testament','Nuovo Testamento','Novo Testamento'],