Am făcut recent upgrade la Drupal 9.3.0 folosind un aspect al fișierului Composer. Site-ul web rezultat funcționează corect și rulează acum în domeniul de publicare. Avem un set de utilitare pe care le rulăm ca scripturi Drush. Una dintre acestea anulează publicarea conținutului pe care nu vrem să îl găsească Google și alte motoare de căutare -- încă.
M-am mutat în directorul care conține composer.json -- un nivel deasupra webroot-ului. am fugit compozitorul necesită drush/drush
care a adăugat "drush/drush": "^11.0",
la composer.json și a actualizat directorul furnizorului în consecință. Apoi am creat un mic script php pentru a anula publicarea unui nod -- numit x.php:
<?php
utilizați Drupal\node\Entity\Node;
imprimați „Sus\n”;
$node = Nod::load('1881');
$nod->setPublished(FALSE);
$nod->salvare();
imprimați „Bot\n”;
am fugit furnizor/drush/drush/drush scr x.php
. Scriptul rulează fără eroare și imprimă „Top” și „Bot” așa cum era de așteptat. Cu toate acestea, rularea acestui comend Did Not unpublish nid = 1881. Am rulat comanda din nou cu -d
comutator care mi-a dat o mulțime de rezultate -- dar nici un mesaj de eroare cu care să lucrez. Am verificat error_log pentru site - nimic. am adaugat un var_dump($nod);
după $node = Nod::load('1881');
și poate vedea că nodul este încărcat.
Trebuie să anulez publicarea a peste 700 de noduri și nu vreau să fac asta manual. Ceva sugestii despre cum să procedați?