web-dev-qa-db-fra.com

Comment configurer Node Exporter vers l'exportation de nœud de masse?

J'essaie Node Exporter pour l'exportation de nœud de masse, mais il semble que je doive choisir chaque nœud à exporter individuellement.

Que faire si je souhaite exporter tous les nœuds d'un type de contenu sélectionné? Existe-t-il un moyen de le faire dans Node Export, ou devrais-je trouver un autre module?

24
Codium

Vous pouvez le faire avec drush :

$ drush help ne-export
Export nodes using Node export.

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 : Filter for 'status'; A boolean value (0 or 1) indicating whether
the node is published (visible to non-administrators).
  --promote : Filter for 'promote'; A boolean value (0 or 1) indicating whether
the node should be displayed on the front page.
  --sticky : Filter for 'sticky'; A boolean value (0 or 1) indicating whether
the node should be displayed at the top of lists in which it appears.
  --translate : Filter for 'translate'; A boolean value (0 or 1) indicating
whether the node translation needs to be updated.
  --language : Filter for 'language'; The language code (e.g. de or en-US) of
this node.
  --type : Filter for 'type'; The machine-readable name (e.g. story or page) of
the type of this node.
  --sql : Filter by SQL (EXPERIMENTAL); An SQL query string that returns nids
(e.g. "SELECT nid FROM nodes WHERE nid < 10").
  --code : Filter by 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.

Par exemple,

drush ne-export --type=article --file=article.txt

affichera tous les nœuds d'article dans article.txt au format sérialisé. Vous pouvez ensuite utiliser drush pour les importer:

$ drush help ne-import
Import nodes previously exported with Node export.

Arguments:

Options:
  --uid : User ID of user to save nodes as. If not given will use the user with
an ID of 1. You may specify 0 for 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.

Par exemple:

drush ne-import --uid=1 --file=article.txt

*mise à jour

25
mpdonadio

Vous pouvez aller à la liste de tout le contenu dans les pages d'administration Drupal (/ admin/content dans D7), puis filtrer par type de contenu, puis tout sélectionner, puis sélectionner "Exporter les nœuds" dans le menu déroulant

5
tog22

Vous pouvez utiliser le module Node export aux fins mentionnées ci-dessus. Ça dit:

Il permet aux utilisateurs d'exporter des nœuds puis de l'importer dans une autre installation Drupal, ou sur le même site. En utilisant ce module, vous pouvez gagner beaucoup de temps en configurant de nouveaux sites Web qui ont des nœuds similaires à les sites Web que vous avez déjà créés, la migration des nœuds vers de nouvelles versions Drupal, ou entre des sites de développement/de transfert/de production.

0
Astha chauhan

Cela pourrait vous aider à diviser les résultats. Script bash simple:

#!/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=0
for 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 here
done

exit 0
0
wit0ld