Beiträge von chapolote

    Hallo,

    Habe mir ein wp_query gebastelt, der auch soweit das erwartete Ergebnis liefert, aber ziemlich langsam ist (teilweise dauert die Abfrage 4-5 s)

    Der Query sieht so aus:


    Ich benötige für meine Abfrage bei den meta_querys 2x den key seminar_show, sobald ich einen davon rausnehme, ist das Abfrage-Ergebnis sofort da, weshalb ich den Verdacht habe, daß es an der doppelten key-Definition liegt.

    Gibt es dafür irgendeine Abhilfe oder ist vielleicht an meinen meta-querys grundsätzlich was falsch oder unsauber?

    Die keys enddatum und end_show_always sind ACF-Datumfelder, seminar_show ist ein Auswahlfeld als Radio-Buttons mit 3 Optionen.

    Zitat von "Marcus[IS

    , post: 792622, member: 25287"]Mojn,


    Ja.
    Die Tatsache das diese Anweisung nur für Abfragen in einer if else Schleife verwendet wird, um zu prüfen ob eine Funktion vorhanden ist.
    https://www.php.net/manual/de/function.function-exists.php

    ???
    Das ist mir so nicht einsichtig. Erstens: function_exists() hat als Rückgabewert bool, also true oder false. Und zweitens ist doch der tenäre operator (wenn Ausdruck wahr) ? (mache das hier) : (ansonsten das hier) nichts anderes als das normale if-else-Konstrukt. Oder etwa nicht?
    Oder anders gefragt: Du schreibst er wird nur für eine if else Schleife verwendet. Das ist doch die tenäre Schreibweise genau so, zumindest verstehe ich das so.

    Guten Morgen,

    warum funktioniert das nicht (Internal Server Error 500):

    [PLAIN]
    <?php
    function_exists('exec_sem_list') ? exec_sem_list() : echo '<h3>ERROR: Function not found!</h3>';
    ?>
    [/PLAIN]

    als normale if/else Anweisung aber schon?

    [PLAIN]
    <?php
    if (function_exists('exec_sem_list')) {
    exec_sem_list();
    } else {
    echo '<h3>ERROR: Function not found!</h3>';
    }
    ?>
    [/PLAIN]

    Vermute mal, ich hab da was übersehen, aber ich komm alleine nicht drauf. Was soll ich sagen... ;)

    Könnte ich so umsetzen, gibt es dann zumindest eine Möglichkeit, in dem Feld rechts anstatt des Input-Feldes Checkboxen der registrierten Taxonomien anzuzeigen? Ist so, wie es jetzt ist, nicht besonders nutzerfreundlich, wenn man da erst anfangen muss zu tippen, um eine Taxonomie zu finden. Besonders, wenn ein Nutzer die registrierten Taxonomien nicht alle beim Namen kennt.

    Gut, habe den Query hinbekommen. Mit Hilfe der wordpress developer reference. Funktioniert jetzt also.

    Trotzdem würde es mich interessieren, ob es nicht eine (wordpress) php-Funktion gibt, ein code snippet oder evtl auch eine Einstellung in ACF, daß wenn ich in den ACF-Feldern eine Taxonomie auswähle, diese dann automatisch in der Box rechts ausgewählt wird, zumindest nach dem nächsten Speichern.

    Ich baue ein Seminarmodul für einen Kunden und sehe da schon Unstimmigkeiten auftreten, wenn dann ein Benutzer unterschiedliche Taxonomien im ACF-Feld und in der Box auswählt.....

    Hi,

    mit CPT UI habe ich mir diverse Post Types und Taxonomien angelegt und verwalte die zugehörigen Felder mit ACF.

    Erstelle ich jetzt einen Post, kann ich über die Eingabemaske von ACF auch die Taxonomie zuweisen, dafür habe ich in ACF ein Feldtyp Taxonomie angelegt.

    Starte ich jetzt einen Query und filtere nach Taxonomien, die ich in CPT UI angelegt habe, dann funktioniert das nicht wie erwartet. Der Grund scheint der zu sein, daß ich zwar in der Eingabemaske von ACF Taxonomien angelegt habe, aber beim Query offensichtlich nur berücksichtigt wird, welche Taxonomie ich in der Kategorie-Box (in meinem Fall Seminar Kategorien - siehe angehängten Screenshot) aktiviere.

    Die Frage ist jetzt, ist das richtig so, oder fehlt mir hier eine Konfiguration in ACF oder CPT UI?

    Wenn das normal ist, gibt es eine Möglichkeit, per php-Code eine Taxonomie einem einzelnen Post so zuzuweisen, daß ich das über einen Filter im Query auch auslesen kann? Ich lese mir die ganzen ACF-Felder per script aus und könnte somit die ausgelesenen Taxonomien leicht für den Post registrieren.

    Oder alternativ: wie müsste der Query Filter aussehen, daß er Taxonomien von CPT UI berücksichtigt?

    Wie mein Query nun genau aussieht, kann ich ehrlicherweise gar nicht sagen, weil ich ihn mir über das Easy Post Element vom Oxygen Builder generieren lasse und im Aufbau eines entsprechenden Querys nicht wirklich bewandert bin.
    Ich suche also den richtigen Query oder eben ein Codesnippet, mit dem ich Wordpress sagen kann, daß ein bestimmter Post bestimmten Taxonomien zugeordnet ist.

    Und schon bin ich selber drauf gekommen: hab das Pferd offensichtlich von hinten aufgezäumt.....

    Habe die ganzen Anleitungen eigentlich so verstanden, daß meine Rewrite Rule aus seite.de/anmeldung/?semData=123 den lesbaren Link generiert. So ist das da meiner Ansicht nach auch beschrieben. Anscheinend verstehe ich das falsch, denn wenn ich den Link in meinem Snippet so übergebe:

    Code
    echo '<a href="'.esc_url($target.'123').'">Link</a>';

    erhalte ich meinen lesbaren Link und semData ist auf der aufgerufenen Seite verfügbar.

    Auch wenn das so jetzt funktioniert, ist mein Vorgehen jetzt richtig?

    Und noch eine Frage am Rande dazu: immer wieder lese ich, daß Links in Wordpress aus Sicherheitsgründen mit esc_url() aufgerufen werden sollen. Gilt das generell, oder nur für bestimmte Aufrufe? In meinem Fall: ist das in obigem Code nötig oder völlig überflüssig?

    Noch ein Nachtrag:

    ich lese und lese über dieses Thema und komme nicht weiter. Mein Vorgehen basiert unter anderm darauf, was ich hier gelesen habe:
    https://stackoverflow.com/a/45385599 und hier:
    https://www.hongkiat.com/blog/wordpress-url-rewrite/

    Laut dem ersten Link, sollte meine URL ja jetzt so aussehen: seite.de/anmeldung/123
    Im Plugin Rewrite Analyzer ist meine Rewrite-Rule sichtbar, und wenn ich zum Testen die URL seite.de/anmeldung/?semData=123 eingebe, wird mir auch meine Rewite Rule angezeigt aber als pagename wird mir nur anmeldung angezeigt, siehe Screenshot.

    Ich hab langsam den Verdacht, daß mein Fehler eventuell darin liegt, wie ich die Seite mit angehängter Variable in meinem Snippet aufrufe:

    Code
    $target = get_permalink( 280 );
    echo '<a href="'.esc_url( add_query_arg( 'semData', '123', $target ) ).'">Link</a>';

    Hab die Hoffnung noch nicht aufgegeben, daß sich hier jemand findet, der mir hier weiterhelfen kann... ;)

    Hallo,

    ich möchte eine Wordpress Seite mit einer eigenen Variablen aufrufen. Dazu habe ich die Variable mit folgendem Code registriert:

    Code
    add_filter( 'query_vars', 'addnew_query_vars', 10, 1 );
    function addnew_query_vars($vars)
    { 
        $vars[] = 'semData'; 
        return $vars;
    }

    Das funktioniert auch soweit, der Link sieht jetzt so aus: seite.de/anmeldung/?semData=123

    Hab jetzt recherchiert, wie ich über eine rewrite rule das ganze lesbar machen kann, aber es will nicht funktionieren. Folgenden Code habe ich letztendlich probiert, wobei die auskommentierte Funktion aber auch nicht funktioniert:

    Eingefügt wird der Code über das Plugin Snippets, da ich unter Oxygen kein Theme habe. Das Snippet ist natürlich veröffentlicht und sichtbar. Warum funktioniert nicht, was laut meinen Recherchen funktionieren sollte?

    Grüße, chapolote

    Das funktioniert, super. Guter Tipp ;)

    Da ich ja nicht dumm sterben möchte: was genau bewirkt dieses global $post und was repräsentiert die Variable $post an dieser Stelle im Code? Bin deshalb verwirrt, weil im Code $post von mir ja erst in der nachfolgenden foreach-Schleife definiert wird..... Ich vermute mal, das eine hat mit dem anderen nichts zu tun, oder?

    Habe mir mit CPT UI ein Custom Post erstellt und mit ACF dazugehörige Felder. Die Webseite baue ich mit Oxygen.

    Da ich mir eine eigene Funktionalität basteln möchte, möchte ich nicht Easy-Post von Oxygen nutzen sondern mir die Anzeige meines Custom Posts und der dazugehörigen Felder selbst programmieren.

    Habe dazu auf einer Seite einen Code-Block in Oxygen eingefügt in dem folgender Code steht, den ich aus der Doku von ACF entnommen habe:


    Die Ausgabe in Oxygen passt dann auch so wie erwartet und sieht aus wie in beigefügtem oxygen.jpg

    Rufe ich die entsprechende Seite jetzt aber im Frontend auf, wird mir anstatt meiner Custom Posts nur noch der Seitentitel der entsprechenden Seite angezeigt, und zwar 4x, was der Anzahl der Custom Posts entspricht - siehe angehängtes Bild frontend.jpg

    Es ist offensichtlich, daß ich hier irgend etwas übersehen oder falsch verstanden habe, aber ich komme nicht drauf, was genau es ist. Ich befürchte ja fast, daß ich etwas ganz grundsätzliches im Umgang mit Custom post types und acf noch nicht verstanden habe....

    Hat hier jemand eine Idee, wo mein Fehler liegt, bzw. wo mein Vorgehen komplett falsch ist?

    Ja, hab mich missverständlich ausgedrückt, zugegebenermaßen falsch. Ich lese aus den zurückgegebenen Post-Objects die zugehörige ID aus und hole mir dann über meine Funktion die zugehörigen Felder.
    Das Vorgehen, welches Du beschreibst, ist mir nicht ganz klar. Meinst Du, Du könntest mir hier ein vereinfachtes und kurzes Beispiel posten, falls das überhaupt ohne größeren Aufwand geht? Wäre super....

    Ich habe in ACF dafür ein Beitrags-Objekt eingesetzt, welches mir die Posts eines anderen CPT zur Auswahl anbietet.
    Der Rückgabewert ist dann eben die Post-ID, aber nicht die einzelnen Felder. Darum meine eigene Funktion, die dann aus diesen ID‘s die vorhandenen Felder ausliest.
    Inzwischen sind es 2 Funktionen geworden, eine, die alle Felder des Mutterposts ausliest und eine, die dann die Felder der ID‘s ausliest, die mir zurückgegeben werden. Funktioniert so alles prima, ich kann es einfach nicht wirklich glauben, daß ich in der ACF-Dokumentation nichts darüber finde, wie man Felder von Kind-Posts ausliest. Hätte eigentlich gedacht, das ACF hierfür eine Funktionalität bereit stellt. Aber vielleicht habe ich sie einfach nicht gefunden, oder etwas falsch oder nicht ganz verstanden. Aber macht im Grunde nix, so lerne ich wenigstens etwas programmieren ;)

    Guten Morgen,

    ich bin gerade dabei, mir eine Funktionalität zu bauen, um Feldwerte verschiedener Posts auszulesen. Das ganze soll ein Seminarmanagement mit Anmeldemöglichkeit werden. Dabei habe ich mir mit CPT UI verschiedene Inhaltstypen, also Posts generiert und mit ACF die benötigten Felder erstellt.

    Wenn ich mir nun ein Seminarpost anzeigen lassen (ich mache das unter Oxygen mit EasyPosts) soll über eine Funktion alle Feldwerte in ein Array gepackt werden, wobei andere von mir definierte Posts dem Seminarpost zugeordnet sind und in meinem erzeugten Array als Post-ID ausgelesen werden. Diese sollen dann hernach über die selbe Funktion weiter ausgelesen werden, damit ich letztendlich ein Mehrdimensionales Array erhalte, in dem mir alle benötigten Daten in weiterverwendbarer Form zur Verfügung stehen.

    Ich bin alles andere als php-Spezialist, recherchiere mir aber das Nötigste zusammen und schaffe es immerhin, das zu erreichen, was ich möchte (mit wahnsinnigem Zeitaufwand, aber ich versuche schon, so viel wie möglich selbst zu machen, um dabei zu lernen)

    Mein Bitte nur dazu: würde vielleicht einmal jemand über meine Funktion schauen, um mir ein Feedback zu machen, ob der Code soweit ok ist (oder ich vielleicht Sachen eingebaut habe, die man so nicht machen sollte) und ob dieses Vorgehen des Auslesens von verschachtelten Posts auch mit einfacheren Mitteln bewerkstelligt werden kann.
    Ich würde mich sehr freuen, ein Feedback zu bekommen, würde mir etwas Sicherheit geben, so weiter zu machen wie jetzt angefangen.

    Die Weiterverarbeitung der Unterposts habe ich soweit noch nicht umgesetzt, stelle mir aber vor, daß meine Funktion das Array der ersten Ebene als Wert zurückgibt und dann über eine "Dachfunktion" die Unterposts ausgelesen werden. Sollte dann eigentlich kein Problem mehr sein ;)

    Danke und Grüße, chapolote

    Hier die Funktion:

    Danke, das muß ich mir dann mal genauer anschauen. Jaja, ich weiß, daß sind Basics von WP, aber da ich bislang nur statische Seiten unter WP erstellt habe, habe ich mich mit Posts und Archiven nie beschäftigt.

    Vielleicht magst Du mir noch eine letzte Frage vorerst beantworten: wo genau, also in welcher Datei an welchem Ort speichert bzw. registriert das CPT UI-Plugin denn eigentlich die neuen Post-Types? Würde mir sehr gerne den Code dazu einmal anschauen.
    Grundsätzlich hätte ich gedacht, daß das irgendwo im child-theme abgespeichert wird, aber wenn dem so ist, kann das bei mir eigentlich nicht greifen, da ich mit dem Oxygen-Builder arbeite und dieser Page Builder keine Themes benutzt.