नोड एक्सपोर्ट को मास नोड एक्सपोर्ट में कैसे कॉन्फ़िगर करें?


25

मैं बड़े पैमाने पर नोड निर्यात के लिए नोड निर्यात की कोशिश कर रहा हूं, लेकिन ऐसा लगता है कि मुझे व्यक्तिगत रूप से निर्यात करने के लिए प्रत्येक नोड को चुनना होगा।

क्या होगा यदि मैं किसी चयनित सामग्री प्रकार के सभी नोड्स को निर्यात करना चाहता हूं? क्या कोई तरीका है कि मैं नोड एक्सपोर्ट में ऐसा कर सकता हूं, या मुझे दूसरा मॉड्यूल ढूंढना चाहिए?

जवाबों:


25

आप इसे ड्रश के साथ कर सकते हैं :

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

* अद्यतन


धन्यवाद, लेकिन क्या यह बड़ी मात्रा में नोड्स (> 1000) के लिए उपयुक्त है?
कोडिया

सिद्धांत रूप में, हाँ, यदि आप PHP को पर्याप्त मेमोरी देते हैं और एक बहुत ही उच्च निष्पादन समय निर्धारित करते हैं। मुझे लगता है कि पिछली बार जब मैंने ऐसा किया था तो मेरे पास सैकड़ों नोड थे, शायद एक हजार के करीब।
mpdonadio

एक बार फिर धन्यवाद। यहाँ अधिक जानकारी drupal.org/node/1681584 है । मैं दृश्य डेटा निर्यात भी कोशिश
करूंगा

1
ड्रश कमांड का उपयोग करते समय हार्डडिस्क पर संग्रहीत परिणाम निर्यात की गई फ़ाइल कहां है?
अहमद ज़ैन

2
@AhmadZain आउटपुट को संग्रहीत किया जाता है जहाँ भी आप इसे करने के लिए निर्दिष्ट करते हैं। उपरोक्त कमांड को उसी स्थान पर फ़ाइल संग्रहीत करनी चाहिए जहां से आपने कमांड को चलाया था।
mpdonadio

5

आप Drupal के व्यवस्थापक पृष्ठों (/ D7 में व्यवस्थापक / सामग्री) में सभी सामग्री की सूची पर जा सकते हैं, फिर सामग्री प्रकार से फ़िल्टर करें, फिर सभी का चयन करें, फिर ड्रॉपडाउन मेनू से 'नोड निर्यात' चुनें


2
हाँ! यह वह उत्तर है जिसकी मुझे तलाश है। यह Views Bulk Operation (VBO) स्थापित और कॉन्फ़िगर करने की तुलना में बहुत आसान है। इस तरह के एक सरल समाधान के लिए, इसे ढूंढना वास्तव में कठिन था।
मैगमैटिक

1
यह केवल उस प्रकार की सामग्री का वर्तमान पृष्ठ निर्यात करता है, सभी प्रकार की सामग्री नहीं।
रिचर्ड एओथोम

then select 'Node export' from the dropdown menuक्या मेनू?
एजाज

यह उस आखिरी प्रश्न का उत्तर दे सकता है। मैं यह भी नहीं देख रहा था जब तक कि मैंने admin_views_node दृश्य को अक्षम नहीं किया, जो उस साइट के लिए चालू हो गया था, और कैश को साफ़ कर दिया था। अब व्यवस्थापक / सामग्री पर अद्यतन विकल्प ड्रॉपडाउन में, मुझे 'नोड निर्यात' के लिए एक विकल्प दिखाई देता है। वैकल्पिक रूप से, यदि मेरे पास वह दृश्य सक्षम है, तो मैं उसे संपादित कर सकता हूं, बल्क ऑपरेशंस फ़ील्ड का चयन कर सकता हूं और 'नोड एक्सपोर्ट' ऑपरेशन को जोड़ सकता हूं।
पेटेड्नज़

0

आप उपर्युक्त उद्देश्य के लिए नोड निर्यात मॉड्यूल का उपयोग कर सकते हैं । इसे कहते हैं:

यह उपयोगकर्ताओं को नोड्स निर्यात करने और फिर इसे एक अन्य Drupal स्थापना, या उसी साइट पर आयात करने की अनुमति देता है। इस मॉड्यूल का उपयोग करके आप अपने आप को नई वेबसाइटों को सेट करने में बहुत समय बचा सकते हैं, जो आपके द्वारा पहले से बनाई गई वेबसाइटों के समान नोड्स हैं, नए ड्रुपल संस्करणों में नोड्स का माइग्रेशन कर रहे हैं, या विकास / मंचन / उत्पादन साइटों के बीच।


0

इससे आपको परिणामों को विभाजित करने में मदद मिल सकती है। सरल बैश स्क्रिप्ट:

#!/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
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.