# Plugin for an extended structure field with more than one kind of field set

**URL:** <https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696>\
**Category:** Plugins\
**Created:** [July 27, 2015, 4:21pm UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696 "2015-07-27T16:21:43Z")\
**Posts on this page:** 20\
**Page:** 3

<div class="post-metadata">

**Author:** ![rouge75](https://avatars.discourse-cdn.com/v4/letter/r/6de8d8/32.png) [@rouge75](https://forum.getkirby.com/u/rouge75)\
**Post date:** [November 20, 2015, 3:33pm UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/41 "2015-11-20T15:33:31Z")

</div>

@anon77445132  
You are right, and my config does have only one ‘default’.  
Sorry for the bad copy/paste.

Also, I just tried with only one language (which may appear as not really useful, except I have a site where I know I will be adding the french language later, so in preparation, I just set the languages to one entry) and the problem is the same.  
`c::set('languages', array( array( 'code' => 'en', 'name' => 'English', 'locale' => 'en_US', 'default' => true, 'url' => '/' ) ));`

---

<div class="post-metadata">

**Author:** ![timoetting](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/timoetting/32/781_2.png) [@timoetting](https://forum.getkirby.com/u/timoetting)\
**Post date:** [November 22, 2015, 2:56pm UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/42 "2015-11-22T14:56:02Z")

</div>

Hi,

As @Targoran said, there is currently a develop branch that you can find under [https://github.com/TimOetting/kirby-builder/tree/develop](https://github.com/TimOetting/kirby-builder/tree/develop) . By now, this content of this branch has been delevoped by github user dionysiusmarquis, so all credits go to him so far 😉 .

I’m planning to contribute more time to the update the next days, so you will hear from me.

@rouge75 Sorry for not replying for so long. I will have a closer look on your problem soon.

---

<div class="post-metadata">

**Author:** ![timoetting](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/timoetting/32/781_2.png) [@timoetting](https://forum.getkirby.com/u/timoetting)\
**Post date:** [November 25, 2015, 11:02am UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/43 "2015-11-25T11:02:19Z")

</div>

Great news 🎈! The **[builder field forKirby 2.2](https://github.com/TimOetting/kirby-builder)** is now available on github ✨. It replaces the old Version that is still available under another branch in the git repository 🎉.

Have fun with it.

It would be cool if those who had problems with the last version could check if their problems still occur with this new release and Kirby 2.2.2.

---

<div class="post-metadata">

**Author:** ![Targoran](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/targoran/32/733_2.png) [@Targoran](https://forum.getkirby.com/u/Targoran)\
**Post date:** [November 28, 2015, 9:26pm UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/44 "2015-11-28T21:26:06Z")

</div>

Thanks for the Update! This Plugin was keeping me from updating a current project to Kirby 2.2.

But I can confirm that since the update everything works like a charm again.  
(and I can finally use it as a submodule, yay)

Great work!

---

<div class="post-metadata">

**Author:** ![max](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/max/32/129_2.png) [@max](https://forum.getkirby.com/u/max)\
**Post date:** [December 3, 2015, 6:53pm UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/45 "2015-12-03T18:53:46Z")

</div>

Hey all,

I’m trying to find clean way to intersperse quotes in-between a series of images.

The builder is a great start, but having to add each image as a builder entry is tedious, and if an image is deleted, the builder entry has to be deleted separately.

I may try to find a way to have all of a folders images automatically added as individual builder entries.

If anyone else has come up with a solution, please let me know. Thanks!

---

<div class="post-metadata">

**Author:** ![texnixe](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/texnixe/32/5754_2.png) [@texnixe](https://forum.getkirby.com/u/texnixe)\
**Post date:** [December 3, 2015, 7:59pm UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/46 "2015-12-03T19:59:33Z")

</div>

@max Is there any kind of relation between the images and the quotes?

Possible solutions depending on whether or not there is a relationship between both:

- use a meta data file for each image that holds the quote
- just create the quotes in a structure field and intersperse each image in the folder with a quote from the structure field

---

<div class="post-metadata">

**Author:** ![max](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/max/32/129_2.png) [@max](https://forum.getkirby.com/u/max)\
**Post date:** [December 3, 2015, 8:40pm UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/47 "2015-12-03T20:40:10Z")

</div>

@texnixe thanks for the reply

There is no connection between the images and quotes, so using image meta-data is not a great solution.

The page might have 15 images, 2 quotes, and 1 description. I’d like to be able to sort the order of all the elements.

One hack would be to have an image named “place-quote-here.jpg” which could be used to position a quote among the files. But that would get messy.

Can you describe what you mean by :

> just create the quotes in a structure field and intersperse each image in the folder with a quote from the structure field

---

<div class="post-metadata">

**Author:** ![texnixe](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/texnixe/32/5754_2.png) [@texnixe](https://forum.getkirby.com/u/texnixe)\
**Post date:** [December 3, 2015, 8:45pm UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/48 "2015-12-03T20:45:04Z")

</div>

> [@max](#):
>
> Can you describe what you mean by :
> 
> just create the quotes in a structure field and intersperse each image in the folder with a quote from the structure field

Ok, if you need manual sorting and there is no kind of “system”, my suggestion will not work. My idea was pull in the images from the folder in a foreach loop and then to pull a quote after each image or after every second one or whatever.

Another idea that just crossed my mind: if you don’t want to add each image separately, combine the builder with the [multi-select field](https://github.com/distantnative/multiselect) by @distantnative

---

<div class="post-metadata">

**Author:** ![FabianSperrle](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/fabiansperrle/32/5426_2.png) [@FabianSperrle](https://forum.getkirby.com/u/FabianSperrle)\
**Post date:** [December 3, 2015, 10:08pm UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/49 "2015-12-03T22:08:34Z")

</div>

Another alternative might be to add/remove entries in the builder structure with hooks whenever an image is added/deleted. Then you would only have to bring them in the desired order.

---

<div class="post-metadata">

**Author:** ![ajrdesign](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/ajrdesign/32/736_2.png) [@ajrdesign](https://forum.getkirby.com/u/ajrdesign)\
**Post date:** [January 26, 2016, 12:57am UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/50 "2016-01-26T00:57:37Z")

</div>

This is really awesome and exactly the solution I was looking for to build my portfolio with Kirby. I’m curious if it’s possible to get the width blueprint parameter to work with these? It seems like it doesn’t really have an effect right now and it’d be nice to visually be able to represent how content takes up space on the page.

---

<div class="post-metadata">

**Author:** ![jenstornell](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/jenstornell/32/546_2.png) [@jenstornell](https://forum.getkirby.com/u/jenstornell)\
**Post date:** [March 10, 2016, 7:57am UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/51 "2016-03-10T07:57:06Z")

</div>

I just tried this thing for the first time. What I needed was to be able to add image field to page as well as sorting them.

### Support the new image field

It’s great that this plugin support the new image field that is still on the Kirby development branch.

### Allow image preview

Match made in heaven. This plugin support a preview of the image after it is added. That makes it a killer plugin for creating sortable image galleries where it’s even possible to add more fields to every image.

 ![](https://europe1.discourse-cdn.com/flex017/uploads/getkirby/original/2X/5/5c1771a3c15f01597ac4ed97748e2d31994e9920.png)

### It solved this issue

Maybe someone will fix it in the core but until then, this builder plugin seems like the way to go.

[https://forum.getkirby.com/t/image-field-not-showing-image-in-the-panel/3466](https://forum.getkirby.com/t/image-field-not-showing-image-in-the-panel/3466)

---

<div class="post-metadata">

**Author:** ![timoetting](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/timoetting/32/781_2.png) [@timoetting](https://forum.getkirby.com/u/timoetting)\
**Post date:** [June 23, 2016, 2:55pm UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/52 "2016-06-23T14:55:01Z")

</div>

## It’s Update Time! Builder 1.1.0 is out.

Kirby Builder got some new features:

- added support for snippets to preview the content of the builder entries inside the panel listing. (The idea came up in the topic [Snippetfield + Builder united for the best](https://forum.getkirby.com/t/snippetfield-builder-united-for-the-best/4451/3))
- replaced the modal as a container for the edit form. Kirby Builder now uses inline forms, that replace the entries’ preview during edit mode (see Topic [Get rid of Modals](https://forum.getkirby.com/t/structure-get-rid-of-modals/3359/4)). Unfortunately, the builder field is not yet compatible with nested structure or builder fields.
- got rid of the table style as the builder fieldsets don’t have to have comparable field sets. Therefore it was kind of pointless to display the content in a table
- the buttons to add an entry are no longer hidden behind a dropdown field but visible directly under the builder field
- the builder entries inside the panel now have a class that coresponds to the fieldset name, e.g. the entry of the fieldset `bodyText` will have the class `builder-entry-bodytext`. This class can be used in a custom panel css to give these entries specific stylings.

![Kirby builder Screenshot](https://raw.githubusercontent.com/TimOetting/kirby-builder/master/PREVIEW.gif)

Check it out on [github](https://github.com/TimOetting/kirby-builder).

---

<div class="post-metadata">

**Author:** ![texnixe](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/texnixe/32/5754_2.png) [@texnixe](https://forum.getkirby.com/u/texnixe)\
**Post date:** [June 23, 2016, 2:59pm UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/53 "2016-06-23T14:59:05Z")

</div>

> [@timoetting](#):
>
> Unfortunately, the builder field is not yet compatible with nested structure or builder fields.

Do you have any plans to include such a feature?

---

<div class="post-metadata">

**Author:** ![timoetting](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/timoetting/32/781_2.png) [@timoetting](https://forum.getkirby.com/u/timoetting)\
**Post date:** [June 23, 2016, 3:07pm UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/54 "2016-06-23T15:07:08Z")

</div>

Plans? Yes. An idea how? Not yet 😉

It is quite hard to get an insight on how the panel exactly handles the field content both in Javascript and PHP. There are still some correlation and mechanisms that I do not fully understand.

---

<div class="post-metadata">

**Author:** ![Thiousi](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/thiousi/32/13656_2.png) [@Thiousi](https://forum.getkirby.com/u/Thiousi)\
**Post date:** [June 23, 2016, 3:18pm UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/55 "2016-06-23T15:18:58Z")

</div>

That’s just great !!  
Testing now 🙂

---

<div class="post-metadata">

**Author:** ![Thiousi](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/thiousi/32/13656_2.png) [@Thiousi](https://forum.getkirby.com/u/Thiousi)\
**Post date:** [June 23, 2016, 5:38pm UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/56 "2016-06-23T17:38:15Z")

</div>

I’ve used it in the latest theme I just published:

> **[TYPED. Blogging theme for Kirby 2.3](https://gumroad.com/l/kirbytyped)**
>
> TYPED. is a great looking and fully functional website / blogging theme for Kirby CMS. It was built for Kirby 2.3 and is based on the Strongly Typed theme by HTML5UP and was adapted for Kirby. Everything you see on the website is customizable. - The...

 ![](https://europe1.discourse-cdn.com/flex017/uploads/getkirby/original/2X/3/3d677897bf0fde986465b76fec356707026ae367.png)

Thanks for this awesome plugin. It’s really making our lives easier.

---

<div class="post-metadata">

**Author:** ![thewebprojects](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/thewebprojects/32/10107_2.png) [@thewebprojects](https://forum.getkirby.com/u/thewebprojects)\
**Post date:** [June 24, 2016, 12:06am UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/57 "2016-06-24T00:06:27Z")

</div>

This is great. Excellent work. But I think the entry buttons hidden within the drop-down is cleaner/less cluttered, and it’s more scalable. Only a few entry types will lead to a pile of buttons below - probably breaking to two or more lines. This is compounded when viewed on small view ports.

---

<div class="post-metadata">

**Author:** ![flokosiol](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/flokosiol/32/468_2.png) [@flokosiol](https://forum.getkirby.com/u/flokosiol)\
**Post date:** [June 24, 2016, 4:50am UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/58 "2016-06-24T04:50:21Z")

</div>

I agree. Having this as a field option would be awesome. Then the developer could decide if a select field or buttons are displayed.

Great work, @timoetting!

---

<div class="post-metadata">

**Author:** ![Thiousi](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/thiousi/32/13656_2.png) [@Thiousi](https://forum.getkirby.com/u/Thiousi)\
**Post date:** [June 24, 2016, 6:06am UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/59 "2016-06-24T06:06:26Z")

</div>

I created an issue on github yesterday for this asking to be a field option and @timoetting will ads it soon.

---

<div class="post-metadata">

**Author:** ![nate](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/nate/32/83_2.png) [@nate](https://forum.getkirby.com/u/nate)\
**Post date:** [July 1, 2016, 9:27pm UTC](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696/60 "2016-07-01T21:27:33Z")

</div>

@timoetting Just discovering this now and it’s wonderful. It pairs well with @bastianallgeier’s [pattern plugin](https://github.com/getkirby-plugins/patterns-plugin).

In fact it pairs so well, that I wonder if there’s isn’t a good way to reduce some redundancy when the two are used together? I’m not sure if this is the right place for such a suggestion, but wanted to mention it.

[Previous page](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696.md?page=2)

[Next page](https://forum.getkirby.com/t/plugin-for-an-extended-structure-field-with-more-than-one-kind-of-field-set/1696.md?page=4)
