[Drupal 7] 遷移「部份」文章

Jiajun Xu 發表於 週五, 05/03/2019 - 01:10

這邊遇到一個麻煩情勢:某 D7 網站原本架在 A server,現在想搬到 B server,但我進度拖拖拉拉,一邊處理 B server,他們又一邊在 A server 上新的稿,所以 B server 的文章進度是落後的,需要把這段時間在 A server 新增的文章搬過來。

在 D7 如果要匯出部份文章,Node export 是很好的選擇,因為它可以在內容管理頁面(/admin/content/),用勾選的方式決定哪些 node 要匯出,然後另存新檔,再到目的網站做匯入。

但這種作法有一個缺點:例如今天是一位使用者otakupapa進行匯入動作,所有匯入的文章,作者都會變成otakupapa

後來發現用 drush 處理匯入的話,可以透過指令來指定作者的uid。這種作法要成立,就是同一批匯入的文章,都是同一名作者的。所以我每次要先篩選出同一名作者的文章,再匯出成檔案。

但 D7 預設的內容管理頁面,篩選器裡不包含author;D7 也不像 D8,可以自由修改管理頁面的 view。我總不可能手動一篇一篇打勾吧 XD

後來找到一個偉大 module:Administration Views,可以將系統預設的管理頁面都轉化成 view,我就可以在內容管理頁面添加篩選器了。

最後使用 drush 匯入 node:

drush node-export-import --uid=2 --file=filename

標籤 (Tags)