b13/bolt
Composer 安装命令:
composer require b13/bolt
包简介
Bolt - An easy TYPO3 integration basis
README 文档
README
Introduction
This package is a TYPO3 extension that makes integration work easier.
Simply put, the extension allows running a TYPO3 instance without any
database driven TypoScript template (sys_template) records and without
PageTsConfig page record entries, enabling file-driven (as in: not database-driven)
deployment of TypoScript and PageTsConfig. This is done by connecting a Site configuration
(those .yaml site configuration files) with a "Site extension" and using some simple
events or hooks of the TYPO3 core.
Background
We consider it best practice to run a site and all custom Backend Layouts, TypoScript, PageTS,
Fluid templates and similar in one place: In a "site extension". We prefix them with "site_", something
like site_myproject. This site extension is the general entry point for configuration of a
single Site page tree.
The "bolt" extension provides a Site configuration setting called "sitePackage" that connects a Site with this site package / extension. This is simply an entry in the Site's .yaml file, and can be manually added to the file, or clicked in the TYPO3 "Sites" Backend module.
Providing "everything" as files without database records is in general possible for nearly everything in current TYPO3, except for sys_template records and PageTsConfig settings. The extension thus provides some hooks that look up the connected "site extension" of a site, to TypoScript "constants" and "setup", as well as PageTsConfig, from files, provided by the site extension. This avoids these database entries.
Installation
-
Require the extension via composer (
composer require b13/bolt) or load it from TER (extension name "bolt") using the extension manager. -
Create a site extension, having at least a composer.json and an ext_emconf.php file, prefixed with
site_. Have this extension loaded. -
Either manually edit the Site Configuration
.yamlfile and addsitePackage: '<my_extension_key>'as top-level key, or edit the Site Configuration in the Backend "Sites" module, select the site package / extension in the drop and save it. -
Add extension file
Configuration/TypoScript/constants.typoscript. This is the main TypoScript "constants / settings" entry point for this Site in the page tree. It should typically contain@importlines to load further "static includes" from other extensions as well as own TypoScript provided by the site extension itself. This file is automatically loaded by convention using a hook or event of the bolt extension. Since TYPO3 v12, the Backend "Template Analyzer" reflects such includes. -
Add extension file
Configuration/TypoScript/setup.typoscript. This is the main TypoScript "setup" entry point for this Site in the page tree. It should typically contain@importlines to load further "static includes" from other extensions as well as own TypoScript provided by the site extension itself. This file is automatically loaded by convention using a hook or event of the bolt extension. Since TYPO3 v12, the Backend "Template Analyzer" reflects such includes. -
Add extension file
Configuration/PageTs/main.tsconfig(if needed). This is the main PageTsConfig entry point for this Site in the page tree. It should typically contain further@importlines. This file is automatically loaded by convention using a hook or event of the bolt extension. -
Add further files like Frontend rendering Templates, ViewHelper classes or TCA overrides as needed: Make the site extension the single entry point of your Site configuration that provides all site specific settings!
Disabled Backend settings
Extension bolt adds default PageTsConfig that disallows adding new sys_template records in the
backend, and it hides the PageTsConfig related fields when editing page records. Those defaults are
added in ext_tables.php, they follow our best practices, but can be rewritten again if really needed.
License
The extension is licensed under GPL v2+, same as the TYPO3 Core. See the LICENSE file.
Sharing our expertise
Find more TYPO3 extensions we have developed that help us deliver value in client projects. As part of the way we work, we focus on testing and best practices to ensure long-term performance, reliability, and results in all our code.
b13/bolt 适用场景与选型建议
b13/bolt 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 211.08k 次下载、GitHub Stars 达 28, 最近一次更新时间为 2019 年 08 月 21 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「TYPO3 CMS」 「TypoScript」 「Integrators」 「Site Extension」 「Site Package」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 b13/bolt 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 b13/bolt 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 b13/bolt 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
GraphQL authentication for your headless Craft CMS applications.
TypoScript code extension
Set Links with a specific language parameter
Supercharged text field validation.
TYPO3 CMS extension to create gallery content element with preset crop ratios and pagination
Connects the TypoScript linter from Martin Helmich with grumphp and adds some sniffer.
统计信息
- 总下载量: 211.08k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 28
- 点击次数: 14
- 依赖项目数: 4
- 推荐数: 0
其他信息
- 授权协议: GPL-2.0-or-later
- 更新时间: 2019-08-21