Odkryłem moduł Usuń wszystko , który umożliwia usunięcie wszystkich węzłów danego typu zawartości. Jednak w tym module nie można usunąć pojedynczego węzła ani listy węzłów.
W pytaniu „ Czy mogę usunąć węzły danego typu zawartości za pomocą Drush? ” Znalazłem 2 odpowiedzi mówiące o poleceniu, drush node_delete <nid>
ale nie mogę znaleźć tego polecenia.
W dyskusji na temat node_delete () znalazłem trochę kodu używającego eval do wykonania tego zadania, ale używa eval:
drush php-eval "global \$user; \$user = user_load(1); node_delete(nid);"
W przypadku, gdy nie ma zaimplementowanej funkcjonalności pozwalającej to osiągnąć, jaki jest lepszy sposób na wdrożenie tej funkcjonalności: w module Drush lub utworzyć nowy moduł?
drush entity-delete
polecenia, powinien w tym momencie użyć wersji deweloperskiej modułu DrushWreszcie tworzę własny moduł o nazwie
drush_delete
W
drush_delete.drush.inc
pliku umieść ten kod:Zainstaluj moduł, uruchom,
drush cc drush
aby wyczyścić pamięć podręczną drush i użyj następującego polecenia:Aby usunąć węzeł, użyj:
Aby usunąć wiele węzłów, użyj:
Możesz znaleźć polecenie w tym module:
https://github.com/adrian-cid/drush_commands
źródło
IMHO najprościej jest z php-eval:
...
źródło