

Marco Dings
Custom fields 4 Joomla
Joomla! Day UK 2016London, Cardinal palaceFebruari 13th 2016
J3.?

About me
Marco Dings ( PLT )@mdingsJ!4 Project ManagerCTO Virya Group

Conception
From DPFields to “JFields”
JFields does not exist yet ( J3.? )Based on and compatible with DPFields
Contributed by Digital PeakAllon Moritz

Benefits of Custom Fields
Add user defined data elements, fields to content elements
Extend standard Joomla extensionsUsers, Articles and Modules
Custom visualisation of Fields, where and how
Support Joomla compliant extensions out of the box

Custom Fields Joomla basics
Searchable
Multilingual
Custom extensions can be extended with custom fields

Why Custom Fields
Extend content in simple way
Display content consistently, and customised
Support Joomla compliant extensions out of the box
Custom extensions can be extended with custom fields

What’s in it for me?
Extend user profile with
AvatarCountryTelephone

What’s in it for me?
Display user-fields in article based on author

What’s in it for me?
files
youtube video by id
urls
mysql…
What would you like to add

Custom Fields characteristics
Fields similar (not yet “extended” from Joomla core)
Still difficult to add your own fields
Flexible standard visualisation using backend GUI
Custom visualisation requires “templating skills”

Available fields
Current selection
MediaArticleRadioSqlTelephoneTextTextareaTimezoneUrl
CalendarCaptchaCheckboxesColorEditorEmailImageIntegerList
UserUsergroupYes NoDPCalendar Cal-endar

Installation
While not in Joomla core get it from https://joomla.digital-peak.com/download/dpfields

Configuration
PluginHide components
Default visualisation

Configuration
(Default) visualisation
After title
Before content
After content

Fields and Field Categories
Fields ( hold your data )
Field Categories are used to group fields for input, appear as named tabswith the item

Fields
Fields displayed sequentially
No conditional fields

Field Categories
One Tab per Field Category
Tab named after Field Category
One or more tabs

When fields are displayed
Categorie and TagsFields can be assigned to
Categories ( multiple )
Tags
Fields will only show in the defined context of category or tags

Where to display
Basic Layout
Editor Button
Advanced

Basic Layout
After Title
Before Content
After Main
none

Editor Button

Editor Button
Use editor plugin
Will open list with fields

Editor Button
Select field
Code gets inserted
{{#dpfields id=9}}{{value}}{{/dpfields}}

Portability
{{#dpfields id=9}}{{value}}{{/dpfields}}
Should be using fieldname iso id value for portability of con-tent
Same fields in different installations could have different id’s
Use alias{{#dpfields alias=avatar}}{{value}}{{/dpfields}}

Advanced display options
Changing appearances• Template overrides
• Alternate layouts
• Jlayout

Template overrides
Change the default behaviour of contenthttps://docs.joomla.org/How_to_override_the_output_from_the_Joomla!_core
Hoe the article, blog .. shows for your template
Create via the backend
Templates/[templatename]/html/…

Alternate layouts
Add alternate layout
NO backend GUI
In addition to Template overrides
Can be selected for the content in article, menu definition
Change the default behaviour of contenthttps://docs.joomla.org/How_to_override_the_output_from_the_Joomla!_core

Combining with other Overcome limitations with 3rd party
Articles anywhere
{articles cat:bedrijven}{layout:bedrijven}{/articles}
Blog layout with article alternate layouts

JLayouts
Building blocks of views https://docs.joomla.org/J3.x:Sharing_layouts_across_views_or_extensions_with_JLayout
Title
Pagination
Readmore
Fields

JLayouts template overrides
templateAdd you layouts to
Templates/[templatename]/html/…

JLayouts components overrides
Have different fields representation per componentThe same Field-type could have a different representation for users as opposed to articles
Templates/[templatename]/html/component/[

Code snippitsSamples of code to use in your overrides
More and downloadable content from
http://viryagroup.com

Code snippits
Image in article

Code snippits
Use aliases instead of id’s
Simply map them once
Use your own JLayouts
