Dynamische Kategorien

  • Hi Zusammen,

    gibt es eine php in der die Kategorien gespeichert sind und falls ja, könnte man dort eine Variable, z.B. {wp:post_title} setzen?

    Hintergrund ist folgender: ich nutze das PlugIn Ninja Forms mit der Erweiterung Front End Posting.
    Ziel ist das eingeloggte User einen Beitrag auf einem Beitrag posten können. Dem Beitrag habe ich den gleichen Namen wie die jeweilige Kategorie gegeben. Funktioniert soweit auch alles super. Ich würde lediglich gerne die Kategorie in der gepostet wird dynamisch bestimmen.

    Ein andere Ansatz wäre möglicherweise direkt im Plug in der php

    $action[ 'category' ] = '{field:terms_' . $field[ 'id' ] . '}'; // Map the category field.

    IDK Hat vielleicht wer ne Idee? Vielen Dank schon mal.

    vielleicht ist die Frage falsch einsortiert und ich müsste unter Plugin, dann sorry.

    Cheers Alex

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Ich kann dir leider überhaupt nicht folgen, was du willst und was dein Ziel ist.
    Kannst du erneut versuchen, das zu beschreiben????

    Leidenschaftlicher WordPress-Entwickler aus Österreich.

  • Ja logo. Alles ein bißchen kompliziert.

    Ausgangssituation ist ein Formular.
    In diesem Formular lassen sich einige Daten eingeben.
    Dieses Formular wird dann verschiedenen Beiträgen angeheftet.
    Ein Feld in dem angehefteten Formular zieht sich den Titel aus dem Beitrag.
    Somit kann das Formular anhand dessen erkennen von welchem Beitrag ausgehend es ausgefüllt wurde.
    Im nächsten Schritt wird aus diesem Formular eine Aktion ausgelöst und in der Kategorie (Welche genauso benannt wurde wie der Beitrag) auf eben jenen Beitrag gepostet.
    Das ganze wird per conditional logic ausgeführt oder eben nicht, wenn Post Name = Kategorie Name
    Soweit funktioniet alles wunderbar.

    Problem: ich habe 20 verschiedene Beiträge bis jetzt und zwei Aktionen - das heißt bislang 40 Aktionen angelegt, nicht sehr elegant. da ich für jede Aktion im Formular die Kategorie Fest definieren muss.

    Nun wäre es Super, könnte ich eine Kategorie erstellen die dynamisch ist also = {wppost_title} --> die Kategorie wird nach dem ausgehenden Beitrag benannt. Oder aber ich könnte die php umschreiben. das snippet {wppost_title} ist wohl aber wordpress intern. weißt du wie das gegenstück in php heißt....

  • vielleicht ist es ähnlich, so wie ich es machen (aus deinem text werde ich auch nicht schlau, was du genau willst):
    wenn ich einen Beitrag erstelle, habe ich die Möglichkeit mehrere Bereichsdefinitionen auszuwählen, Händisch angelegt terms einer Taxonomie, wähle ich zb Bereich aus (zb Termin, Ort, Projekt, ....) dann werden in Taxonomies (Termin, Ort, oder Projekt, ...) der Titel des Beitrags als neue Term angelegt, in weitere Folge schaffe ich damit verknüpfungen von Beiträge die zusammengehören:
    Beispiel ein Beitrag XX wird eine Projekt, dh Bereich Projekt auswählen, Taxonomie Projekte bekommt automatisch Term mit der Bezeichnung XX, bei einem neuen Beiträg (zb termin) wähle ich unter Projekte XX aus, und damit gehört der Termin zum Projekt XX, und dementsprechende ausgaben, zeigen dann an wie was zusammengehört.
    aja mit PHP und Wordpress Functionen ist das machbar,

    Wordpress weil es spass macht, besonders beim WordPress Meetup in Linz

  • AUWEH!
    Post2Post. Das Thema, dass mich schon seit 10 Jahren jagt :)
    So wie es @Shadow gemacht hat, hab ich es auch mal gelöst.
    Aber das skaliert bei größeren Anwendungen nicht, bzw hat zu viele Edgecases und Fehlerquellen.

    Wir sind dann in der Firma auf post2post von Scribu
    https://github.com/scribu/wp-posts-to-posts
    umgestiegen.
    Haben das geforket und weiterentwickelt.

    Vorteil:
    Verknüpfungen sind sauber in einer eigenen Tabelle gespeichert.
    Man hat aber im Post Edit Screen dennoch ein Userinterface, um Dinge verknüpfen zu können.
    PERFORMANCE!

    Leidenschaftlicher WordPress-Entwickler aus Österreich.


  • Ausgangssituation ist ein Formular.

    ok.



    In diesem Formular lassen sich einige Daten eingeben.

    ok.


    Dieses Formular wird dann verschiedenen Beiträgen angeheftet.

    angeheftet? Beiträge?



    Ein Feld in dem angehefteten Formular zieht sich den Titel aus dem Beitrag.

    kann man machen? warum? jeder Beitrag hat eine eindeutige ID in der Datenbank.



    Somit kann das Formular anhand dessen erkennen von welchem Beitrag ausgehend es ausgefüllt wurde.

    o.k jetzt hast du ein dynamisches Formular.


    Im nächsten Schritt wird aus diesem Formular eine Aktion ausgelöst und in der Kategorie (Welche genauso benannt wurde wie der Beitrag) auf eben jenen Beitrag gepostet.

    auch Kategorien haben in WordPress eine eindeutige ID. Damit ich unterschiedliche Titel für Google habe, würde ich unterschiedliche Titel verwenden wollen. und mich mit den IDs beschäftigen.


    Soweit funktioniet alles wunderbar.

    ok. wir haben schon wochenende... was ist nur das Problem?



    Problem: ich habe 20 verschiedene Beiträge bis jetzt und zwei Aktionen - das heißt bislang 40 Aktionen angelegt, nicht sehr elegant. da ich für jede Aktion im Formular die Kategorie Fest definieren muss.

    ach...

    Ich würde im Formular nichts fest - definieren, sondern - wie bereits geschrieben auf die ID achten.

    1. welche ID hat der Beitrag. oder auf welcher Seite wurde das Formular aufgerufen
    2. meine Aktionen in einem Array (a,b) oder Counter 1,2,3,4,5,6,
    3. Und das Formular gehört zur Kategorie( dann hätte ich nur für "jede" Kategorie ein Forumluar.
    ^- aber hier würde ich vermutlich auf Multi Formularoder Tunnel Formular verwenden.


    Nun wäre es Super, könnte ich eine Kategorie erstellen die dynamisch ist also = {wppost_title} --> die Kategorie wird nach dem ausgehenden Beitrag benannt. Oder aber ich könnte die php umschreiben. das snippet {wppost_title} ist wohl aber wordpress intern. weißt du wie das gegenstück in php heißt....

    WordPress verwendet intern IDs
    https://codex.wordpress.org/Linking_Posts_Pages_and_Categories

    cat = ID für Kategorien.

    Über die Permalinks Einstellungen holt sich WordPress die ID#s für Tags, Seiten, Kategorien hat WordPress Funktionen mit denen es prüfen kann, ob es in einer Kategorie oder Seite, Tag usw..

    Deine "dynamische" Kategorie muss "nur" als Kategorie erkannt werden
    =>
    https://developer.wordpress.org/reference/functions/is_category/

    du könntest dir

    Get post or page (or whatever) permalink by slug:
    ansehen
    https://developer.wordpress.org/reference/functions/get_permalink/

    aber vermutlich habe ich dich falsch verstanden...

    Mit offenen Augen träumen

  • Schau ich mir auf jeden Fall mal an. Bislang komme ich eben mit meinem Ninja Form Ganz gut zurecht, die einzige Funktion die eben fehlt ist die Auswahl der Kategorie.

    Bei deinem Addon kann auch der der eigenloggte User über das Formular im Frontend posten?


  • Die eindeutige ID für Beitrag und Kategorie ist ja gerade gar nicht gewünscht. Die Kategorie wird über den Beitragsnamen identifiziert.

    3. Und das Formular gehört zur Kategorie( dann hätte ich nur für "jede" Kategorie ein Forumluar.
    das wäre genauso unpraktisch wie die jetzige Situation. Also entweder ein Formular mit 40 Aktionen oder 40 Formulare mit einer Aktion.
    Eigentlich sogar noch unpraktischer.

    Trotzdem danke für die Tipps ich schau mir mal die Addons an.

  • Ich verfolge mal den Ansatz mit der absoluten Feld ID, bislang löse ich nur kritische Fehler aus. Ich tüftel noch ein bißchen bis das funtioniert. Dann gebe ich ein Feedback.

  • vielleicht ist es ähnlich, so wie ich es machen (aus deinem text werde ich auch nicht schlau, was du genau willst):
    wenn ich einen Beitrag erstelle, habe ich die Möglichkeit mehrere Bereichsdefinitionen auszuwählen, Händisch angelegt terms einer Taxonomie, wähle ich zb Bereich aus (zb Termin, Ort, Projekt, ....) dann werden in Taxonomies (Termin, Ort, oder Projekt, ...) der Titel des Beitrags als neue Term angelegt, in weitere Folge schaffe ich damit verknüpfungen von Beiträge die zusammengehören:
    Beispiel ein Beitrag XX wird eine Projekt, dh Bereich Projekt auswählen, Taxonomie Projekte bekommt automatisch Term mit der Bezeichnung XX, bei einem neuen Beiträg (zb termin) wähle ich unter Projekte XX aus, und damit gehört der Termin zum Projekt XX, und dementsprechende ausgaben, zeigen dann an wie was zusammengehört.
    aja mit PHP und Wordpress Functionen ist das machbar,


    Das Taxonomie Thema bringt mich vermutlich nicht weiter, das sind wenn ichs richtig verstanden habe "Unter"-Kategorien, die kann ich aber auch nicht dynmaisch mit einem Platzhalter im Formular definieren, oder?

  • Das Taxonomie Thema bringt mich vermutlich nicht weiter, das sind wenn ichs richtig verstanden habe "Unter"-Kategorien, die kann ich aber auch nicht dynmaisch mit einem Platzhalter im Formular definieren, oder?


    bzw besser im Ninja Form Fortend Posting addon

  • Super, danke, das wär schön :)


    das posten innerhalb der kategorie außgehend und wiederum innerhalb des auftraggebenden beitrages funktioniert bereits, wenn dich das auch schon interessiert kann ich es dir gerne zeigen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!