外掛說明
WordPress 內容匯入程式能從 WordPress 資料匯出檔中匯入以下內容:
- 文章、頁面以及其他自訂內容類型
- 留言及留言中繼資料
- 自訂欄位及文章中繼資料
- 分類、標籤、自訂分類法詞彙及其對應中繼資料
- 作者
如需進一步了解相關資訊及說明,請參閱〈匯入內容〉線上說明。
篩選器
匯入程式所提供的篩選器能讓你完全啟用/封鎖某些功能:
import_allow_create_users:如果只是要對應至現有使用者,會傳回 false。import_allow_fetch_attachments:如果不開放匯入及下載附件,會傳回 false。import_attachment_size_limit:傳回最大檔案檔案大小的整數值,並以位元組 (Bytes) 為單位進行儲存。預設值為 0,代表不限制。
還有以下動作勾點可供使用:
import_start:上傳資料匯出檔及選取匯入作者設定後會出現。import_end:內容匯入程式完成匯入便會呼叫。
安裝方式
安裝匯入程式最快的方式如下:
- 在 WordPress 控制台左側選單中,點擊 [工具][匯入程式]。
- 點擊內容匯入程式清單中的 WordPress 連結。
- 點擊 [立即安裝]。
- 最後,點擊 [啟用外掛並執行匯入程式]。
如果偏好進行手動安裝,請依照以下步驟進行操作:
- 將外掛安裝套件 ZIP 壓縮檔解壓縮的
wordpress-importer資料夾上傳至網站的/wp-content/plugins/目錄中。 - 在 WordPress 管理後台的 [外掛] 選單中啟用外掛。
- 到 [工具] [匯入程式] 頁面中,點擊 WordPress 連結。
常見問題集
-
我遇到主機記憶體錯誤或空白畫面,亟需協助!
-
如果要匯入的檔案大小非常大,匯入指令碼執行時可能會遇到主機限制 PHP 記憶體使用量的問題。
出現類似 [Fatal error: Allowed memory size of 8388608 bytes exhausted] 的訊息時,便表示在目前的 PHP 記憶體限制下,指令碼無法成功匯入 XML 檔案。如果你在主機上擁有變更 php.ini 檔案的權限 (詳情請洽詢主機商),你便能手動調高記憶體限制值;一般來說,如果是安裝於共享主機的 WordPress 網站,你便沒有權限變更 php.ini 中的設定值,這時你需要將 XML 檔案匯出為數個較小的檔案,然後才執行匯入指令碼一一匯入。
對於這種無法變更 PHP 環境設定值的共享主機,最好的選擇是洽詢主機技術支援提供協助,以便確定執行匯入最安全的做法。主機商可能會暫時解除主機記憶體限制,或由他們那端直接執行相關程序。
使用者評論
參與者及開發者
變更記錄
0.9.7
- Skip the
_wp_attachment_edit_root_idmeta key on import. It stores an attachment ID from the source site, and attachment IDs change on import, so the imported value could point at an unrelated attachment on the destination site.
0.9.6
- Skip the
_wp_font_face_filemeta key on import. Font attachments regenerate this meta locally, and the imported value pointed at a file path from the source site. - Prefix bundled vendor namespaces (
Rowbot\URL,Brick\Math,Psr\Log, and others) withVendorPrefix\to avoid class redefinition errors when another plugin bundles the same libraries. - Add a Live Preview blueprint so the plugin can be tried in WordPress Playground from the plugin directory page.
- Code refactoring: extract single-post processing into a separate process_post() method, continuing the streaming preparation work.
0.9.5
- Rewrite CSS URLs in block markup (e.g., cover blocks with background images).
- Code refactoring: Extract import processing logic into separate methods to prepare for future streaming support.
- Update Playwright and @playwright/test dependencies from 1.55.0 to 1.56.1.
- Clean up vendor-patched dependencies by removing dotfiles and GitHub workflow files.
0.9.4
- Fix a bug that caused self-closing blocks to be incorrectly serialized during URL rewriting.
0.9.3
- Rewrite attachment URLs to the new URL structure
0.9.2
- Rewrite site URLs in block attributes.
0.9.1
- Add support for rewriting site URLs in post content and excerpts.
0.9.0
- Introduce a new XML parser class
WXR_Parser_XML_Processorthat replaces the deprecatedWXR_Parser_Regexclass.
0.8.4
- Fix a bug on deserialization of untrusted input.
- Update compatibility tested-up-to to WordPress 6.7.2.
0.8.3
- Update compatibility tested-up-to to WordPress 6.7.
- Update call to
post_existsto includepost_typein the query - PHP 8.4 compatibility fixes.
0.8.2
- Update compatibility tested-up-to to WordPress 6.4.2.
- Update doc URL references.
- Adjust workflow triggers.
0.8.1
- Update compatibility tested-up-to to WordPress 6.2.
- Update paths to build status badges.
0.8
- Update minimum WordPress requirement to 5.2.
- Update minimum PHP requirement to 5.6.
- Update compatibility tested-up-to to WordPress 6.1.
- PHP 8.0, 8.1, and 8.2 compatibility fixes.
- Fix a bug causing blank lines in content to be ignored when using the Regex Parser.
- Fix a bug resulting in a PHP fatal error when IMPORT_DEBUG is enabled and a category creation error occurs.
- Improved Unit testing & automated testing.
0.7
- Update minimum WordPress requirement to 3.7 and ensure compatibility with PHP 7.4.
- Fix bug that caused not importing term meta.
- Fix bug that caused slashes to be stripped from imported meta data.
- Fix bug that prevented import of serialized meta data.
- Fix file size check after download of remote files with HTTP compression enabled.
- Improve accessibility of form fields by adding missing labels.
- Improve imports for remote file URLs without name and/or extension.
- Add support for
wp:base_blog_urlfield to allow importing multiple files with WP-CLI. - Add support for term meta parsing when using the regular expressions or XML parser.
- Developers: All PHP classes have been moved into their own files.
- Developers: Allow to change
IMPORT_DEBUGviawp-config.phpand change default value to the value ofWP_DEBUG.
0.6.4
- Improve PHP7 compatibility.
- Fix bug that caused slashes to be stripped from imported comments.
- Fix for various deprecation notices including
wp_get_http()andscreen_icon(). - Fix for importing export files with multiline term meta data.
0.6.3
- Add support for import term metadata.
- Fix bug that caused slashes to be stripped from imported content.
- Fix bug that caused characters to be stripped inside of CDATA in some cases.
- Fix PHP notices.
0.6.2
- Add
wp_import_existing_postfilter, see Trac ticket #33721.
0.6
- Support for WXR 1.2 and multiple CDATA sections
- Post aren’t duplicates if their post_type’s are different
0.5.2
- Double check that the uploaded export file exists before processing it. This prevents incorrect error messages when
an export file is uploaded to a server with bad permissions and WordPress 3.3 or 3.3.1 is being used.
0.5
- Import comment meta (requires export from WordPress 3.2)
- Minor bugfixes and enhancements
0.4
- Map comment user_id where possible
- Import attachments from
wp:attachment_url - Upload attachments to correct directory
- Remap resized image URLs correctly
0.3
- Use an XML Parser if possible
- Proper import support for nav menus
- … and much more, see Trac ticket #15197
0.1
- Initial release
