dpc-sdp / tide_demo_content
为 Tide 模块创建演示内容。
4.1.1
2024-08-07 10:01 UTC
Requires
- dpc-sdp/tide_core: ^4.0.0
- drupal/yaml_content: ^1.0@alpha
- dev-develop
- 4.1.1
- 4.1.0
- 4.0.0
- 3.0.13
- 3.0.12
- 3.0.11
- 3.0.10
- 3.0.9
- 3.0.8
- 3.0.7
- 3.0.6
- 3.0.5
- 3.0.4
- 3.0.3
- 3.0.2
- 3.0.1
- 3.0.0
- 1.1.7
- 1.1.6
- 1.1.5
- 1.1.4
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.0
- dev-reference
- dev-release/4.1.1
- dev-demo-image
- dev-master
- dev-release/4.1.0
- dev-SDPTA-1013-campaign-fix
- dev-demo-fix
- dev-fix-test
- dev-event-menu-remove
- dev-content_collection_new
- dev-new-content-collection-dataset
- dev-release/4.0.0
- dev-feature/SDPAP-8241-add-contributor-users
- dev-SDPTA-947-add-org-demo
- dev-SDPAP-7408-remove-card-event
- dev-release/3.0.13
- dev-release/3.0.12
- dev-release/3.0.11
- dev-feature/R20-956-fix-menu-structure
- dev-R20-896-addpage
- dev-new-image-doc
- dev-replace-melbourne-tram-image
- dev-SDPTA-603-remove-blank-image
- dev-release/3.0.10
- dev-release/3.0.9
- dev-new-grants
- dev-feature/fix-demo-content-menu-errors
- dev-add-content-pt1-pt2
- dev-minimal-content
- dev-test_keith
- dev-release/3.0.7
- dev-release/3.0.6
- dev-change_summary
- dev-test-cc-data-sites
- dev-update-cc-section-name
- dev-release/3.0.4
- dev-add-cc-tags-topics
- dev-feature/fixes_error_where_field_is_not_defined
- dev-feature/cms-improvement-poc-helper
- dev-feature/ignore_filter
This package is auto-updated.
Last update: 2024-09-07 10:09:20 UTC
README
为 Tide 模块提供演示内容。
本文件内容
- 简介
- 要求
- 使用方法
- 开发者
简介
Tide 演示内容模块利用 Yaml 内容模块为 Tide 模块提供默认的演示内容。它还允许有权限的用户通过管理界面导入 YAML 内容。
要求
使用方法
- Tide 演示内容在安装时导入所有演示内容。
- 当它被卸载时,它也会删除所有导入的演示内容。
- 拥有“手动导入演示内容”权限的特权用户可以通过 UI 导入 YAML 内容文件:管理 > 内容 > 导入演示内容。
- 要构建 YAML 内容文件,请参考以下资源
为开发者
Tide 演示内容模块利用 Yaml 内容模块导入其自己的演示内容定义。
- Yaml 内容模块 模块的 Drush 命令将无法识别在 Tide 演示内容结构下定义的演示内容,因此它们不会导入这些演示内容。
- Tide 演示内容模块不会删除由 Yaml 内容模块的 Drush 命令导入的标准 YAML 内容。
- 可以在
yourmodule.tide_demo_content.yml
中定义自定义演示内容。每个演示内容集合都可以有以下键dependencies
声明集合的要求modules
:所需模块的列表。如果至少有一个所需模块未启用,则 Tide 演示内容将忽略该集合。collections
:在导入此集合之前要导入的演示内容集合列表。如果缺少所需的集合,则将忽略此集合。
content
声明集合的.content.yml
文件列表。- Tide 演示内容模块将在您的模块的
demo_content/content/
目录下查找.content.yml
文件以导入。 - 如果
content
键有一个目录,则该目录下的所有内容都将递归导入。 content
键的所有项将以集合中定义的相同顺序导入。- 图像和文件将从
demo_content/images
和demo_content/data_files
目录导入。
- Tide 演示内容模块将在您的模块的
示例
mymodule
的结构
|- demo_content
| |- content
| |- taxonomy_term
| | |- mymodule.tags.yml
| | |- mymodule.topic.yml
| |- mymodule.extra.content
| |- mymodule.media.content.yml
| |- mymodule.node.content.yml
|- mymodule.info.yml
|- mymodule.install
|- mymodule.module
|- mymodule.tide_demo_content.yml
mymodule.tide_demo_content.yml
mymodule.demo: dependencies: modules: - mymodule - tide_core collections: - tide_demo_content:tide_core.demo - tide_demo_content:tide_site.demo content: - taxonomy_term - mymodule.media.content.yml - mymodule.node.content.yml mymodule.extra_demo: dependencies: modules: - mymodule - tide_core collections: - mymodule:mymodule.demo content: - mymodule.extra.content.yml
mymodule
模块定义了 2 个演示内容集合
mymodule.demo
- 需要 2 个模块:mymodule 和 tide_core。
- 依赖于 tide_demo_content 模块中的 2 个演示集合
tide_core.demo
和tide_site.demo
。 - Tide 演示内容将按以下顺序导入
mymodule.demo
的.content.yml
文件- taxonomy_term/*
- mymodule.media.content.yml
- mymodule.node.content.yml
mymodule.extra_demo
- 需要 2 个模块:mymodule 和 tide_core。
- 依赖于并将在
mymodule.demo
之后导入
自定义 YAML 内容处理插件
- URI引用:从引用过程插件中派生。它接受
reference
过程插件的全部参数,并返回找到的实体的uri
而不是ID。此插件可用于链接字段或菜单项。
field_external_link: - uri: https://www.vic.gov.au title: Victorian Government field_internal_link: - '#process': callback: uri_reference args: - node - type: page title: Demo Page title: 'Read more'
钩子
hook_tide_demo_content_collection_ignore
在Tide演示内容导入演示内容集合之前被调用。它允许其他模块排除不想要的演示内容集合。当集合被忽略时,由于其缺失依赖项,所有依赖项也会自动忽略。忽略tide_demo_content:tide_media.demo
和tide_demo_content:tide_site.demo
将排除Tide模块中的所有默认演示内容,除了演示用户。hook_tide_demo_content_entity_imported
在Tide演示内容导入一个演示实体后被调用。
已知问题
- Yaml内容:节点无法自动创建菜单链接
- Yaml内容:节点无法创建路径别名
- Tide演示内容:导入演示内容UI仅允许导入YAML内容,不允许上传文件/图片。因此,上传的YAML中的实体只能引用现有文件/图片。