openeuropa / oe_content
包含欧洲委员会企业实体的OpenEuropa Drupal模块。
Requires
- php: >=8.1
- cweagans/composer-patches: ^1.7 | ^2.0
- drupal/core: ^10
- drupal/datetime_range_timezone: ^1.0.0-alpha3
- drupal/linkit: ^6.0.0-beta4
- drupal/maxlength: ^3.0.0-beta1
- openeuropa/oe_media: ^1.23.1
- openeuropa/rdf_skos: ^1.0.0-alpha10
Requires (Dev)
- behat/mink-selenium2-driver: 1.6.0
- composer/installers: ^1.5
- drupal/address: ^1.11
- drupal/composite_reference: ^2.2
- drupal/config_devel: ^1.9
- drupal/core-composer-scaffold: ^10
- drupal/datetime_testing: ^1.0
- drupal/description_list_field: ^1.0.0-alpha5
- drupal/drupal-extension: ^5.0
- drupal/entity_browser: ^2.10
- drupal/entity_reference_revisions: ^1.8
- drupal/field_group: ~3.2
- drupal/inline_entity_form: ^1.0-rc15
- drupal/token: ^1.10
- drupal/typed_link: ^2.1
- drush/drush: ^12.4
- friends-of-behat/service-container-extension: ^1.0
- mikey179/vfsstream: ^1.6
- nikic/php-parser: ^4.18
- openeuropa/behat-transformation-context: ~0.2
- openeuropa/code-review: ^2.0
- openeuropa/oe_corporate_countries: ^2.0.0-alpha6
- openeuropa/oe_corporate_site_info: ^1.0
- openeuropa/oe_link_lists: ~0.21
- openeuropa/oe_multilingual: ^1.18
- openeuropa/oe_time_caching: ^1.5
- openeuropa/task-runner-drupal-project-symlink: ^1.0.0-beta6
- openeuropa/task-runner-ensure-behat-batching: ^1.0
- phpspec/prophecy-phpunit: ^2
- symfony/phpunit-bridge: ^6.0
- dev-master
- 340.x-dev
- 4.x-dev
- 4.1.0
- 4.0.0
- 3.x-dev
- 3.3.0
- 3.2.0
- 3.1.1
- 3.1.0
- 3.0.0
- 3.0.0-beta4
- 3.0.0-beta3
- 3.0.0-beta2
- 3.0.0-beta1
- 3.0.0-alpha11
- 3.0.0-alpha10
- 3.0.0-alpha9
- 3.0.0-alpha8
- 3.0.0-alpha7
- 3.0.0-alpha6
- 3.0.0-alpha5
- 3.0.0-alpha4
- 3.0.0-alpha3
- 3.0.0-alpha2
- 3.0.0-alpha1
- 2.x-dev
- 2.8.0
- 2.7.0
- 2.6.0
- 2.5.0
- 2.4.0
- 2.3.0
- 2.2.0
- 2.1.1
- 2.1.0
- 2.0.0
- 1.x-dev
- 1.14.0
- 1.13.0
- 1.12.1
- 1.12.0
- 1.11.1
- 1.11.0
- 1.10.0
- 1.9.0
- 1.8.1
- 1.8.0
- 1.7.0
- 1.6.1
- 1.6.0
- 1.5.1
- 1.5.0
- 1.4.0
- 1.3.0
- 1.2.0
- 1.1.0
- 1.0.0
- 1.0.0-beta3
- 1.0.0-beta2
- 1.0.0-beta1
- 0.x-dev
- 0.6.0
- 0.5.0
- 0.4.2
- 0.4.1
- 0.4.0
- 0.3.0
- 0.2.0
- 0.1.0
- dev-release-4.1.0
- dev-release-4.0.0
- dev-OEL-2794
- dev-EWPP-3502
- dev-EPIC-EWPP-2742-Political-leader
- dev-EWPP-2706
- dev-EPIC-OEL-1548-Person
- dev-OEL-1301
- dev-EPIC-EWPP-1539-Event-v2
- dev-EWPP-1764-poc
- dev-EWPP-1764
- dev-EWPP-1871
- dev-issue-501-timeline-field-update-incomplete
- dev-release-2.7.0
- dev-update-EPIC-EWPP-1539-Event-v2-20211118
- dev-EWPP-1669
- dev-update-EPIC-EWPP-1539-Event-v2-20211109
- dev-release-2.6.0
- dev-EPIC-EWPP-1408-Author-v2
- dev-EWPP-1545
- dev-EWPP-1414
- dev-fix-changelog
- dev-debug-drone
- dev-release-2.5.0
- dev-EWPP-1478
- dev-EPIC-EWPP-1360-News-v3
- dev-EPIC-EWPP-1476-Publication-v2
- dev-EWPP-1199-run-pipeline
- dev-EWPP-1049
- dev-EPIC-EWPP-953-Organisation
- dev-EPIC-EWPP-1041-Contacts
- dev-EWPP-1141
- dev-EWPP-963
- dev-EWPP-912
- dev-update-EPIC-EWPP-1041-Contacts-06052021
- dev-Update-Org-Epic
- dev-EWPP-988
- dev-EPIC-Org-update
- dev-EPIC-EWPP-953-Organisation-update
- dev-release-2.1.x
- dev-release-2.1.1
- dev-EWPP-991
- dev-EWPP-986
- dev-EPIC-Person
- dev-EWPP-697
- dev-fix-publication-skos
- dev-debug-publication-fail
- dev-update-person-epic
- dev-rebase-epic-person
- dev-EPIC-Consultation
- dev-EWPP-000
- dev-EWPP-667-behat-refactor
- dev-EWPP-727
- dev-EPIC-Consultation-update
- dev-EWPP-568
- dev-FPFISSUPP-10258
- dev-release-1.12.1
- dev-EWPP-405
- dev-release-1.13.x
- dev-release-1.12.0
- dev-EPIC-Publication
- dev-EPIC-Proposals
- dev-EWPP-445-add-teaser-subject
- dev-EWPP-518
- dev-EPIC-Organisation
- dev-EWPP-430-2
- dev-issue-corporate-fields
- dev-release-1.11.2
- dev-release-1.11.x
- dev-release-1.11.1
- dev-EWPP-431
- dev-EWPP-314
- dev-D8TEWPPE-112
- dev-D8TEWPPE-73
- dev-EWPP-373
- dev-issue-composite_reference
- dev-EWPP-313
- dev-EWPP-330
- dev-EWPP-201
- dev-EPIC-News
- dev-D8TSDT-120
- dev-EWPP-204
- dev-EWPP-307
- dev-EWPP-270
- dev-update-organisation-24092020
- dev-EPIC-tender
- dev-EWPP-274
- dev-EWPP-272
- dev-EWPP-196-project
- dev-EPIC-Redirect-link
- dev-update-organisation-16092020
- dev-EPIC-Project
- dev-EWPP-251
- dev-EWPP-63
- dev-EPIC-Redirect-link-rebase
- dev-EPIC-Redirect-rebase
- dev-EWPP-121
- dev-EWPP-213
- dev-EWPP-210
- dev-EWPP-32
- dev-EWPP-58-reference-project
- dev-EWPP-196
- dev-update-project-20200825
- dev-EWPP-166
- dev-EWPP-58-oe_reference-EPIC_Project
- dev-EPIC-tender-update-20200818
- dev-EPIC-Project-update-20200818
- dev-FPFISSUPP-8617-mariadb
- dev-EWPP-33
- dev-EWPP-58-context
- dev-EWPP-31
- dev-OPENEUROPA-3380a
- dev-EPIC-Tenders
- dev-OPENEUROPA-3380
- dev-OPENEUROPA-3378
- dev-EPIC-Project-update-3371
- dev-OPENEUROPA-3371
- dev-OPENEUROPA-3135-alpha-release
- dev-OPENEUROPA-0000-typed_link__rdf_skos
- dev-OPENEUROPA-3299
- dev-EPIC-Project-typed_link
- dev-OPENEUROPA-2624
- dev-OPENEUROPA-3135
- dev-OPENEUROPA-3113
- dev-EPIC-Project-update
- dev-poc-ttypes
- dev-EPIC-Event
- dev-OPENEUROPA-2288-v2
- dev-OPENEUROPA-2221-2
- dev-OPENEUROPA-2640
- dev-release-1.5.1
- dev-release-1.5.0
- dev-OPENEUROPA-2258-test-php72
- dev-OPENEUROPA-2222
- dev-OPENEUROPA-2395-debug
- dev-OPENEUROPA-2212
- dev-OPENEUROPA-2206
- dev-OPENEUROPA-2205
- dev-OPENEUROPA-2288
- dev-OPENEUROPA-2311
- dev-OPENEUROPA-2217
- dev-OPENEUROPA-2200
- dev-release-1.0.0-beta3
- dev-maintenance
- dev-OPENEUROPA-1594
- dev-OPENEUROPA-1632
- dev-OPENEUROPA-1503
This package is auto-updated.
Last update: 2024-08-29 12:02:29 UTC
README
这是一个包含欧洲委员会企业实体的Drupal模块。
该模块使用RDF SKOS模块提供对出版物办公室分类词汇的SKOS建模。这些模型可以直接在依赖的RDF三元组存储中提供。
所有内容类型都组织在子模块中。可以通过覆盖语言.content_setting配置将这些内容类型设置为可翻译。
此模块提供了一个子模块(oe_content_entity),其中包含了一组用于的企业内容实体。查看模块的README。
目录
需求
此模块依赖于以下软件
- PHP >=8.1
- 包含以下出版物办公室(OP)词汇的RDF表示的三元组存储(Virtuoso或等效):企业实体、目标受众、组织类型、资源类型、Eurovoc
安装
安装包及其依赖项
composer require openeuropa/oe_content
强烈建议使用包含已预装OP词汇的Virtuoso提供的Docker镜像。为此,将镜像添加到您的 docker.compose.yml
文件中
sparql:
image: openeuropa/triple-store-dev
environment:
- SPARQL_UPDATE=true
- DBA_PASSWORD=dba
ports:
- "8890:8890"
否则,请确保您已启动三元组存储实例并已导入这些词汇。
接下来,如果您正在使用任务运行器来设置您的站点,请添加连接到三元组的 runner.yml
配置。在 drupal
键下
sparql:
host: "sparql"
port: "8890"
仍在 runner.yml
中,添加创建连接到三元组的Drupal设置的指令。在 drupal.settings.databases
键下
sparql_default:
default:
prefix: ""
host: ${drupal.sparql.host}
port: ${drupal.sparql.port}
namespace: 'Drupal\Driver\Database\sparql'
driver: 'sparql'
然后您可以继续使用常规任务运行器命令来设置站点。
否则,请确保在您的站点 setting.php
文件中您有自己的三元组存储实例的连接信息
$databases["sparql_default"] = array(
'default' => array(
'prefix' => '',
'host' => 'your-triple-store-host',
'port' => '8890',
'namespace' => 'Drupal\\Driver\\Database\\sparql',
'driver' => 'sparql'
)
);
使用
OpenEuropa 内容
如果您想使用OpenEuropa内容,请启用模块
drush en oe_content
OpenEuropa 企业站点信息集成
此模块提供了与OpenEuropa企业站点信息模块的集成。
当创建新节点时,如果字段“内容所有者”和“作者”可用,它们将自动填充为OpenEuropa企业站点信息模块提供的“基本站点设置”中配置的“默认内容所有者”值。
开发环境搭建
需求
初始设置
您可以通过以下步骤构建测试站点。
-
安装Virtuoso。最简单的方法是使用OpenEuropa的三元组存储开发Docker容器,该容器还预装了主要欧洲词汇。
-
安装所有Composer依赖项
composer install
- 通过复制
runner.yml.dist
到runner.yml
并更改相关值(如数据库凭据)来自定义构建设置。
这将还将主题链接到测试站点中的正确目录,并在测试配置文件(如behat.yml.dist
)中执行令牌替换。
- 通过运行以下命令安装测试站点:
./vendor/bin/run drupal:site-install
您的测试站点将在 ./build
中可用。
请注意:项目文件和目录通过使用OpenEuropa Task Runner的Drupal项目符号链接命令在测试站点内进行符号链接。
如果您在项目的根目录中添加了新文件或目录,您需要重新运行drupal:site-setup
以确保它们被正确地符号链接。
如果您不想重新运行完整的站点设置,您可以简单地运行
$ ./vendor/bin/run drupal:symlink-project
使用Docker Compose
或者,您可以使用提供的配置使用Docker和Docker Compose构建一个开发站点。
Docker提供必要的服务和技术,如Web服务器和数据库服务器,以便无论您的本地主机配置如何,都可以运行站点。
需求
配置
默认情况下,Docker Compose读取两个文件,一个是docker-compose.yml
,另一个是可选的docker-compose.override.yml
文件。按照惯例,docker-compose.yml
包含您的基配置,并默认提供。根据其名称,覆盖文件可以包含对现有服务或完全新服务的配置覆盖。如果服务在两个文件中都有定义,Docker Compose将合并配置。
有关Docker Compose扩展机制的更多信息,请参阅官方Docker Compose文档。
使用
开始时,请运行
docker-compose up
建议不要将docker-compose
守护化,这样您可以在完成工作后快速将其关闭(CTRL+C
)。但是,如果您想将其守护化,您必须添加标志-d
docker-compose up -d
然后
docker-compose exec web composer install docker-compose exec web ./vendor/bin/run drupal:site-install
使用默认配置,开发站点文件应在build
目录中,开发站点应在:http://127.0.0.1:8080/build。
运行测试
要运行grumphp检查
docker-compose exec web ./vendor/bin/grumphp run
要运行phpunit测试
docker-compose exec web ./vendor/bin/phpunit
要运行behat测试
docker-compose exec web ./vendor/bin/behat
步骤调试
要启用从命令行的步骤调试,将任何值传递给容器的XDEBUG_SESSION
环境变量
docker-compose exec -e XDEBUG_SESSION=1 web <your command>
请注意,从XDebug 3开始,如果变量已设置但您的客户端未监听调试连接,控制台将输出连接错误消息。错误消息会导致PHPUnit测试出现假阴性。
要从浏览器中启动步骤调试,请使用浏览器扩展或类似https://www.jetbrains.com/phpstorm/marklets/生成的书签设置正确的cookie。
处理内容
该项目包含以下Task Runner命令来处理RDF存储中的内容,它们需要Docker Compose服务正在运行。
清除所有数据
docker-compose exec sparql ./vendor/bin/robo purge
或者,如果您可以在主机机器上运行命令
./vendor/bin/run sparql:purge
导入默认数据
docker-compose exec sparql ./vendor/bin/robo import
或者,如果您可以在主机机器上运行命令
./vendor/bin/run sparql:import
重置所有数据,即运行清除和导入
docker-compose exec sparql ./vendor/bin/robo purge docker-compose exec sparql ./vendor/bin/robo import
或者,如果您可以在主机机器上运行命令
./vendor/bin/run sparql:reset
贡献
请阅读完整文档以了解我们的行为准则和向我们提交pull请求的过程。