ACF-Kompatibilitätsschicht — get_field() funktioniert einfach | Field Forge - Benutzerdefinierte Felder, gebaut für Geschwindigkeit
Herunterladen Anmelden

ACF-Kompatibilitätsschicht — get_field() funktioniert einfach

Was sich in der Kompatibilitätsschicht befindet

Field Forge implementiert diese ACF-Funktionen nativ:

Kernfeldfunktionen

php get_field($field_name, $post_id = null, $format_value = true); the_field($field_name, $post_id = null, $format_value = true); get_fields($post_id = null, $format_value = true); get_field_object($field_name, $post_id = null, $format_value = true, $load_value = true); get_field_objects($post_id = null, $format_value = true, $load_value = true); update_field($field_name, $value, $post_id = null); delete_field($field_name, $post_id = null);

Wiederholungs- und flexible Inhaltsloop-Funktionen

php have_rows($field_name, $post_id = null); the_row($format_value = false); get_row($format_value = false); get_row_index(); get_row_layout(); reset_rows();

Unterfeldfunktionen (innerhalb von Wiederholungs-/Gruppen-/Flex-Loop)

php get_sub_field($field_name, $format_value = true); the_sub_field($field_name, $format_value = true); get_sub_field_object($field_name, $format_value = true, $load_value = true); update_sub_field($field_name_or_selector, $value, $post_id = null);

Feldgruppenfunktionen

php acf_get_field_group($id_or_key); acf_get_field_groups($args = []); acf_get_fields($field_group);

Kompatibilität der Optionsseite

php // Sowohl die 'options' als auch die 'option' Pseudo-IDs funktionieren get_field('site_logo', 'options'); get_field('site_logo', 'option');

Benutzerfeldkompatibilität

php get_field('bio', 'user_123'); update_field('bio', $new_bio, 'user_123');

Gutenberg-Blockregistrierung

php acf_register_block_type([ 'name' => 'hero', 'title' => 'Hero Section', 'render_callback' => 'render_hero_block', 'category' => 'theme', 'icon' => 'cover-image', ]);

Jede oben genannte Funktion funktioniert identisch zu ACF. Gleiche Parameter, gleiche Rückgabewerte, gleiches Verhalten.


Wie es funktioniert

Wenn Field Forge aktiv ist:

  1. ACFs globale Funktionen werden von Field Forge definiert über function_exists() Guards
  2. Aufrufe leiten zu Field Forges Speicher (der benutzerdefinierten wp_fieldforge_values Tabelle)
  3. Rückgabewerte entsprechen dem ACF-Format — Arrays, Objekte, Strings, WP_Image / WP_Post / WP_User Objekte wo angebracht
  4. $format_value Parameter wird respektiert — Übergabe von false gibt rohe Werte zurück, true gibt formatierte Werte zurück (gleich wie ACF)

Wenn ACF ebenfalls auf derselben Seite aktiv ist (während der Migration), werden die Funktionen von Field Forge nicht registriert — ACF hat Vorrang. Nachdem Sie ACF deaktiviert haben, übernehmen die Versionen von Field Forge. Das bedeutet, dass Sie Field Forge neben ACF ohne Konflikte während des Tests installieren können.


Warum das wichtig ist

Migration ohne Theme-Neuschreibungen

Die meisten „ACF-Alternativen“-Plugins erfordern, dass Sie jeden get_field() Aufruf in Ihrem Theme umschreiben, um ihre eigene API zu verwenden. Für eine Seite mit 200 Template-Dateien und über 500 Feldreferenzen ist das Wochen Arbeit und ein hohes Risiko für Regressionen.

Die Kompatibilitätsschicht von Field Forge reduziert die Migration auf:

  1. Installieren Sie Field Forge neben ACF
  2. Führen Sie den Importer für Feldgruppen + Werte aus
  3. Deaktivieren Sie ACF
  4. Testen Sie die Seite — Templates sollten identisch gerendert werden
  5. Field Forge liefert jetzt die gleichen Daten, die ACF früher geliefert hat

Null Template-Änderungen. Null Risiko von „Ich habe vergessen, dieses eine Template zu aktualisieren.“

SCF-Kompatibilität kostenlos

Secure Custom Fields (der WordPress.org Fork von ACF, erstellt im Oktober 2024) verwendet die gleichen Template-Funktionen wie ACF — get_field(), have_rows(), usw. Da die Kompatibilitätsschicht von Field Forge die ACF-API implementiert, funktioniert sie auch für SCF-Code. Wenn Sie SCF verwenden und zu Field Forge migrieren möchten, derselbe Prozess, dieselbe Kompatibilitätsschicht.

Kompatibilität mit Drittanbieter-Plugins

Plugins, die mit ACF integriert sind, rufen normalerweise die globalen Funktionen von ACF auf. Beliebte Beispiele:

  • WPGraphQL für ACF — liest acf_get_field_groups() und acf_get_fields()
  • Elementor Dynamic Tags — liest get_field() für dynamische Inhaltstags
  • Beaver Themer — liest get_field() für Template-Teile
  • Toolsets ACF-Integration — liest die ACF-API

Die meisten dieser Plugins funktionieren weiterhin, wenn Sie von ACF zu Field Forge wechseln, da die Kompatibilitätsschicht die gleiche API bereitstellt.

acf_register_block_type() funktioniert

ACFs Blockregistrierungsfunktion ist eines der häufigsten ACF Pro-Features, auf die Agenturen angewiesen sind. Benutzerdefinierte Gutenberg-Blöcke, die über acf_register_block_type() registriert werden, funktionieren nach der Migration weiterhin:

“`php // Dieser Code funktioniert unverändert mit aktivem Field Forge anstelle von ACF acf_register_block_type([ ‘name’ => ‘feature-card’, ‘title’ => __(‘Feature Card’), ‘render_callback’ => ‘my_feature_render_callback’, ‘category’ => ‘theme’, ‘icon’ => ‘star-filled’, ]);

function my_feature_render_callback($block) { $title = get_field(‘title’); // Funktioniert $icon = get_field(‘icon’); // Funktioniert // … HTML rendern } “`


Was sich NICHT in der Kompatibilitätsschicht befindet

Zur vollen Transparenz, hier ist, was Field Forge (noch) nicht von ACF repliziert:

  • ACFs Admin-Bildschirme — Field Forge hat seinen eigenen visuellen Builder mit unterschiedlicher UI
  • ACFs Hook- und Filternamen — Field Forge hat äquivalente Hooks, aber mit dem Präfix fieldforge/ anstelle von acf/
  • acf.php JavaScript-API im Admin — Field Forge hat seine eigene JS-API
  • Einige Nischen-ACF-Filter (Feldtyp-Erweiterungen) — wenn Sie auf benutzerdefinierte Feldtypen angewiesen sind, die über ACF-Hooks definiert sind, kann die Migration kleine Anpassungen erfordern

Für 95 % der ACF-Seiten sind keine dieser Lücken von Bedeutung, da Theme-Entwickler nur die Template-Funktionen verwenden, nicht die internen APIs.


Migrationsvertrauen

Da die ACF-Kompatibilitätsschicht gegen echte ACF-Testfälle getestet wurde, wissen wir, dass sie Folgendes behandelt:

  • Basistext-, Textbereich-, Zahlen-, E-Mail-, URL-Felder
  • WYSIWYG-Felder mit HTML
  • Bild- und Dateifelder (gibt Arrays zurück, die dem ACF-Format entsprechen)
  • Auswahl-, Radio-, Checkboxfelder (mit format_value Parameter)
  • Datum- und Zeitwählerfelder
  • Wiederholungsfelder mit beliebiger Verschachtelung
  • Flexibler Inhalt mit mehreren Layouts
  • Gruppenfelder
  • Beziehungs- und Beitragsobjektfelder
  • Taxonomie- und Benutzerfelder
  • Optionsseiten (sowohl 'options' als auch 'option' Pseudo-IDs)
  • acf_register_block_type() Rückrufe
  • format_value Parameter über alle Funktionen hinweg

Wenn Sie einen Fall finden, in dem sich das Verhalten unserer Kompatibilitätsschicht von ACF unterscheidet, ist das ein Fehler, den wir beheben möchten. E-Mail-Support mit Details.


Bereit zur Migration, ohne Ihr Theme umzuschreiben?

Holen Sie sich Field Forge — ab $35/Jahr →

Die ACF-Kompatibilitätsschicht ist in jeder Version von Field Forge enthalten, einschließlich der kostenlosen. Die Migration von ACF oder SCF dauert Minuten, nicht Wochen.

Forge KI-Assistent Online

Hallo! Ich bin der Field Forge KI-Assistent. Fragen Sie mich alles über das Plugin — Einrichtung, Funktionen, Fehlerbehebung oder Entwicklung.

Gerade eben
Unterstützt von Forge KI · Dokumentation durchsuchen