Zum Inhalt

Feld-Shortcodes

Diese Seite ist noch im Aufbau

Das Gerüst steht, die ausführliche Beschreibung folgt. Die Angaben zu Modul, Blöcken und Einstellungen sind geprüft.

Wozu

Jedes Feld der Engine kann einen Shortcode bekommen. Damit ist ein Wert überall verfügbar — auch dort, wo kein Blockeditor zur Verfügung steht: in Widgets, in Feldwerten anderer Felder, in Inhalten aus Plugins.

Die vier Shortcodes [tw-logo], [tw-phone], [tw-email] und [tw-opening-hours] entstehen genau so.

Einstellungen

Wie der Name entsteht

Angabe im Feld Ergebnis
'shortcode' => 'mein_tag' der Tag mein_tag
'shortcode' => true der Tag entsteht aus id oder name des Felds
[
    'id'        => 'phone',
    'label'     => 'Telefon',
    'type'      => 'text',
    'shortcode' => 'tw-phone',
]

Welche Felder keinen Shortcode bekommen

Ausgeschlossen sind Feldtypen, die keinen einzelnen Wert tragen: repeater, group, sortable, title, headline, description, info, warning, nonce, button und html.

columns wird durchlaufen — Felder darin bekommen ihren Shortcode.

Verwenden

Attribute, die jeder Feld-Shortcode versteht

Attribut Standard Bedeutung
post_id leer Wert eines anderen Beitrags lesen
term_id leer Wert eines Begriffs lesen
size large Bildgröße bei Bildfeldern
class leer zusätzliche CSS-Klasse
link leer Ausgabe verlinken
loading lazy Ladeverhalten bei Bildern
fetchpriority leer Priorität bei Bildern
decoding leer Dekodierung bei Bildern
preload leer Bild vorladen

Feldspezifische Attribute werden darüber gelegt.

Wo gesucht wird

Quelle Filter
Inhaltstypen twtheme_{post_type}_fields
Optionsseiten {slug}_option_fields

Welche Optionsseiten durchsucht werden, bestimmt der Filter twtheme_option_page_slugs.

Manuell registrieren:

twtheme_register_field_shortcodes($sections, $context, $context_key = '');

Entwicklertipps

Doppelte Namen

Definieren zwei Felder denselben Tag, gewinnt das später registrierte. Mit aktivem WP_DEBUG erscheint dazu ein Hinweis im Protokoll.

Deshalb ein eindeutiges Präfix verwenden — im Parent tw-, im Child ein projektbezogenes.

Nach dem Einlesen läuft die Action twtheme_field_shortcodes_after_discover.

Weiter