web-dev-qa-db-ja.com

構成方法Node Export to mass node export?

Node大量のノードをエクスポートするためのエクスポートを試していますが、すべてのノードを個別にエクスポートするように選択する必要があるようです。

選択したコンテンツタイプのすべてのノードをエクスポートする場合はどうなりますか? Nodeエクスポートでこれを行う方法はありますか、または別のモジュールを見つける必要がありますか?

24
Codium

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.

例えば、

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

すべての記事ノードをシリアライズされた形式でarticle.txtに出力します。次に、drushを使用してそれらをインポートできます。

$ 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.

例えば:

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

*更新しました

25
mpdonadio

Drupal管理ページ(D7の/ admin/content)のすべてのコンテンツのリストに移動し、コンテンツタイプでフィルタリングしてから、すべてを選択し、ドロップダウンメニューから[ノードのエクスポート]を選択できます。

5
tog22

上記の目的で Node export モジュールを使用できます。それは言う:

これにより、ユーザーはノードをエクスポートしてから、別のDrupalインストールに、または同じサイトにインポートできます。このモジュールを使用すると、類似のノードを持つ新しいWebサイトをセットアップする時間を大幅に節約できます。既に作成したWebサイト、ノードを新しいDrupalバージョンに、または開発/ステージング/プロダクションサイト間で移行する。

0
Astha chauhan

これは、結果を分割するのに役立ちます。単純な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=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