Kirby Table Field
The table field streamlines the management of structured data in tables, offering a user-friendly interface that simplifies data entry and enhances content creation by making tabular information effortlessly manageable.
Installation
Composer
composer require bogdancondorachi/kirby-table-field
Git Submodule
git submodule add https://github.com/bogdancondorachi/kirby-table-field.git site/plugins/table-field
Manual
Download and extract the folder to /site/plugins/kirby-table-field
Usage
Add the field to your blueprint:
fields: table: label: table type: table #optional (see props below)
Field Properties:
NameTypeDefaultDescriptionindexNumber
, Boolean1
Specifies the starting index. If set to false
, it removes the index column; in this case, sortable
also needs to be set to false
sortableBooleantrue
Toggles drag & drop sortingminColumnsNumber2
Sets the minimum required columns in the tableminColumnsNumber5
Sets the maximum allowed columns in the table
Use the field in your template:
<?php $table = $page->table()->toTable(); ?> <?php if($table != null): ?> <table> <thead> <tr> <?php foreach ($table['headers'] as $header): ?> <th><?= $header ?></th> <?php endforeach ?> </tr> </thead> <tbody> <?php foreach ($table['rows'] as $row): ?> <tr> <?php foreach ($row as $cell): ?> <td><?= $cell ?></td> <?php endforeach ?> </tr> <?php endforeach ?> </tbody> </table> <?php endif ?>
Credits
- Rafael Giezendanner for the initial table-field plugin.
License
MIT License Copyright © 2024 Bogdan Condorachi