brookinsconsulting/bcxmltemplateoverrideconditions

eZ Publish Legacy 内核覆盖类扩展,提供了一种稳定且灵活的解决方案,增加了许多额外的 template override.ini 匹配条件(比默认支持的多),用于 ezxml 输出标签模板覆盖。提供更强大的模板覆盖控制!

dev-master 2015-06-16 03:42 UTC

This package is auto-updated.

Last update: 2024-09-29 04:08:46 UTC


README

此扩展实现了一个解决方案,以提供额外的 override.ini 规则匹配条件支持。为 'eZXMLOutputHandler' 类提供基于扩展内核类的覆盖。

版本

  • BC XML Template Override Conditions 的当前版本为 0.1.0

  • 最后重大更新:2015年5月31日

版权

  • BC XML Template Override Conditions 版权所有 1999 - 2016 Brookins Consulting 和 1999 - 2016 eZ Systems AS。

  • 更多信息请参阅:COPYRIGHT.md

许可证

BC 文档阅读器采用 GNU 通用公共许可证。

完整的许可协议包含在LICENSE文件中。

BC 文档阅读器是自由软件:您可以在自由软件基金会发布的 GNU 通用公共许可证的条款下重新分发和/或修改它,无论是许可证的第2版还是您选择的任何后续版本。

BC 文档阅读器以希望它是有用的方式分发,但没有任何保证;甚至没有关于适销性或针对特定目的的隐含保证。有关详细信息,请参阅 GNU 通用公共许可证。

GNU GPL 允许您在特定条件下使用、修改和重新分发 BC 文档阅读器。GNU GPL 许可证与软件一起分发,请参阅文件 doc/LICENSE。

它也可在https://gnu.ac.cn/licenses/gpl.txt找到。

您应该已收到 GNU 通用公共许可证的副本,与 BC 文档阅读器一起在 doc/LICENSE 中。如果没有,请参阅https://gnu.ac.cn/licenses/

根据 GNU GPL 使用 BC 文档阅读器是免费的(作为自由)。

如需更多信息或提问,请联系:license@brookinsconsulting.com

要求

使用 BC XML Template Override Conditions 扩展有以下要求

eZ Publish 版本

  • 确保您使用 eZ Publish 版本 5.x(必需)或更高版本。

  • 与 eZ Publish Community Project 2014.11 设计和测试

PHP 版本

  • 确保您有 PHP 5.x 或更高版本。

特性

依赖关系

  • 此解决方案依赖于 eZ Publish Legacy 和在 config.php 中启用的内核类覆盖

内核类覆盖

此解决方案覆盖以下内核类

  • PHP 类:eZXMLOutputHandler - 默认位于:kernel/classes/datatypes/ezxmltext/ezxmloutputhandler.php

此解决方案提供以下内核类覆盖

  • PHP 类:eZXMLOutputHandler - 位于:extension/bcxmltemplateoverrideconditions/classes/kerneloverride/kernel/classes/datatypes/ezxmltext/ezxmloutputhandler.php

注意:此解决方案只需要覆盖一个非常稳定且不太可能(如果有的话)随版本更新而改变的旧版内核类(这对于可维护性很重要)。该类自2012年底以来未进行修改或需要修复错误

添加了模板覆盖规则匹配条件

此解决方案提供了以下ezxmltags模板覆盖规则匹配条件,您可以在override.ini设置中使用

  • 默认提供于eZ Publish

    • attribute_identifier
  • 由bcxmltemplateoverrideconditions添加

    • object
    • class
    • class_identifier
    • remote_id
    • node
    • node_remote_id
    • depth
    • url_alias
    • parent_node
    • parent_node_remote_id
    • parent_object_remote_id
    • parent_class
    • parent_class_identifier

注意:可以通过修补内核覆盖类和文档添加更多匹配条件。我们支持几乎所有可能的匹配条件(除去状态和一些其他更晦涩且很少使用的条件)。

安装

通过Composer安装扩展

从您的项目根目录运行以下命令以安装扩展

bash$ composer require brookinsconsulting/bcxmltemplateoverrideconditions dev-master;

扩展激活

内核类覆盖扩展不通过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平台缓存(必需)。

php ./bin/php/ezcache.php --clear-all;

使用方法

一旦正确安装,此解决方案默认配置为虚拟工作。

您可以在设置中使用额外的override.ini规则匹配条件来使用此解决方案的功能

故障排除

阅读FAQ

一些问题比其他问题更常见。最常见的问题列在doc/FAQ.md

支持

如果您发现此文档或FAQ未处理的问题,您可以通过支持系统联系Brookins Consulting: http://brookinsconsulting.com/contact