zurück

Automatic.css (ACSS) für alle Post Typen mit Gutenberg aktivieren

Wer regelmäßig Internetseiten erstellt wird sich früher oder später ein CSS Framework suchen, dass zu einer Arbeitsweise passt. In unserem Fall ist das Automatic.css (ACSS) welches sich hervorragend in die Pagebuilder Oxygen und Bricks Builder integriert.

Dank der extrem Flexibilität der beiden Builder bietet es sich an ein Hybrides Setup aus Page Builder und Gutenberg zu nutzen. So kann man aufwendige Seiten in Bricks oder Oxygen gestalten und “einfache” Blog-Posts direkt in Gutenberg umsetzen. So sind die Inhalte auch für die kommenden Jahre noch kompatibel mit dem neusten Editor.

ACSS für alle Post Types und nicht nur Seiten aktivieren

Nach der Installation von automatic.css kann es direkt im Builder genutzt werden. Seit einiger Zeit gibt es auch eine Gutenberg Integration, welche für das hybride Setup perfekt wäre.

Leider integriert sich ACSS im Standard nur in den Post Typ “Seiten”. Häufig reicht das nicht aus, und man möchte das Framework in noch weitere Typen wie “Posts” integrieren.

Unser Codesnippet schafft abhilfe

Unser Codesnippet übernimmt genau das. Es erweitert die Nutzung von ACSS auf alle Post-Typen, die eine Benutzeroberfläche haben und REST-API-Unterstützung bieten, was für die Kompatibilität mit dem Gutenberg-Editor entscheidend ist. Der Code durchläuft alle registrierten Post-Typen und prüft, ob sie den Gutenberg-Editor verwenden. Post-Typen, die nicht mit Gutenberg arbeiten, werden aus der Liste entfernt. Anschließend wird mit add_filter eine Anpassung vorgenommen, die diese gefilterten Post-Typen für ACSS zugänglich macht. Dies bedeutet, dass ACSS nun über die Standardintegration in “Seiten” hinaus auch für andere Post-Typen wie “Posts” verfügbar ist.

Um dieses Snippet in WordPress zu integrieren, gehen Sie wie folgt vor:

  1. Öffnen Sie die functions.php-Datei Ihres aktiven WordPress-Themes.
  2. Fügen Sie das Code-Snippet am Ende der Datei ein.
  3. Speichern Sie die Änderungen und laden Sie die Datei gegebenenfalls auf Ihren Server hoch.

Durch diese einfache Erweiterung wird Automatic.css zu einem noch leistungsfähigeren Werkzeug in Ihrem Entwicklungsprozess, da es jetzt die Flexibilität bietet, über verschiedene Post-Typen hinweg konsistente und ansprechende Designs zu erstellen. Dies ist besonders nützlich für Websites, die ein hybrides Setup aus Page Buildern wie Oxygen oder Bricks und dem Gutenberg-Editor verwenden.

/**
 * Add ACSS Support to more post types.
 */
add_action('init', function () {
    // Retrieve all post types with UI and REST support
    $queried_post_types = get_post_types([
        'show_ui' => true, // Only include post types with a UI
        'show_in_rest' => true, // Ensure REST support for Gutenberg compatibility
    ]);

    foreach ($queried_post_types as $type) {
        // Remove post types not using Gutenberg editor
        if (!use_block_editor_for_post_type($type)) {
            unset($queried_post_types[$type]);
        }
    }

    // Extend allowed post types for ACSS with Gutenberg-enabled post types
    add_filter('acss/gutenberg/allowed_post_types', function ($post_types) use ($queried_post_types) {
        return array_merge($post_types, $queried_post_types);
    }, 10); // Priority 10 to potentially exclude some post types
}, 99); // Hooked at priority 99 to ensure all CPTs are registered

Hinterlassen Sie den ersten Kommentar

Legen wir los!