brookinsconsulting / bciconextensions
eZ PublishLegacy扩展,提供了一个基本的、经过时间考验的内核覆盖类,该类被修改为提供灵活的解决方案,在eZ Publish扩展中存储共享/图标主题图标,而不是内核篡改您的eZ Publish安装。非常适合聪明开发者!
Requires
- php: >=5.0.0
- ezsystems/ezpublish-legacy-installer: *
This package is auto-updated.
Last update: 2024-09-29 05:07:50 UTC
README
此扩展是一个简单的eZ Publish平台(Legacy)内核覆盖扩展,它提供了一个基本的、经过时间考验的内核覆盖类,该类被修改为提供灵活的解决方案,在eZ Publish扩展中存储共享/图标主题图标,而不是内核篡改您的eZ Publish安装。非常适合聪明开发者!
安装并启用此内核类覆盖后,您可以覆盖检测默认功能,例如检测共享/图标主题,并且默认情况下,您可以在扩展内检测共享/图标主题。
这对于覆盖或自定义默认共享/图标主题图标非常有用。使用此解决方案,您最终可以添加自己的自定义图标,这些图标与扩展中的自定义内容类匹配,并防止内核篡改您的eZ Publish平台(Legacy)安装!
版本
-
BC图标扩展的当前版本是0.1.2
-
最后主要更新:2017年4月5日
版权
-
BC图标扩展版权所有1999 - 2017年Brookins Consulting和eZ Systems AS
-
更多信息请参阅COPYRIGHT.md
许可证
BC图标扩展基于GNU通用公共许可证。
完整的许可证协议包含在LICENSE文件中。
BC图标扩展是免费软件:您可以在自由软件基金会的GNU通用公共许可证的条款下重新分配和/或修改它,无论是许可证的第2版还是您选择的更晚版本。
BC图标扩展以希望它将是有用的方式分发,但没有任何保证;甚至没有关于适销性或特定用途的隐含保证。有关更多信息,请参阅GNU通用公共许可证。
GNU GPL赋予您在特定条件下使用、修改和重新分配BC图标扩展的权利。GNU GPL许可证随软件一起分发,请参阅LICENSE文件。
它也可在https://gnu.ac.cn/licenses/gpl.txt找到
您应已收到GNU通用公共许可证的副本,与BC图标扩展一起在LICENSE中。
如果没有,请参阅https://gnu.ac.cn/licenses/。
在GNU GPL的条款下使用BC图标扩展是免费的(作为自由)。
有关更多信息或疑问,请联系:license@brookinsconsulting.com
需求
使用BC图标扩展扩展需要以下要求
eZ Publish版本
-
请确保您使用eZ Publish版本4.x(必需)或更高版本。
-
与eZ Publish社区项目2014.11设计和测试
PHP版本
- 请确保您有PHP 5.x或更高版本。
功能
此解决方案提供以下功能
-
内核模块类覆盖类:eZWordToImageOperator
-
自定义设置/icon.ini设置和设置覆盖:settings/icon.ini.append.php
依赖关系
- 此解决方案依赖于eZ Publish Legacy和config.php中启用的内核类覆盖
内核类覆盖
此解决方案覆盖以下内核类
- PHP类:
eZWordToImageOperator
- 默认位于:kernel/common/ezwordtoimageoperator.php
此解决方案提供了以下内核类覆盖
- PHP类:
eZWordToImageOperator
- 位于:extension/bciconextensions/classes/kerneloverride/v2017.02.0/kernel/common/ezwordtoimageoperator.php
注意:此解决方案只需要一个旧版内核类的单一覆盖,该类非常稳定,并且不会(如果有的话)随着每个版本的重大变化(这对可维护性很重要)。自2014年初以来,该类没有经过修改或需要错误修复。
安装
通过Composer安装包
从您的项目根目录运行以下命令以安装包
bash$ composer require brookinsconsulting/bciconextensions dev-master;
扩展激活
必需。通过将以下内容添加到您的settings/override/site.ini.append.php
来激活此扩展
[ExtensionSettings]
# <snip existing active extensions list />
ActiveExtensions[]=bciconextensions
内核类覆盖扩展不通过ini设置激活。仍需要正常site.ini扩展激活设置才能使用此扩展及其解决方案的定制设置。
启用eZ Publish内核覆盖
内核类覆盖只有在您将以下内容添加到eZ Publish Legacy配置文件config.php
中时才能使用。
cp -va config.php-RECOMMENDED config.php;
# Edit config.php to set 'EZP_AUTOLOAD_ALLOW_KERNEL_OVERRIDE' to true. It should look like this:
define( 'EZP_AUTOLOAD_ALLOW_KERNEL_OVERRIDE', true );
重新生成内核类覆盖自动加载
重新生成内核类覆盖自动加载(必需)。
php ./bin/php/ezpgenerateautoloads.php --kernel-override;
清除缓存
可选。清除eZ Publish平台/ eZ Publish Legacy缓存(必需)。
php ./bin/php/ezcache.php --clear-all;
安装重写规则
Apache重写规则
必需。要能够访问由图标扩展提供的图像文件,您必须将以下apache mod_rewrite规则安装到您的web服务器虚拟主机配置中。
# bciconextensions required mod_rewrite rules to allow access to icon extension icon image files
RewriteRule ^/extension/[^/]+/icons/[^/]+/[^/]+/[^/]+/.* - [L]
Nginx重写规则
必需。要能够访问由图标扩展提供的图像文件,您必须将以下nginx重写规则安装到您的web服务器虚拟主机配置中。
# bciconextensions required rewrite rules to allow access to icon extension icon image files
rewrite "^/extension/([^/]+)/icons/([^/]+)/([^/]+)/([^/]+)/(.*)" "/extension/$1/icons/$2/$3/$4" break;
使用方法
一旦正确安装,此解决方案默认配置为虚拟工作。
此解决方案允许您在扩展中拥有多个图标主题。
这意味着您需要在您的安装中安装、激活和配置此扩展,然后创建您自己的自定义共享/图标主题,这些主题位于您自己的自定义扩展中。
历史
图标始终绑定到一个单一存储库。这使得eZ publish中的整个图标引擎非常不舒服,尤其是在多站点环境中。
拥有一个类似模板引擎的图标引擎,能够从不同的设计中加载模板,使用回退设计,甚至可以从扩展中加载内容,这要容易得多。
此解决方案实现了以下功能
-
通过扩展加载图标主题
-
有一个标准主题,如果当前主题中找不到图标,则引擎回退到该主题
-
有一个附加主题列表,引擎在回退到标准主题之前在此处查找图标
使用方法 - 创建您自己的图标扩展
示例配置:要在扩展中具有图标主题,请将它们放置在/extension/YOUREXTENSION/icons/YOURTHEME中,其中YOUREXTENSION是您的扩展之一的名字,YOURTHEME是一个新主题。
然后在[ExtensionSettings]中设置设置IconExtensions[]为:IconExtensions[]=YOUREXTENSION
为了使用附加主题,使用AdditionalThemeList[]命名它们,例如:AdditionalThemeList[]=blue AdditionalThemeList[]=exotic
并确保它们存在于扩展或默认存储库中。
请注意:您的图标扩展(及其主题)的目录结构必须与默认安装中提供的eZ Publish Legacy share/icons内容目录结构约定相匹配。您越符合默认期望,就越不需要ini设置配置设置覆盖。
故障排除
阅读常见问题解答
某些问题比其他问题更常见。最常见的问题列在doc/FAQ.md中
支持
如果您在此文档或常见问题解答中找不到任何问题,可以通过以下支持系统联系Brookins Consulting:http://brookinsconsulting.com/contact