1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

Dynamische Seitentitel

Dieses Thema im Forum "Plugins und Widgets" wurde erstellt von nature225, 8. Februar 2019.

Schlagworte:
  1. nature225

    nature225 Well-Known Member

    Registriert seit:
    15. Dezember 2017
    Beiträge:
    463
    Zustimmungen:
    36
    Hallo liebe Community,

    habt Ihr eine Ahnung ob es funktioniert den Titel einer Seite dynamisch zu gestalten?

    Ich beziehe aus einer XML Datei immer neue News, die ich in der Datenbank abspeichere.

    Alelrdings würde ich in der URL gerne folgende Struktur haben:

    /news/NEWSTITEL/id=1234 (damit es besser für die SEO Optimierung ist)

    meine aktuelle Struktur der Url sieht wie folgt aus:

    /news/post/?id=1234

    post ist zur Zeit eine einfach angelegte Seite mit einen eigenen page-template.

    Habt ihr vorschläge wie ich das vorhaben umsetzen könnte? Bin bis dato noch auf keien Lösung gestoßen und bei google finde ich auch nichts passendes.

    Danke euch :)
     
  2. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.681
    Zustimmungen:
    1.786
    Was ist unter "Einstellungen > Permalinks" eingestellt?

    Eigene URL-Teile kann man z.B. über custom query vars nutzen, hier ein älteres Tutorial dazu.

    In Deinem Fall z.B. zwei Variablen /news/post/1234/irgendeintextdereinfachgarnichtausgewertetwird/ oder nur eine ohne den ID /news/post/deindynamischertitelderinderdbabgefragtwirdohneid/

    Was sich evtl. als komplette Alternative empfehlen würde, ist ein sog. "Custom Post Type" für Deine News und dann die Nutzung der ganz normalen WordPress Funktionen wp_insert_post() usw.
     
    #2 b3317133, 8. Februar 2019
    Zuletzt bearbeitet: 8. Februar 2019
  3. nature225

    nature225 Well-Known Member

    Registriert seit:
    15. Dezember 2017
    Beiträge:
    463
    Zustimmungen:
    36
    custom Post type mit abfrage ob schon existiert sonst wp_insert post?

    Klingt wohl am besten :)
     
  4. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.681
    Zustimmungen:
    1.786
    Wahlweise auch Custom Post Type mit bei jedem Import erst alle Beiträge löschen und dann alle neu einfügen. Es gibt viele Möglichkeiten.
     
  5. nature225

    nature225 Well-Known Member

    Registriert seit:
    15. Dezember 2017
    Beiträge:
    463
    Zustimmungen:
    36
    Hab es soweit hinbekommen das er wp_insert_post ausführt sobald es die News nicht gibt.

    Allerdings hab ich noch eine Frage bzw. Problem.

    Wie füge ich ein beitragsbild ein? In der xml habe ich eine url die auch in der Datenbank in einer extra Tabelle gespeichert wird. Wie setze ich diese Url nun beim wp_insert_post als Beitragsbild? :/
     
  6. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.681
    Zustimmungen:
    1.786
    Beitragsbilder werden nur lokal in WordPress aus der Mediathek genutzt.

    Variante 1: Lade die Bilder in die Mediathek, z.B. via media_handle_upload(), wp_handle_sideload() o.ä. und setze dann mit set_post_thumbnail() das Beitragsbild.

    Variante 2: Speichere die externe URL zum Bild als Custom Field beim entspr. Beitrag und passe die Templates für z.B. single und archive des Custom Post Types bei der Ausgabe des Beitragsbildes entspr. an, so dass beim Vorhandensein des Custom Fields ein img Tag mit der externen URL anstelle von the_post_thumbnail() usw. für das Beitragsbild genutzt wird. Alternativ zur Anpassung der Templates nutze den einen post_thumbnail_html Filter und ersetze dann das HTML entspr. mit einem passenden img Tag zu Deiner externen URL.
     
  7. nature225

    nature225 Well-Known Member

    Registriert seit:
    15. Dezember 2017
    Beiträge:
    463
    Zustimmungen:
    36
    Hättest du vlt einmal ein Beispiel für den media Upload ? Bekomme dies nicht hin egal was probiere :/
     
  8. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.681
    Zustimmungen:
    1.786
    Bei media_handle_upload() simuliert man einen kompletten $_POST Upload Request. Da Dein Bild als URL verfügbar ist, probiere es mal mit dem Beispiel bei wp_handle_sideload() zzgl. entspr. Fehlerausgaben oder ggf. noch besser mit media_sideload_image()
     
    #8 b3317133, 8. Februar 2019
    Zuletzt bearbeitet: 8. Februar 2019
  9. nature225

    nature225 Well-Known Member

    Registriert seit:
    15. Dezember 2017
    Beiträge:
    463
    Zustimmungen:
    36
    Teste es mit folgenden Code:

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Das Image wird auch in die Mediathek geladen. nun habe ich versucht mit set_post_thumbnail($post_id, $image) das Bild zu setzen, worauf aber keine Reaktion kommt


    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
    #9 nature225, 9. Februar 2019
    Zuletzt bearbeitet: 9. Februar 2019
  10. nature225

    nature225 Well-Known Member

    Registriert seit:
    15. Dezember 2017
    Beiträge:
    463
    Zustimmungen:
    36
    Update:
    In der Mediathek wird auch angezeigt zu welchem Beitrag das Bild hochgeladen ist. Allerdings wird beim beitrag das Bild nicht angezeigt. In der Datenbank ist das Bild aber dem Post zugeordnet. Woran köntne dies noch liegen?

    Wäre sehr dankbar über einen Tipp :)
     
  11. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.681
    Zustimmungen:
    1.786
    media_sideload_image() müsste das alles schon alleine machen, ohne set_post_thumbnail() usw. - wobei ich da nicht ganz sicher bin, Quellcode nachlesen.

    Würde wie beschrieben die Beispiele überall mit entspr. Fehlerausgaben ergänzen und ausgeben, das ist einfacher zum debugging...

    Deine Zeile wp_get_attachment_url( $id ); kommt mir z.B. seltsam vor, funktioniert das? Woher kommt $id? Was genau wird zurückgegeben?

    Noch ein anderer Testansatz: Wird das Bild im Backend beim Bearbeiten des Beitrags als Standard Beitragsbild gezeigt? Mit einem Standard Twenty XX Theme?
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden