Làm cách nào để định cấu hình Xuất Node sang xuất hàng nút?


25

Tôi đang thử xuất Node để xuất nút hàng loạt, nhưng có vẻ như tôi phải chọn mọi nút để xuất riêng lẻ.

Nếu tôi muốn xuất tất cả các nút của loại nội dung được chọn thì sao? Có cách nào tôi có thể làm điều này trong Xuất khẩu nút, hoặc tôi nên tìm một mô-đun khác?

Câu trả lời:


25

Bạn có thể làm điều đó với 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.

Ví dụ,

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

sẽ xuất tất cả các nút bài viết sang article.txt ở định dạng nối tiếp. Sau đó, bạn có thể sử dụng drush để nhập chúng:

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

Ví dụ:

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

* cập nhật


Cảm ơn, nhưng điều này có phù hợp với số lượng lớn các nút (> 1000) không?
Codium

Về lý thuyết, vâng, nếu bạn cho PHP đủ bộ nhớ và đặt thời gian thực hiện khá cao. Tôi nghĩ rằng lần cuối cùng tôi làm điều này tôi đã có hàng trăm nút, có thể gần một ngàn.
mpdon Arena

Cảm ơn một lần nữa. Dưới đây là thông tin thêm drupal.org/node/1681584 . Tôi cũng sẽ thử Xem xuất dữ liệu
Codium

1
Trường hợp tệp xuất kết quả được lưu trữ trên đĩa cứng khi sử dụng lệnh Drush?
Ahmad Zain

2
@AhmadZain Đầu ra được lưu trữ bất cứ nơi nào bạn chỉ định nó sẽ làm. Lệnh trên sẽ lưu trữ tệp ở cùng nơi bạn đã chạy lệnh từ đó.
mpdon Arena

5

Bạn có thể truy cập danh sách tất cả nội dung trong các trang quản trị của Drupal (/ admin / nội dung trong D7), sau đó lọc theo loại nội dung, sau đó chọn tất cả, sau đó chọn 'Xuất nút' từ menu thả xuống


2
Vâng! Đây là câu trả lời tôi đã tìm kiếm. Điều này dễ dàng hơn nhiều so với việc phải cài đặt và định cấu hình Chế độ xem hàng loạt (VBO). Đối với một giải pháp đơn giản như vậy, nó thực sự rất khó tìm.
Magmatic

1
Điều đó chỉ xuất trang hiện tại của nội dung của loại đó, không phải TẤT CẢ nội dung của loại.
RichardAtHome

then select 'Node export' from the dropdown menuthực đơn gì
Ejaz

nó có thể trả lời câu hỏi cuối cùng Tôi cũng không thấy điều này cho đến khi tôi vô hiệu hóa Chế độ xem admin_view_node đã được bật cho trang web đó và xóa bộ nhớ cache. bây giờ trong danh sách thả xuống Tùy chọn cập nhật tại quản trị viên / nội dung, tôi thấy một tùy chọn để 'xuất nút'. Ngoài ra, nếu tôi bật Chế độ xem đó, tôi có thể chỉnh sửa nó, chọn trường Hoạt động hàng loạt và thêm hoạt động 'xuất nút'.
petednz - fuzion

0

Bạn có thể sử dụng mô-đun xuất Node cho mục đích đã đề cập ở trên. Nó nói rằng:

Nó cho phép người dùng xuất các nút và sau đó nhập nó vào một bản cài đặt Drupal khác, hoặc trên cùng một trang. Sử dụng mô-đun này, bạn có thể tiết kiệm cho mình rất nhiều thời gian để thiết lập các trang web mới có các nút tương tự như các trang web bạn đã tạo, di chuyển các nút sang các phiên bản Drupal mới hoặc giữa các trang web phát triển / dàn dựng / sản xuất.


0

Điều này có thể giúp bạn trong việc phân chia kết quả. Kịch bản bash đơn giản:

#!/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
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.