在 Drupal 10 中,核心系统并没有内置一个简单的“导出”按钮来直接下载分类术语。不过,你可以通过以下几种最常用的方法来实现导出,具体取决于你的需求(是想要 Excel/CSV 报表,还是为了数据迁移)。
以下是三种主要的解决方案:
方法一:使用 Views Data Export 模块(推荐,最常用)
这是获取 CSV、Excel 或 JSON 文件最标准、最灵活的方法。它允许你选择需要导出的字段(如名称、描述、父级术语等)。
步骤:
安装模块:
使用 Composer 安装 Views Data Export 模块。
bash
composer require drupal/views_data_export
drush en views_data_export -y
创建视图:
转到 管理 > 结构 > 视图。
点击“添加视图”。
视图名称: 例如 "Export Tags"。
显示类型: 选择 Data export (数据导出)。
要显示的内容类型: 选择 Taxonomy term (分类术语)。
点击“保存并编辑视图”。
配置格式与路径:
在视图的“显示”设置中,点击 Data export (数据导出) 后面的设置按钮。
格式: 选择 CSV (或 XLS, JSON 等)。
路径: 设置一个访问路径,例如 export/terms.csv。
点击“应用”。
添加字段:
点击“添加”按钮。
选择你需要导出的字段,例如:
Taxonomy term: Name (术语名称)
Taxonomy term: Description (描述)
Taxonomy term: Term ID (ID)
如果有自定义字段,也可以在这里勾选。
排列字段的顺序。
过滤(可选):
如果只想导出特定的词汇表(例如“Tags”),点击“添加筛选条件”,选择 Taxonomy term: Vocabulary,并选择对应的词汇表。
导出:
保存视图。
在浏览器中访问你设置的路径(例如 yourdomain.com/export/terms.csv),浏览器将自动下载 CSV 文件。
方法二:使用 Default Content 模块(用于开发/迁移)
如果你是想将分类术语从开发环境迁移到生产环境,或者将其作为代码的一部分进行版本控制,应该使用 Default Content 模块。
步骤:
安装模块:
bash
composer require drupal/default_content
drush en default_content -y
导出内容:
该模块主要是将内容导出为 JSON 文件存放在模块文件夹中。通常配合 Default Content Export 模块或 Drush 命令使用。
安装额外的导出工具:
bash
composer require drupal/default_content_export
使用 Drush 导出:
你可以使用 Drush 命令将术语导出为文件。
bash
# 导出特定的词汇表(假设机器名为 tags)
drush dce taxonomy_term --folder=../content_export
注意:这需要一定的开发经验,导出的是包含 UUID 和引用关系的 JSON 结构化数据。
方法三:使用 SQL / Drush SQL(最快,适合临时备份)
如果你只有服务器权限,且只需要快速获取数据,可以直接查询数据库。
步骤:
查找数据表:
Drupal 10 的分类术语数据主要存储在 taxonomy_term_field_data 表中。
执行 SQL 查询:
sql
SELECT td.tid, td.name, td.description__value, tv.name AS vocabulary
FROM taxonomy_term_field_data td
JOIN taxonomy_vocabulary tv ON td.vid = tv.vid
WHERE td.vid = 'tags'; -- 将 'tags' 替换为你的词汇表机器名
使用 Drush 直接导出:
你可以使用 drush sql-query 结合管道命令直接生成 CSV 文件(在 Linux/Mac 环境下):
bash
drush sql-query "SELECT td.tid, td.name FROM taxonomy_term_field_data td" > terms.csv
总结建议
如果你需要给非技术人员看的 Excel 表格: 请使用 方法一。这是最符合 Drupal 逻辑且最安全的方法。
如果你是开发者,需要在不同站点间同步数据: 请使用 方法二。
如果你只是想快速备份数据库中的文本: 请使用 方法三。
评论