PHPackages                             amici/craft-super-dynamic-fields - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Parsing &amp; Serialization](/categories/parsing)
4. /
5. amici/craft-super-dynamic-fields

ActiveCraft-plugin[Parsing &amp; Serialization](/categories/parsing)

amici/craft-super-dynamic-fields
================================

Use JSON templates as field options for dropdown, radio or checkboxes.

5.0.1(2y ago)310.8k↑30%[3 issues](https://github.com/amici-infotech/craft-super-dynamic-fields/issues)proprietaryPHPPHP ^8.2CI failing

Since Apr 12Pushed 2y ago2 watchersCompare

[ Source](https://github.com/amici-infotech/craft-super-dynamic-fields)[ Packagist](https://packagist.org/packages/amici/craft-super-dynamic-fields)[ RSS](/packages/amici-craft-super-dynamic-fields/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (2)Dependencies (1)Versions (27)Used By (0)

Super Dynamic Fields Plugin for Craft CMS 3
===========================================

[](#super-dynamic-fields-plugin-for-craft-cms-3)

Instead of adding key/values in field settings, You can now include any Craft CMS template where you can add JSON variable for options. If you have tons of fields with options and you dont want to add options in each field, this is best plugin for you. This field produce Checkboxes, Radio buttons, Select dropdown (single or multiple) selections. This fieldtype supports backend and frontend channel forms including normal fields, GRID and Fluid field types. Most important use is, As it comes from template, You can use any Craft CMS tags to generate options. This Addon just not stick with label and value fields for option. It gives you custom field support too. In the same JSON, you can pass any variables and fetch those variable at frontend with simple Craft CMS tags. Find more info on our docs.

---

### Installation

[](#installation)

Open your terminal and go to your Craft project:

```
cd /path/to/project
```

Run this command to load the plugin:

```
composer require amici/craft-super-dynamic-fields
```

In the Control Panel, go to Settings → Plugins and click the “Install” button for Super Dynamic Fields.

---

### Usage

[](#usage)

Create new field and select any of super dynamic field (Checkboxes, Radio or Dropdown) and scroll to the settings. You have to select JSON template you have added options of and that's it!

You have to follow proper JSON format to add options. There is 2 required JSON fields. i.e., "label" and "value". You can use "default" as "yes" to make any option as default selected. Example of JSON:

```
[
  {"value" : "option1", "label" : "Option 1"},
  {"value" : "option2", "label" : "Option 2", "default" : "yes"},
  {"value" : "option3", "label" : "Option 3"},
]
```

"value", "label" and "default" is pre defined variables of JSON. You can also pass anything else in JSON that will become varibale custom field automatically.

```
[
  {"label": "--" , "value" : "" , "default" : "yes", "link" : ""},
  {"label": "Large" , "value" : "lg", "link" : "Click Here"},
  {"label": "Medium" , "value" : "md", "link" : "Click Here"}
]
// In this example, link is a custom field.
```

```
{% set entries = craft.entries.section("sectionName").limit(11).all() %}
[
  {"label": "--" , "value" : "" , "default" : "yes", "url_title" : ""},
  {% for item in entries %}
    {"label": "{{ item.title }}" , "value" : "{{ item.getId() }}", "slug" : "{{ item.slug }}"}
    {% if not loop.last %},{% endif %}
  {% endfor %}
]
// In this example, slug is a custom field.
```

---

### Template Code

[](#template-code)

You can get Value, Label and other custom fields from selected JSON options very easily.

For Singles like Dropdown and Radio Buttons:

```
// Render Value
  {{ entry.myField }}
  {{ entry.myField.getValue() }}
  {{ entry.myField.value }}

// Render Label
  {{ entry.myField.getLabel() }}
  {{ entry.myField.label }}

// Render Extra fields:
// (extras will always be an array that have other fields from json option.)
  {% set extras = entry.myField.getExtras() %}
  {{ extras.field1 }}
  {{ extras.field2 }}
```

For Multi like Checkboxes and Multi select fields:

```
{% for item in entry.myField %}
  // Render Value
    {{ item.myField }}
    {{ item.myField.getValue() }}
    {{ item.myField.value }}

  // Render Label
    {{ item.myField.getLabel() }}
    {{ item.myField.label }}

  // Render Extra fields:
  // (extras will always be an array that have other fields from json option.)
    {% set extras = item.myField.getExtras() %}
    {{ extras.field1 }}
    {{ extras.field2 }}
{% endfor %}
```

### Documentation

[](#documentation)

Visit the [Super Dynamic Fields](https://docs.amiciinfotech.com/craft-cms/super-dynamic-fields-craft) for all documentation, guides, pricing and developer resources.

### Support

[](#support)

Get in touch with us via the [Amici Infotech Support](https://amiciinfotech.com/contact) or by [creating a Github issue](https://github.com/amici-infotech/craft-super-dynamic-fields/issues)

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance0

Infrequent updates — may be unmaintained

Popularity27

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity79

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~63 days

Recently: every ~22 days

Total

24

Last Release

779d ago

Major Versions

1.0.7.1 → 2.0.0.12022-12-10

1.0.7.2 → 2.0.0.42023-06-13

1.0.7.4 → 2.0.0.52023-06-14

1.0.8 → 2.0.1.12024-01-26

2.0.1.1 → 5.0.02024-03-27

PHP version history (2 changes)2.0.0-alpha.1PHP ^8.0.2

5.0.0PHP ^8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/a7ce33eed8b6049a844edbc265f52eea4469fcd9fc40e2a318b3a3e6437ae2a9?d=identicon)[amici-infotech](/maintainers/amici-infotech)

---

Top Contributors

[![amici-infotech](https://avatars.githubusercontent.com/u/20450552?v=4)](https://github.com/amici-infotech "amici-infotech (41 commits)")

---

Tags

jsonoptionsdropdownselectdynamiccustommulti-selectcheckboxesradioamici

### Embed Badge

![Health badge](/badges/amici-craft-super-dynamic-fields/health.svg)

```
[![Health](https://phpackages.com/badges/amici-craft-super-dynamic-fields/health.svg)](https://phpackages.com/packages/amici-craft-super-dynamic-fields)
```

###  Alternatives

[justinrainbow/json-schema

A library to validate a json schema.

3.6k316.9M612](/packages/justinrainbow-json-schema)[mtdowling/jmespath.php

Declaratively specify how to extract elements from a JSON document

2.0k472.8M135](/packages/mtdowling-jmespathphp)[jms/serializer

Library for (de-)serializing data of any complexity; supports XML, and JSON.

2.3k135.8M851](/packages/jms-serializer)[jms/serializer-bundle

Allows you to easily serialize, and deserialize data of any complexity

1.8k89.3M627](/packages/jms-serializer-bundle)[colinodell/json5

UTF-8 compatible JSON5 parser for PHP

30422.2M45](/packages/colinodell-json5)[clue/ndjson-react

Streaming newline-delimited JSON (NDJSON) parser and encoder for ReactPHP.

15467.7M16](/packages/clue-ndjson-react)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
