承接 supseven/theme-base 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

supseven/theme-base

Composer 安装命令:

composer require supseven/theme-base

包简介

Sitepackage Library of supseven. A swiss army knife for TYPO3 projects

README 文档

README

DOCUMENTATION AND README WORK IN PROGRESS

How to use this package

  • require supseven/theme-base in your local sitepackage extension supseven/theme_project
    • some of the configuration is loaded automatically
    • most of the configuration needs to be used/imported in your project's sitepackage
    • The package supseven/theme-base can be called "Sitepackage library"
  • the local package theme_project (supseven/theme-project) is used like the theme ext before.
    • All Frontend related stuff is located in supseven/theme-project
    • The name keeps the same for all of our projects
  • The final sitepackage extension is named after the TYPO3 site: e.g. theme_site_sitename
    • it requires the local package supseven/theme_project
    • this package is set as sitepackage within the TYPO3 site configuration for b13/bolt.

By using this construct every TYPO3 project can easily grow with multiple sites.

Needed site settings

settings.yaml:

themeBase:

    typo3:
        linkvalidator:
            fromemail: '%env(MAIL_SENDEREMAIL_DEFAULT)%'
            externalhttpAgentEmail: '%env(MAIL_SENDEREMAIL_DEFAULT)%'
            externalhttpAgentName: '%env(TYPO3_LINKVALIDATOR_EXTERNAL_AGENT_NAME)%'

        tcemain:
            permissions:
                groupid: 1

    page:
        fluidtemplate:
        rootPaths:
            # Used for rootPaths index 20
            sitepackage: theme_project
            # Used for rootPaths index 30. Must not be used if not necessary
            sitepackageSiteOverride: theme_site_sitename

Changes added while creating the extraction of ext:theme in TYPO3 12

Change: conditions for applicationContext

Conditions checking the applicationContext must check on "beginning with" as there are szenarios in future, where multiple environments (hor. scaling) is used. Checking for an exact applicationContext is then not the best way anymore. Using [applicationContext matches "#^Production/Live#"] is recommended from now on.

Breaking Change: Variable RootUid removed

The FLUIDTEMPLATE variable RootUid was removed. The successor is TYPO3 SiteProcessor and can be used with {site.rootPageId}

Breaking Change: FLUIDTEMPLATE option extbase.controllerExtensionName removed

We used this option for years to have this magic config where the following Fluid ViewHelpers does not need an extension name to work within fluid page:

  • f:translate
  • f:uri.resource

This option is removed as the TYPO3 core team has planned to remove it in the upcoming major TYPO3 version 13/14.

Beside that, it's better using following approache (how some may have already done it.): {f:translate(key: 'my_extension.yourFile:yourKey')}

Change: Common restrictions were moved to a dedicated package

Configs like "eval trim" and "eval required" for tt_content.header are now encapsulated within josefglatz/bureaucratic. Take a look

Change: typo3/cms-adminpanel User TsConfig configuration is loaded automatically

The User TsConfig part is automatically loaded and therefore activate. If there are needs to disable or reconfigure the adminpanel User TsConfig just overwrite the configuration in supseven/theme_project.

The TypoScript Setup config.admPanel = 1 is loaded when the TypoScript setup is included within your sitepackage base extension supsven/theme-project!

Change: Our defacto common Page TsConfig is loaded automatically

The TYPO3 Linkvalidator loads the Page TsConfig globally, since TYPO3 12. Reason enough to make the same step for our beloved "theme":

  • typo3/cms-linkvalidator configuration is added automatically. New site settings where added for configuring them per TYPO3 site.
  • TCEFORM: Some common TCEFORM.pages configuration is activated automatically.
  • TCEMAIN: Common ClearCache and CopyBehaviours are loaded automatically. Also the default permissions are set and can be configured TYPO3 site specific.
    • See EXT:theme_base/Configuration/SiteConfiguration/Settings/DefaultSettings.yaml for default settings which can be added to TYPO3 site configuration via yaml imports.

supseven/theme-base 适用场景与选型建议

supseven/theme-base 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 4.36k 次下载、GitHub Stars 达 3, 最近一次更新时间为 2024 年 06 月 18 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 supseven/theme-base 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 supseven/theme-base 我们能提供哪些服务?
定制开发 / 二次开发

基于 supseven/theme-base 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 4.36k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 4
  • 点击次数: 2
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 3
  • Watchers: 4
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: GPL-2.0-or-later
  • 更新时间: 2024-06-18