dd / evolutioncms-snippets-ddcolumnbuilder
There is no license information available for the latest version (6.1.0) of this package.
Outputs items (e. g. results of ddGetDucuments, ddGetMultipleField, Ditto, etc.) in multiple columns, trying to distribute them evenly.
Package info
github.com/DivanDesign/EvolutionCMS.snippets.ddColumnBuilder
Type:modxevo-snippet
pkg:composer/dd/evolutioncms-snippets-ddcolumnbuilder
6.1.0
2023-06-03 21:48 UTC
Requires
- php: >=5.4.0
- dd/evolutioncms-libraries-ddtools: >=0.60.0
This package is auto-updated.
Last update: 2026-02-06 10:09:49 UTC
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 ] ]);