Reemplaçant paraules o etiquetes en tots els nodes d'una web Drupal amb Drush

Reemplaçant paraules o etiquetes en tots els nodes d'una web Drupal amb Drush

En aquest article explique com he reemplaçat al vol unes etiquetes que hi ha al cos dels articles de Drupal de manera.

Podria fer un mysqldump, generar-me una còpia .sql de la base de dades Drupal i després reemplaçar les etiquetes amb sed, però de vegades pot donar problemes, aleshores he decidit fer-ho amb Drush, la millor ferramenta per als desenvolupaments de projectes Drupal.

Aleshores, primer de tot instal·larem Drush amb:


composer require drush/drush

Ara vull reemplaçar "<code>" i "</code>" per l'etiqueta: "<pre><code>" i "</code></pre>"

Executarem el següent codi, que reemplaçarà al vol a tots els nodes:


./vendor/bin/drush php:eval '
$nids = \Drupal::entityQuery("node")->accessCheck(FALSE)->execute();
foreach ($nids as $nid) {
  $node = \Drupal\node\Entity\Node::load($nid);
  if ($node->hasField("body")) {
    $body = $node->get("body")->value;
    if (strpos($body, "") !== false && strpos($body, "
") === false) {
      $new_body = str_replace("", "
", $body);
      $new_body = str_replace("", "

", $new_body);
$node->get("body")->value = $new_body;
$node->save();
print "Actualitzat node $nid\n";
}
}
}
'

El resultat serà així:
reemplaçar cadenes de text en tots els nodes de Drupal

I ja tenim tots els nodes actualitzats.

Doncs bé això és tot, espere que trobes útil aquest article i que et motive a compartir els teus trucs, els teus coneixements i els teus experiments amb el Programari Lliure. Pensa-ho, va, que la Comunitat del Programari Lliure va creixent gràcies a la documentació, el disseny, la formació o la programació, sigues part de la Comunitat :-)

La cultura i la lliure circulació de les idees és l'arma més efectiva contra les dictadures del pensament i contra la ignorància.

Utilitats

NAVEGACIÓ SENSE RATOLÍ

- Tab següent enllaç.
- Shift+Tab anterior enllaç.
- Enter activa l'enllaç.
- Alt+esquerra anar arrere.

CONTRAST DE COLORS

Accessibilitat - Color Negre
Accessibilitat - Color Groc
Accessibilitat - Color Verd

Accessibilitat - Color Blau
Accessibilitat - Color Crema
Accessibilitat - Color Blanc

 

PORTADES ALTERNATIVES