cron-eu/cron-context

TYPO3_CONTEXT 配置加载器

安装数: 7,706

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 6

分支: 2

开放问题: 0

类型:typo3-cms-extension

3.1.0 2024-02-28 16:43 UTC

This package is auto-updated.

Last update: 2024-08-28 18:04:13 UTC


README

安装

通过 composer 安装扩展,并添加 config/system/additional.php (或使用符号链接)

<?php
defined('TYPO3') || die('Access denied.');

require_once \TYPO3\CMS\Core\Core\Environment::getProjectPath() . '/vendor/cron-eu/cron-context/Default.php';

EXT:cron_context/Examples/additional/ 复制到 config/system/additional/

提示:您不需要在 TYPO3 CMS 中安装此扩展。

配置

当使用 EXT:cron_context/Default.php 时,以下配置目录被使用(按此顺序)

  • EXT:cron_context/Configuration/
  • config/system/additional/

上下文示例

TYPO3_CONTEXT=Production (默认)

  • config/system/additional/Production.php

TYPO3_CONTEXT=Testing (例如,用于单元测试)

  • config/system/additional/Testing.php

TYPO3_CONTEXT=Development (用于开发)

  • config/system/additional/Development.php

TYPO3_CONTEXT=Development/Docker (用于 docker 模板中的开发)

  • config/system/additional/Development.php
  • config/system/additional/Development/Docker.php

TYPO3_CONTEXT=Production/Preview (用于预览)

  • config/system/additional/Development.php
  • config/system/additional/Development/Preview.php

TYPO3_CONTEXT=Production/Live/Server4711 (特定的实时服务器配置)

  • config/system/additional/Development.php
  • config/system/additional/Development/Live.php
  • config/system/additional/Development/Live/Server4711.php

环境变量

如果存在,cron_context 将从以下环境变量读取 TYPO3 数据库凭据

  • MYSQL_DB 或 DB_NAME
  • MYSQL_HOST 或 DB_HOST
  • MYSQL_PORT 或 DB_PORT
  • MYSQL_USER 或 DB_USER
  • MYSQL_PASS 或 DB_PASS
  • DB_DRIVER (如果没有设置且设置了 DB_NAME,则默认为 "mysqli")

高级使用

如果您不想使用 EXT:cron_context/Configuration/,您可以在 config/system/additional.php 中自定义自己的加载

<?php
defined('TYPO3') || die('Access denied.');

// Prevent double loading
if (defined('CRON_TYPO3_ADDITIONALCONFIGURATION')) {
    return;
}

require_once __DIR__ . '/ContextLoader.php';

$confLoader = new \Cron\CronContext\ContextLoader();
$confLoader
        // Add project context configuration
    ->addContextConfiguration(\TYPO3\CMS\Core\Core\Environment::getConfigPath() . '/system/additional')
        // Add local configuration
    ->addConfiguration(\TYPO3\CMS\Core\Core\Environment::getConfigPath() . '/system/additional/local.php')
        // Load configuration files (maybe cached)
    ->loadConfiguration()
        // Add context name to sitename (if in development context)
    ->appendContextNameToSitename();
unset($confLoader);