Overview
Bard fields are just like Replicator fields, except that the "text" blocks are implied and saved as text
in your content.
For example you may have a Replicator field in your fieldset where you use your "text" set like this:
fields:
story:
type: replicator
sets:
content: # The "text" set. It's the one with just a single text based field.
fields:
html:
type: redactor
quote:
fields:
quote:
type: text
cite:
type: text
and your data would be saved like this:
story:
-
type: text
html: "<p>This is my story</p>"
-
type: quote
quote: Oh Hai Mark
cite: Tommy Wiseau
To change to Bard, you'd need to replace your content
/html
set to text
/text
.
story:
-
type: text
text: "<p>This is my story</p>"
-
type: quote
quote: Oh Hai Mark
cite: Tommy Wiseau
Simple enough, but tedious to do it for all your entries.
If you happened to already call your text set text
with a field named text
- you're in luck and don't need to change anything.
Usage
Note: This modifies your data, so consider making a backup first.
Another Note: This doesn't support multiple locales yet.
Download this repo and place it in site/addons/Bardify
and run this command:
php please bardify
It will automate the following:
- Go through any relevant content files and change the types/fields.
- Remove the "text" set from the Replicator field.
- Change
type: replicator
totype: bard
. (Wow!) - If you were using a markdown fieldtype for the text field, it will add
markdown: true
to the Bard field.
Converting content fields to Bard
You may also convert your content
field (the text below your YAML front-matter) into a Bard field by running the following command:
php please bardify:content
It will automate the following:
- Go through any relevant content files and replace the content text with the field name of your choice.
- If you were using a markdown fieldtype, it will add
markdown: true
to the Bard field.