dd/evolutioncms-snippets-ddcolumnbuilder
Composer 安装命令:
composer require dd/evolutioncms-snippets-ddcolumnbuilder
包简介
Outputs items (e. g. results of ddGetDucuments, ddGetMultipleField, Ditto, etc.) in multiple columns, trying to distribute them evenly.
关键字:
README 文档
README
Outputs items (e. g. results of ddGetDucuments, ddGetMultipleField, Ditto, etc.) in multiple columns, trying to distribute them evenly.
Requires
- PHP >= 5.4
- (MODX)EvolutionCMS >= 1.1
- (MODX)EvolutionCMS.libraries.ddTools >= 0.60
Installation
Using (MODX)EvolutionCMS.libraries.ddInstaller
Just run the following PHP code in your sources or Console:
//Include (MODX)EvolutionCMS.libraries.ddInstaller require_once( $modx->getConfig('base_path') . 'assets/libs/ddInstaller/require.php' ); //Install (MODX)EvolutionCMS.snippets.ddColumnBuilder \DDInstaller::install([ 'url' => 'https://github.com/DivanDesign/EvolutionCMS.snippets.ddColumnBuilder', 'type' => 'snippet' ]);
- If
ddColumnBuilderis not exist on your site,ddInstallerwill just install it. - If
ddColumnBuilderis already exist on your site,ddInstallerwill check it version and update it if needed.
Manually
1. Elements → Snippets: Create a new snippet with the following data
- Snippet name:
ddColumnBuilder. - Description:
<b>6.1</b> Outputs items (e. g. results of ddGetDucuments, ddGetMultipleField, Ditto, etc.) in multiple columns, trying to distribute them evenly.. - Category:
Core. - Parse DocBlock:
no. - Snippet code (php): Insert content of the
ddColumnBuilder_snippet.phpfile from the archive.
2. Elements → Manage Files
- Create a new folder
assets/snippets/ddColumnBuilder/. - Extract the archive to the folder (except
ddColumnBuilder_snippet.php).
Parameters description
-
source_items- Desctription: The source items.
- Valid values:
stringarray
- Required
-
source_itemsDelimiter- Desctription: The source items delimiter (used only if
source_itemsis string). - Valid values:
string - Default value:
'<!--ddColumnBuilder-->'
- Desctription: The source items delimiter (used only if
-
columnsNumber- Desctription: The number of columns to return.
- Valid values:
integer - Default value:
1
-
minItemsInColumn- Desctription: The minimum number of items in one column.
- Valid values:
integer0— any
- Default value:
0
-
orderBy- Desctription: How to sort items?
- Valid values:
'column'— first fills up the first column, then second, etc ([[1, 2, 3], [4, 5, 6], [7, 8, 9]])'row'— fills up by rows ([[1, 4, 7], [2, 5, 8], [3, 6, 9]])
- Default value:
'column'
-
tpls_column- Desctription: The template for column rendering.
Available placeholders:[+items+]— items[+columnNumber+]— number of column
- Valid values:
stringChunkNamestring— use inline templates starting with@CODE:
- Default value:
'@CODE:<div>[+items+]</div>'
- Desctription: The template for column rendering.
-
tpls_columnLast- Desctription: The template for last column rendering.
Available placeholders:[+items+]— items[+columnNumber+]— number of column
- Valid values:
stringChunkNamestring— use inline templates starting with@CODE:
- Default value: =
tpls_column
- Desctription: The template for last column rendering.
-
tpls_outer- Desctription: Wrapper template.
Available placeholders:[+snippetResult+]— the snippet result.[+columnsTotal+]— the actual number of columns[+itemsTotal+]— the total number of gettingsource_items
- Valid values:
stringChunkNamestring— use inline templates starting with@CODE:
- Default value: — (is not used)
- Desctription: Wrapper template.
-
placeholders- Desctription:
Additional data has to be passed into the result string.
Nested objects and arrays are supported too:{"someOne": "1", "someTwo": "test" }=>[+someOne+], [+someTwo+].{"some": {"a": "one", "b": "two"} }=>[+some.a+],[+some.b+].{"some": ["one", "two"] }=>[+some.0+],[+some.1+].
- Valid values:
stringJsonObject— as JSONstringHjsonObject— as HJSONstringQueryFormatted— as Query string- It can also be set as native PHP object or array (e. g. for calls through
\DDTools\Snippet::runSnippetor$modx->runSnippet):arrayAssociativeobject
- Default value: —
- Desctription:
Additional data has to be passed into the result string.
Examples
Run the snippet through \DDTools\Snippet::runSnippet without DB and eval
//Include (MODX)EvolutionCMS.libraries.ddTools require_once( $modx->getConfig('base_path') . 'assets/libs/ddTools/modx.ddtools.class.php' ); //Run (MODX)EvolutionCMS.snippets.ddColumnBuilder \DDTools\Snippet::runSnippet([ 'name' => 'ddColumnBuilder', 'params' => [ 'source_items' => [ 'Item 1', 'Item 2', 'Item 3', ], 'columnsNumber' => 2 ] ]);
Links
dd/evolutioncms-snippets-ddcolumnbuilder 适用场景与选型建议
dd/evolutioncms-snippets-ddcolumnbuilder 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1 次下载、GitHub Stars 达 0, 最近一次更新时间为 2023 年 06 月 03 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「modx」 「MODX Evo」 「evo」 「modx evolution」 「evo cms」 「evolutioncms」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 dd/evolutioncms-snippets-ddcolumnbuilder 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 dd/evolutioncms-snippets-ddcolumnbuilder 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 dd/evolutioncms-snippets-ddcolumnbuilder 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Evolutionize the way you write Laravel code
Snippet runs necessary snippets with necessary params.
A snippet for sending users' feedback messages to a required email, slack and telegram chats or SMS through sms.ru. It is very useful along with ajax technology.
A snippet for fetching and parsing resources from the document tree or custom DB table by a custom rule.
Tools for modifying strings.
统计信息
- 总下载量: 1
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 32
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: Unknown
- 更新时间: 2023-06-03