jezzdk / statamic-wp-import
README
Statamic WP Import 可以从您的 WP 网站导入简单内容。
注意:此插件与 Wordpress 插件 结合使用。
免责声明
这基本上是将 Statamic v2 的官方导入脚本移植到 v3,进行了 wangjangled 以便与之协同工作。唯一的不同之处在于,此插件不会将设置作为全局导入,但它也会下载特色图片。
功能
此插件将
- 创建分类和术语
- 创建页面
- 创建集合和条目
此插件不会
- 根据您的 ACF(或其他自定义字段插件)设置创建蓝图和字段集
- 创建全局集合和变量
从 WordPress 导出的所有元数据都将在条目上设置为值。然而,任何以下划线为前缀的元数据键将被忽略。此外,帖子内容中的内联图片将不会下载。有关图片的说明请参阅以下内容。
事件
插件正在使用内置方法创建和保存内容。因此,会触发正常的事件,您可以根据您的设置挂钩进行额外的工作。这意味着您可以通过以下事件来定制导入
Statamic\Events\CollectionCreatedStatamic\Events\CollectionSavedStatamic\Events\EntrySavingStatamic\Events\EntryCreatedStatamic\Events\EntrySavedStatamic\Events\TaxonomySavedStatamic\Events\TermSavedStatamic\Events\AssetSavedStatamic\Events\AssetUploaded
在您阅读此内容时,可能会有其他事件。请参阅 文档 了解更多信息。
有关图片的说明
仅下载特色图片。不会下载多个特色图片、使用 ACF 和其他插件添加的图片。特色图片将默认下载到 "assets" 容器中(在配置中更改),到一个名为 "{collection_handle}/{entry_slug}" 的文件夹中,并保存在条目上的 "featured_image" 字段中。
您可以使用上述事件来执行自己的图片下载等操作。我已经成功做到了这一点 👍
如何安装
您可以在 Statamic 控制面板的 工具 > 插件 部分搜索此插件,并点击 安装,或者从您的项目根目录运行以下命令
composer require jezzdk/statamic-wp-import
如何使用
首先,您必须使用 Export to Statamic Wordpress 插件 导出您的数据。选择您希望导出的任何内容,但请注意上述说明。
转到 工具 > WP 导入 部分,并上传 json 文件。
摘要将显示您的安装中是否已存在任何内容。如果您仍然选择导入,则内容将被覆盖。
(取消)选择任何内容并点击 "导入"。
完成 :)
配置
配置文件的内容如下所示
<?php
return [
/*
* Enable downloading of featured image. The default is 'true'.
*/
'download_images' => true,
/**
* The name of the assets container where images should be downloaded.
*/
'assets_container' => 'assets',
/*
* Whether to skip download of an image if it already exist. The default is 'false'.
*/
'skip_existing_images' => false,
/*
* Enable image overwriting. When set to false, a new image are created with a timestamp suffix, if the image already exists. The default is 'false'.
*/
'overwrite_images' => false,
/*
* Filter out meta data keys prefixed with '_'. The default is 'true'.
*/
'exclude_underscore_data' => true,
];
您可以使用以下命令发布它
php artisan vendor:publish --tag=statamic-wp-import
已知问题
如果您正在导入大量数据集或许多图片,可能会遇到超时错误。在这种情况下,您可能需要调整服务器上的超时设置或在本地运行导入操作。