Loops & Logic

Beschreibung

Facebook-Gruppe | Website| Dokumentation |offizielles Support-Forum

Loops & Logic ist ein Hilfsmittel, das dir eine umfassende Kontrolle über die Anzeige von WordPress-Inhalten und -Daten im Frontend deiner Website ermöglicht, wenn dein Theme oder Builder nicht die Optionen hat, die du benötigst. Dieses Plugin gibt dir die Möglichkeit, individuelle PHP-Themes und Builder-Module mit einer vereinfachten HTML-ähnlichen Syntax zu entwickeln, die jedem Frontend-Entwickler vertraut sein dürfte.

Support

Hauptfunktionen

  • Nutze HTML-Templates mit dynamischen Schlagwörtern wie Loop, Field und If
  • Verwende Regeln für die Position eines Themes, um individuelle Templates auf Inhaltstypen, Taxonomien und mehr anzuwenden (ähnlich wie bei Beaver Themer oder Elementor Theme Builder)
  • Einfache Einbindung (enqueue) von CSS-Stylesheets und Javascript überall mit einem visuellen Regelersteller für die Positionierung
  • Schreibe dein CSS lückenlos direkt in SASS, ohne dich um die Kompilierung zu kümmern
  • Erstelle Abfragen loops von allen Inhaltarten wie zum Beispiel: Beiträge, Seiten, individuelle Inhaltstypen, Anhänge, Benutzer, Taxonomien und Begriffe
  • Integrierte und individuelle Felder anzeigen
  • Bilde eine Logik, um Dinge basierend auf bestimmten Bedingungen anzuzeigen, z. B.: Ein Menü mit einigen Links nur für eingeloggte Benutzer oder für eine Benutzerrolle erstellen
  • Erstelle individuelle Shortcodes, um alles – von einem individuellen Feld bis hin zu einer kompletten dynamischen, datengesteuerten Webseite – anzuzeigen

Anwendungsbeispiel

Der Kern von L&L ist die Fähigkeit, schnell und elegant durch WordPress-Daten zu laufen, wie in diesem Beispiel, in dem eine Liste von Links zu den drei aktuellsten Beiträgen angezeigt wird

<ul>
  <Loop type=post count=3 orderby=date order=desc>
    <li>
      <a href="{Field url}"><Field title /></a>
    </li>
  </Loop>
</ul>

Dasselbe in PHP zu erreichen, ist wesentlich komplexer:

<?php
$args = array(
    'post_type' => 'post',
    'posts_per_page' => 3,
    'orderby' => 'date',
    'order' => 'DESC',
);
$query = new WP_Query( '$args' ); ?>
<?php if ( $query->have_posts() ) : ?>
  <ul>
    <?php while ( $query->have_posts() ) : $query->the_post(); ?>

      <li>
        <a href="<?php the_permalink(); ?>">
          <?php the_title(); ?>
        </a>
      </li>

    <?php endwhile; ?>
  </ul>
<?php endif; ?>

Es kann schwierig sein, PHP zu deiner Website hinzuzufügen, wenn du kein Backend-Entwickler bist, aber mit L&L ist es ein Kinderspiel, selbst in einem Page-Builder-Layout.

Page-Builder wie Gutenberg, Elementor und Beaver Builder haben oft Defizite in ihren Funktionen, die normalerweise erfordern würden, dass du entweder ein individuelles Add-on entwickelst oder ein aufgeblähtes Add-on-Paket kaufst, nur um das eine Element zu bekommen, das du brauchst. L&L fügt ein Template-Editor-Modul direkt zu jedem Page-Builder hinzu, so dass du einfach beschreiben kannst, was du im L&L-Code anzeigen möchtest und es dann über die Page-Builder-Schnittstelle platzieren kannst. Du kannst sogar deinen L&L-Code zwischen den Page-Buildern kopieren und einfügen, wenn du mit mehr als einem arbeitest! Es ist, als hättest du deine eigene Addon-Fabrik für den Page-Builder.

Plugin- und Theme-Support

Plugin-Support

Loops & Logic funktioniert mit den Inhaltstypen und individuellen Feldern, die von den meisten Plugins hinzugefügt werden, aber Plugins mit speziellen Datenstrukturen, wie z. B. individuelle Tabellen oder Felder mit Datumsformaten, die geparst werden müssen, erfordern eine explizite Unterstützung durch uns.

Gebündelte Integrationen:

✅ Advanced Custom Fields (ACF)

L&L unterstützt die Kern-Feldtypen von Advanced Custom Fields (ACF), so dass du mit den meisten ihrer Feldtypen sofort arbeiten kannst! Wir planen auch, andere WordPress-Plugins für individuelle Felder wie Pods und Metabox in der Zukunft zu unterstützen.

<Loop acf_flexible=field_name>
  <If field=layout value=layout_1>

    Layout 1
    <img src="{Field acf_image=field_name field=url}" />
    <Field acf_editor=field_name />

  <Else if field=layout value=layout_2 />

    Layout 2
    <Field acf_editor=field_name />
    <img src="{Field acf_image=field_name field=url}" />

  </If>
</Loop>

✅ Elementor

Loops & Logic bietet ein Elementor-Widget, mit dem man entweder L&L-Code direkt in das Page-Builder-Widget schreiben oder aus einem bereits vorhandenen, gespeicherten Template auswählen kann.

✅ Gutenberg

Loops & Logic bietet einen Gutenberg-Block, mit dem man entweder L&L-Code direkt in den Block-Builder-Block schreiben oder aus einem bereits vorhandenen, gespeicherten Template auswählen kann.

✅ Beaver Builder

Loops & Logic bietet ein Beaver-Builder-Modul, mit dem man entweder L&L-Code direkt in das Page-Builder-Modul schreiben oder aus einem bereits vorhandenen, gespeicherten Template auswählen kann.

✅ WP Grid Builder

Loops & Logic bietet einen WP-Grid-Builder-Block, mit dem man aus einem bereits vorhandenen, gespeicherten Template auswählen kann, um es in WP Grid Builder zu laden.

✅ WP Fusion

Die kostenlose WP-Fusion-Integration ermöglicht es dir, bedingte Logik zu verwenden, um verschiedene Inhalte basierend auf den Schlagwörtern eines Benutzers zu schützen oder anzuzeigen.

<If user_field=wp_fusion_tags includes value="123">
  User has tag ID 123
<Else />
  User does not have tag.
</If>

In den kommenden Monaten werden wir Premium-Add-ons für beliebte Plugins auf den Markt bringen. Schau also auf unserer Website nach, um zu sehen, was verfügbar ist!

Premium-Add-ons, die bald veröffentlicht werden:

  • WooCommerce
  • Easy Digital Downloads
  • Modern Tribe Events Calendar
  • Gravity Forms
  • LearnDash
  • LifterLMS

Theme-Support

Es funktioniert mit allen Themes, die nach den WordPress-Standards erstellt wurden.

Blöcke

Dieses Plugin unterstützt 1 Block.

  • Tangible Template

Installation

  1. Installieren und aktivieren im Adminbereich: Plugins -> Installieren -> Plugin hochladen

Rezensionen

15. März 2023
This plugin is a real game-changer in terms of website development. The prebuilt functionalities for custom post type loops, conditional statements, ACF fields, and more allows you to create complex functionality with ease and to greatly speed up your development process. Additionally, I must mention the outstanding support provided by the Loops & Logic team. They have been incredibly helpful whenever I've needed assistance, which has made the whole experience even better. Overall, I highly recommend Loops & Logic to anyone looking to streamline their website development. For me it's a must-have plugin for any wordpress project.
15. März 2023
Seriously! this is a hidden gem for those who understand HTML and CSS. You can use it to show related postsSearch resultsCreate dynamic pagesAnd, for tons of possible use cases.
15. März 2023
Wow, what can I say but amazing! I agree with others that this should be in the top five plugins! Yes, this plugin is not for folks who don't code, but is a great plugin for someone who wants to start. However, for folks like myself who like to code, who do code, and who makes custom sites -- this plugin is a game changer. One pluging to rule them all! Thank you to the folks at Tangible for creating such an amazing plugin and sharing it with the community -- now time to make changes to some of my sites. =)
14. März 2023
Great plugin! It's very useful for custom websites. I can basically build anything I want with it. Love it!
14. März 2023
This is no exaggeration. L&L has been a lifesaver to me and saved hundreds of hours of extra work in template building. Really well done, Tangible. "This is the way!"
Alle 28 Rezensionen lesen

Mitwirkende & Entwickler

„Loops & Logic“ ist Open-Source-Software. Folgende Menschen haben an diesem Plugin mitgewirkt:

Mitwirkende

„Loops & Logic“ wurde in 1 Sprache übersetzt. Danke an die Übersetzerinnen und Übersetzer für ihre Mitwirkung.

Übersetze „Loops & Logic“ in deine Sprache.

Interessiert an der Entwicklung?

Durchstöbere den Code, sieh dir das SVN Repository an oder abonniere das Entwicklungsprotokoll per RSS.

Änderungsprotokoll

3.1.8

Veröffentlichungsdatum: 15.03.2023

  • Gutenberg-Integration
    • Verbesserung der Logik des Inhaltsfilters zum Schutz von HTML-Templates
    • Sicherstellen, dass es nur innerhalb von do_blocks vor do_shortcode angewendet wird
    • Handhabung des Sonderfalls, dass ein Template-Shortcode innerhalb eines HTML-Attributs gerendert wird und sein Inhalt eine URL ist
    • Block-Themes werden unterstützt
    • Verbesserung der Abfrage der aktuellen Post-ID innerhalb eines Builders

3.1.5

Veröffentlichungs-Datum: 02.03.2023

  • Kalender-Schleifen-Typen
    • Bei der Wochennummer ist die Carbon-Methode isoWeek() anstelle von format(‚W‘) zu verwenden, wodurch ein unnötiges Präfix „0“ (Null) hinzugefügt wird.
    • Typ der Monatsschleife: Sicherstellen, dass das Attribut „Jahr“ berücksichtigt wird; Organisieren, wie die Attribute „Jahr“, „Quartal“, „von“ und „bis“ behandelt werden
  • Formatierungs-Tag: Unterstützung für den String replace/with hinzufügen, der HTML enthält
  • Gutenberg-Integration
    • Verbesserung der Inhalts-Filter-Logik
    • Verbesserung der Abfrage der aktuellen Post-ID innerhalb eines Builders
    • Verbesserte Problemlösung für den Fehler im Website-Editor
      https://github.com/WordPress/gutenberg/issues/46702
  • Weiterleitungs-Tag: In Page-Builder, AJAX oder REST-API deaktiviert
  • Tag umschalten: Verbesserung der Konvertierung von nicht standardmäßigen „When“ in „Else if“
  • Template-Inhaltstypen: max-width entfernt, damit der Editor die volle verfügbare Breite einnimmt
  • Integration des WP Grid Builders: Verbesserung der Kompatibilität für die PHP-Version vor 7.3

3.1.3

Veröffentlichungs-Datum: 27.02.2023

  • Hinzugefügt: WP-Grid-Builder-Integration mit dem Tangible-Template-Widget
  • Einbettung des Moduls: CSS-Funktion für das Seitenverhältnis verwenden und den Padding-Top-Workaround entfernen
  • Gutenberg-Integration
    • Verbesserung der Kompatibilität mit dem Website-Editor, der sich noch im Beta-Stadium befindet
    • Behebung des Problems mit Shortcodes innerhalb der Seitennummerierungs-Schleife – Schutz des Template-HTML-Ergebnisses vor der Anwendung von Gutenberg-Inhaltsfiltern wie wptexturize und do_shortcode, nachdem alle Blöcke gerendert wurden
  • Sass-Modul: Problem mit dem Selektor für die erste Stilregel behoben – verhindert, dass der Compiler die @charset-Regel oder „byte-order mark“ hinzufügt, die nur für CSS-Stylesheets als Datei gültig sind, wenn der Compiler ein Multibyte-Zeichen im Sass-Quellcode erkennt
  • Tabellen-Modul: Der Spaltenfilter unterscheidet nicht mehr zwischen Groß- und Kleinschreibung und unterstützt nun auch Multibyte-Zeichen
  • Template-Inhaltstypen
    • Unterstützung für die Benutzeroption „Den visuellen Editor beim Schreiben deaktivieren“ hinzugefügt, um zu verhindern, dass der Inhalt von Templates gefiltert wird
    • Verbesserung der Generierung einer Template-Titelform aus dem Titel, einschließlich der Umwandlung von em-Bindestrichen in normale Bindestriche

3.1.2

Veröffentlichungs-Datum: 01.02.2023

  • Verbesserte Kompatibilität mit PHP 8.2
  • Schleife: Verbesserte Logik, um den aktuellen Beitrag als Schleifenkontext für Templates zu setzen, die in Shortcodes und Builder-spezifischen Beitragsschleifen geladen werden, wie das Widget Elementor Loop Grid und Beaver Post Loop
  • Plugin-Framework: Korrektur des ungültigen Hook-Namens der modul- und versionsspezifischen Ready-Aktion
  • Beitragsschleife: Alias „current“ (wie „today“) für den Parameter „custom_date_field_value“ hinzufügen
  • Taxonomie-Begriffs-Schleife: Unterstützung mehrerer IDs für den Parameter „post“

3.1.1

Veröffentlichungs-Datum: 30.12.2022

  • Schleife: Verbessertes Abrufen des Standardschleifenkontextes für das Suchergebnisarchiv
  • Sass-Modul
    • Upgrade der Compiler-Bibliothek auf ScssPhp 1.11.0
    • Verbesserung der Kompatibilität mit neueren CSS-Funktionen wie Variablen, Funktionen, Selektoren und Medien-Abfragen
    • Verbesserte Kompatibilität mit PHP 7 und 8
    • Verbesserte Fehlerbehandlung
    • Auto-Prefixer und den dazugehörigen CSS-Parser entfernen; Internet Explorer wird nicht mehr unterstützt
    • Die Übergabe von Sass-Variablen wurde verbessert – alle bekannten Werte-Typen werden verarbeitet, um mit dem neuen Compiler kompatibel zu sein
    • Umwandlung beliebiger Compiler-Fehlermeldungen in CSS-Kommentare
  • JavaScript- und Sass-Variablentypen: Standard-Werte-Typ „raw“ (ohne Anführungszeichen) anstelle von „string“ (mit Anführungszeichen)
  • Template-Inhaltstypen

3.0.1

Veröffentlichungs-Datum: 10.05.2022

  • Kalender-Schleifen-Typen
    • Verbesserte Verarbeitung bei der Übergabe ungültiger Werte
    • Wochenschleife: Korrekte Verarbeitung des Januars, der eine Wochenreihe haben kann, die im Vorjahr beginnt
  • HTML-Hinweis: Eine Ausnahme für ein Shortcode-Tag hinzufügen, um ein selbstschließendes Raw-Tag zu ermöglichen
  • Schleife und Feld-Tags: Aktuellen Beitragskontext in der Builder-Vorschau abrufen, wenn der Status des Beitrags ein anderer als veröffentlicht ist
  • Template-Editor: Verbesserte Kompatibilität mit dem CSS von Beaver Builder

3.0.0

Veröffentlichungs-Datum: 13.09.2022

  • ACF select: Unterstützung von Schleifen (Loops) in Feldern mit einem einzigen Auswahlwert
  • URL-Feld für ACF-Bild: Unterstützung des Attributs Größe
  • Funktionsmodul hinzufügen: Mermaid – Diagram library
  • Basis-Schleife: Den Parameter sort_date_format hinzufügen, wenn sort_type=date genutzt wird, um für die Sortierung das Datumsformat in eine Zeitangabe umzuwandeln
  • Kompatibel mit PHP 8.1
  • Kompatibel mit WordPress 6.0.2
  • Dynamischer Modul-Asset-Loader – Unterstützung für das Laden von Skripten und Stilen bei Bedarf, z. B. wenn Page-Builder dynamisches HTML abrufen und einfügen
    • Implementiert: Embed, Glider, Mermaid, Prism, Slider
    • In Vorbereitung: Diagramm, Paginierung, Tabelle
  • Integrationen von Gutenberg, Beaver und Elementor
    • Sicherstellen, dass der aktuelle Beitrag als Standard-Kontext für Schleifen (Loops) in der Vorschau des Page-Builders, in gespeicherten Templates, in Builder-spezifischen Schleifen und im Template-Shortcode verwendet wird
    • Nicht genutzte Stile entfernen
  • HTML-Modul: Hinzufügen eines speziellen Schlagwort-Attributs namens „tag-attributes“ für dynamische Attribute mit oder ohne Wert
  • HTML-Lint-Bibliothek
    • Abzweigung und Einbindung in einen eindeutigen Namensraum zur Verbesserung der Kompatibilität mit Customizer und anderen Plugins, die eine andere Version laden können
    • Änderung von core-/rules-/tag-pair.ts, um Groß- und Kleinschreibung bei Schlagwort-Namen zu berücksichtigen
  • Import und Export
    • Löschen von zwischengespeicherten Feldwerten wie z. B. kompiliertem CSS beim Überschreiben eines bestehenden Templates
    • Alle Template-Typen mit orderby=menu_order exportieren, um sicherzustellen, dass die Positionierungsregeln mit der richtigen Priorität angewendet werden
    • Unterstützung von Templates mit einem anderen Beitragsstatus als Veröffentlichen: Entwurf, später, ausstehend, privat (Automatischer Entwurf, Vererben/Revision und Papierkorb überspringen)
  • Bedingung If tag: user_role
    • Alias „Admin“ für Administrator hinzufügen
    • Unterstützung aller gängigen Vergleichsoperatoren
    • Unterstützung des Tastenkürzels für includes: user_role=admin
  • Layout-Template-Typ
    • Korrekte Anwendung der Regel für „Singular – Alle Inhaltstypen“
    • Verbesserte Unterstützung für Block-Themes
    • Rendering des Seiteninhalts vor dem Head zur Unterstützung des Meta-Tags in Block-Themes
  • Liste und Schleifen-Tag: Hinzufügen des Attributs „items“ zur Erstellung einer Liste aus kommagetrennten Werten
  • Logik-Modul: Verbesserte Regeln
    • Für „Liste“, zusätzliche Unterstützung für alle gängigen Vergleiche
    • Umwandlung des Subjektes in eine Liste wie erwartet: any_is, any_is_not, all_is, all_is_not, any_starts_with, all_starts_with, any_ends_with, all_ends_with
    • Umwandlung des Wertes in eine Liste: in, not
    • Bei starts_with und ends_with, wenn das Subjekt eine Liste ist, erstes/letztes Element prüfen
  • Karten-Schlagwort: Hinzufügen des Attributs „type“ für das Schlüssel-Schlagwort zur Angabe des Werte-Typs: number, boolean, string, map, list
  • Skript- und Stil-Template-Typ: Positionsregel „Nirgendwo“ hinzufügen, um das Laden zu deaktivieren
  • Start: Kommentar-Schleifen-Typ
  • Start: Entwicklerdokumente: Architektur, Plan, Entwurfssystem
  • Stil-Template-Typ: Früher laden bei der Aktion wp_head mit Priorität 9, vor dem Standard (10)
  • Template-Archiv-Anzeige
    • Korrekte Anzeige von Positionsregeln für importierte Templates
    • Unterstützung für das Auswählen und Kopieren der Template-ID
  • Template-Editor
    • Das Speichern mit AJAX deaktivieren, bis die folgenden Probleme gelöst sind
    • Formular Nonce, das nach einem Tag abläuft
    • Sicheres Speichern der Beitrags-Titelform
    • Bestätigungsdialog beim Schließen des Fensters nur anzeigen, wenn es notwendig ist
    • Editor auf die gesamte Höhe des Templates bringen
    • Speichern und Wiederherstellen des aktuellen Tabs im Bearbeitungsbildschirm für Templates