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:
@@ -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";
|
||||
|
||||
@@ -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,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'],
|
||||
|
||||
Reference in New Issue
Block a user