se7enxweb/ezxmlinstaller-ls 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

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

se7enxweb/ezxmlinstaller-ls

Composer 安装命令:

composer require se7enxweb/ezxmlinstaller-ls

包简介

The eZ XML Installer extension is a plattform to define proccesses for eZ Publish and execute them.

README 文档

README

eZ XML Installer extension 0.0.1 README


What is the eZ XML Installer extension?
=======================================

   The eZ XML Installer extension is a plattform to define 
   proccesses for eZ Publish and execute them.
   Proccesses will be defined in XML. The XML can be provided as
   completed XML or as eZ Publish Template.
   This template can contain a set of variables which will the user be ask for
   before the processes will be executed.
   The XML is a set of actions. Each action is bundled to a handler
   which will proccess this action.
   The set of handlers can be extended by custom handers.


eZ XML Installer version
========================

The current version of eZ XML Installer is 0.0.1.
You can find details about changes for this version in
doc/changelogs/


License
=======

This software is licensed under the GNU General Public License. The complete
license agreement is included in the LICENSE file. For more information
or questions please contact info@ez.no

Requirements
============

The following requirements exists for using eZ XML Installer extension:

o  eZ Publish version:

   Make sure you use eZ Publish version 3.9 or higher.

o  PHP version:

   as indicated in your eZ Publish version requirements


Installation
============

Please read the INSTALL file for installation instructions.


Creating a custom proccess XML file
===================================
A proccess XML files will be defined with a enclosing <eZXMLImporter> tag.
This tag contains a set of proccess definitions.
Here is an example:
<eZXMLImporter>
    <ProccessInformation comment="Content in media sections" />
    <MyCustomAction>
        <DoThis value1="foo" value2="bar" />
        <DoThat myvalue="lorem" myothervalue="ipsum" />
    </MyCustomAction>
</eZXMLImporter>

The XML structure of each action is defined by the handler.
The proccess definition will be executed step by step downwards from top.

The eZXMLImporter tag may contain some attributes which will be called "settings".
This can be global settings. E.g. where are some binary files located.

Internal / External references
------------------------------
The XML can contain internal or external referneces.
Currently are only "node_id" and "object_id" as external references are supported.
References can be only used by actions where the handler supports references.
* Internal reference definition
  References will be defined inside the action definition.
  Example:
  <SetReference attribute="object_id" value="CONTENT_MANAGER_GROUP" />
  The "attribute" attribute will define which variable of the current action will be defined as reference.
  The "value" attribute will name the variable the reference can be used with.
* External reference definition
  External references can be used without defintion.
  It is important to only use values which will exist in the installation.
  Otherwise this can cause errors and data inconsistencies.
* Usage of internal references
  Internal references can be used with the "internal:" prefix.
  References are not supported everywhere. Please consult the handler documentation where references can be used.
  Example:
  <RoleAssignment roleID="8" assignTo="internal:CONTENT_MANAGER_GROUP" />
  In this example role with id 8 will be assigned to the newly created group with reference "CONTENT_MANAGER_GROUP".
* Usage of external references
  Internal references can be used with the "node_id:" or "object_id:" prefix.
  References are not supported everywhere. Please consult the handler documentation where references can be used.

Default XML Installer handler
-----------------------------
Here is a short introduction in the hanlder shipped with this extension
* ProccessInformation
  This simple action will only display the given comment and increase the internal step counter.
* AssignRoles
  This action can be used to assign existing roles to user or user groups.
* CreateContent
  This action is used to create content objects based on existing content classes.
  Please note that currently not all datatypes are supported.
* SetSettings
  This action can create new or modify existing setting files.
  Please note that the standard eZ Publish mechanism is used.
  This may cause a loss of comments or unsupported ini usage.


Creating a custom proccess template file
========================================
The template based proccess definition is an extended version of the file based definition.
The XML structure must be defined as described.
The template must be located under templates/xmlinstaller in a valid design.
But it is possible to define a set of variables which will be requested and can be used in the xml.
Futhermore it is possible to use standard template functionallity.

Defing the XML structure
------------------------
The XML must be defined in a variable block with the name "xml_data".
Example:
{set-block variable='xml_data'}
<?xml version = '1.0' encoding = 'ISO-8859-1'?>
<eZXMLImporter>
[...]
</eZXMLImporter>
{/set-block}

Defining and using template variables
-------------------------------------
To request custom input before processing the "tpl_info" variable can be defined in the template.
E.g.
{set $tpl_info=hash(
        'var1',      hash(   'info',     'Number of objects',
                             'type',     'int' ),
        'var2',      hash(   'info',     'URL to siteaccess',
                             'type',     'string',
                             'default',  'http://mmc.ez' ))}
This will request two variables. "var1" and "var2"
The hash of each variable defines the additional information.
* info:    The info text for the request.
* type:    The type of the variable (int or string)
* default: The default value (used when input is empty).

The variabled will be rquested before proccessing and can thus be used in the template as named.
E.g. {$var1} and {$var2}.


Proccessing the XML
===================
The xmlinstaller.php script will proccess the XML.

The script is located in extension/ezxmlinstaller/bin/php/.

It can be used in two ways:
* Proccessing a template:
  php extension/ezxmlinstaller/bin/php/xmlinstaller.php --template=demo/mynewsiteaccess
  In this case the name of the template (without .tpl, but with additional directories)
  must be given as "template" parameter.
* Proccessing a xml file:
  php extension/ezxmlinstaller/bin/php/xmlinstaller.php --file=path/to/my/xml/demo.xml
  In this case the relative or absolute path to a valid xml file must be given as "file" parameter.


Creating a custom handler
=========================
possible, but not documented yet.


Where to get more help
======================

eZ Publish forums: http://ez.no/community/forum


Troubleshooting
===============

1. Read the FAQ
   ------------

   Some problems are more common than others. The most common ones are listed
   in the FAQ file.

2. Support
   -------

   If you have find any problems not handled by this document or the FAQ you
   can contact eZ system trough the support system:
   http://ez.no/services/support

se7enxweb/ezxmlinstaller-ls 适用场景与选型建议

se7enxweb/ezxmlinstaller-ls 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1 次下载、GitHub Stars 达 1, 最近一次更新时间为 2023 年 12 月 25 日, 在 PHP 生态内属于活跃度较高的组件。

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

围绕 se7enxweb/ezxmlinstaller-ls 我们能提供哪些服务?
定制开发 / 二次开发

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

BUG 修复 & 性能优化

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

项目外包 & 长期维护

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

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

统计信息

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

GitHub 信息

  • Stars: 1
  • Watchers: 0
  • Forks: 13
  • 开发语言: PHP

其他信息

  • 授权协议: GPL-2.0
  • 更新时间: 2023-12-25