Jak skonfigurować eksport węzła do eksportu węzła masowego?
25
Próbuję eksportu węzłów do eksportu węzłów masowych, ale wydaje się, że muszę wybrać każdy węzeł, aby eksportować osobno.
Co jeśli chcę wyeksportować wszystkie węzły wybranego typu treści? Czy jest jakiś sposób, aby to zrobić w Node Export, czy powinienem znaleźć inny moduł?
$ drush help ne-exportExport nodes usingNodeexport.Arguments:
nids : A list of space-separated node IDs to export.Options:--file :The filename of the output file.If supplied, the node code will be
exported to that file, otherwise it will export to stdout.--format :If supplied, node code will be output using a particular export
format,if available.(e.g. serialize)--status :Filterfor'status'; A boolean value (0or1) indicating whether
the node is published (visible to non-administrators).--promote :Filterfor'promote'; A boolean value (0or1) indicating whether
the node should be displayed on the front page.--sticky :Filterfor'sticky'; A boolean value (0or1) indicating whether
the node should be displayed at the top of lists in which it appears.--translate :Filterfor'translate'; A boolean value (0or1) indicating
whether the node translation needs to be updated.--language :Filterfor'language';The language code (e.g. de or en-US) of
this node.--type :Filterfor'type';The machine-readable name (e.g. story or page) of
the type of this node.--sql :Filterby SQL (EXPERIMENTAL);An SQL query string that returns nids
(e.g."SELECT nid FROM nodes WHERE nid < 10").--code :Filterby PHP code (EXPERIMENTAL); PHP code that prints or returns,
an array or CSV string of nids (e.g."custom_get_my_nids();").Don't include PHP
tags.
Na przykład,
drush ne-export--type=article --file=article.txt
wypisze wszystkie węzły artykułu do article.txt w formacie serializowanym. Następnie możesz użyć drush, aby je zaimportować:
$ drush help ne-importImport nodes previously exported withNodeexport.Arguments:Options:--uid :User ID of user to save nodes as.Ifnot given will use the user with
an ID of 1.You may specify 0for the Anonymous user.--file :The filename of the input file.If supplied, the node code will be
imported from that file, otherwise it will import to stdin.
Dzięki, ale czy jest to odpowiednie dla dużej liczby węzłów (> 1000)?
Codium
Teoretycznie tak, jeśli dasz PHP wystarczającą ilość pamięci i ustawisz dość długi czas wykonania. Myślę, że ostatnim razem, gdy to zrobiłem, miałem setki węzłów, może blisko tysiąc.
mpdonadio
Dzięki jeszcze raz. Oto więcej informacji drupal.org/node/1681584 . Spróbuję też Eksportować dane wyświetlenia
Codium
1
gdzie wynik wyeksportowany plik przechowywany na twardym dysku podczas korzystania z polecenia Drush?
Ahmad Zain
2
@AhmadZain Dane wyjściowe są przechowywane w dowolnym miejscu. Powyższe polecenie powinno przechowywać plik w tym samym miejscu, z którego uruchomiono polecenie.
mpdonadio
5
Możesz przejść do listy całej zawartości na stronach administracyjnych Drupala (/ admin / content w D7), następnie filtrować według typu zawartości, następnie wybierać wszystkie, a następnie z menu rozwijanego wybrać „Eksport węzłów”
Tak! Oto odpowiedź, której szukałem. Jest to o wiele łatwiejsze niż instalacja i konfiguracja Views Bulk Operations (VBO). Trudno było znaleźć takie proste rozwiązanie.
Magmatic,
1
To tylko eksportuje bieżącą stronę treści tego typu, a nie WSZYSTKIE treści typu.
RichardAtHome
then select 'Node export' from the dropdown menujakie menu
Ejaz
może odpowiedzieć na to ostatnie pytanie. Nie widziałem tego, dopóki nie wyłączyłem widoku admin_views_node, który został włączony dla tej witryny i nie wyczyściłem pamięci podręcznej. teraz w rozwijanym menu Opcje aktualizacji na stronie admin / content widzę opcję „eksportu węzła”. Alternatywnie, jeśli mam włączony ten widok, mogę go edytować, wybrać pole Operacje zbiorcze i dodać operację eksportu węzła.
petednz - fuzion
0
Możesz użyć modułu eksportu Node do wyżej wymienionych celów. To mówi:
Pozwala użytkownikom eksportować węzły, a następnie importować je do innej instalacji Drupal lub w tej samej witrynie. Za pomocą tego modułu możesz zaoszczędzić dużo czasu na konfigurowaniu nowych stron internetowych, które mają podobne węzły do stron, które już utworzyłeś, migrowaniu węzłów do nowych wersji Drupal lub między stronami programistycznymi / testowymi / produkcyjnymi.
Może to pomóc w podzieleniu wyników. Prosty skrypt bash:
#!/bin/bash# Run this script in Drupal root app directory!# Requirements: drush command tool installed with ne-export command (you need Node Export module installed in Drupal)
maxRows=100
startFrom=0for i in{0..17}do
startFrom=$(((i)*100))
echo "SELECT nid FROM node where node.type='noticia' limit $startFrom,$maxRows"# just for debugging
drush ne-export--file="nodes-exported/nodes-exported-$i.json"--format='json'--sql="SELECT nid FROM node where node.type='noticia' limit $startFrom,$maxRows"# of course set your own SQL heredoneexit0
Możesz przejść do listy całej zawartości na stronach administracyjnych Drupala (/ admin / content w D7), następnie filtrować według typu zawartości, następnie wybierać wszystkie, a następnie z menu rozwijanego wybrać „Eksport węzłów”
źródło
then select 'Node export' from the dropdown menu
jakie menuMożesz użyć modułu eksportu Node do wyżej wymienionych celów. To mówi:
źródło
Może to pomóc w podzieleniu wyników. Prosty skrypt bash:
źródło