chore(sync): scripts ajustados para deploy a prod (staging wp-nuevo)

- 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 <noreply@anthropic.com>
This commit is contained in:
2026-06-22 16:45:59 -04:00
parent 70831f13f0
commit d5475ede8f
3 changed files with 25 additions and 2 deletions
+11 -1
View File
@@ -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";
+14
View File
@@ -0,0 +1,14 @@
<?php
// #4: quita la categoría Multimedia (1649 + traducciones) de los posts-lectura.
$multi=[1649];
foreach(["en","fr","it","pt"] as $L){ $t=pll_get_term(1649,$L); if($t)$multi[]=(int)$t; }
global $wpdb;
$rows=$wpdb->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";
-1
View File
@@ -1,5 +1,4 @@
<?php
require_once '/var/www/html/wp-load.php';
// Categorías estructurales de contenido → traducciones (es_term_id => [en,fr,it,pt])
$D = [
410 => ['Nuevo Testamento', 'New Testament','Nouveau Testament','Nuovo Testamento','Novo Testamento'],