wie realisieren? denke mit custom fields?

  • Hallo community !

    Es geht darum, das ich gerade dabei bin eine neue Website mit wordpress zu realisieren. Dabei bin ich gerade an "meine" Grenzen mit Wordpress gestoßen. Ich denke, dass ich mein Problem mit custom fields lösen kann, aber wie?

    Nun aber zu meinem Problemchen. Ich erstelle eine Website mit verschiedenen Produkten, zu denen man auf der gleichen Seite anfragen stellen kann. Ich möchte nun ein ganzes Stück über dem eigentlichen Textbereich eine Box haben, in der ich zu jedem Produkt eine Überschrift und einen Text schreiben kann.
    Zuerst hab ich daran gedacht zu jeder Seite eine neue Templateseite zu erstellen, was jedoch sehr sehr umständlich ist und ich denke, dass es auch einfacher geht.

    Könnte mir jemand erklären wie so etwas funktioniert?

    Gruß Thorsten

    P.S. Sollten nicht klar sein was ich eigentlich will einfach nochmal fragen :D

    • 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

  • Prinzipiell ließe sich das mit custom fields machen, ja. Wenn Du dort viel Text unterbringen willst oder auf jeden Fall den graphischen Editor zur Textauszeichnung brauchst, macht sich das aber ggf. nicht so gut. Dann müsstest Du ggf. den Artikeleditor etwas anpassen.

    Aber erstmal die einfache Lösung: Denk Dir zwei möglichst eindeutig benannte Namen für die Felder aus, meinetwegen "extrainfo_ueberschift" und "extrainfo_text". Hänge beide an einen Testbeitrag dran. Dann passt Du die single.php an (oder die page.php für statische Seiten). An der gewünschten Stelle in einem PHP-Block das hier ergänzen:

    PHP
    $extrainfo_ueberschrift = get_post_meta($id, 'extrainfo_ueberschrift', true);
    $extrainfo_text = get_post_meta($id, 'extrainfo_text', true);
    if (!empty($extrainfo_ueberschrift)) {
      echo '<div class="extrainfo">';
      echo '<h3>' . htmlspecialchars($extrainfo_ueberschrift) . '</h3>';
      echo '<p>' . htmlspecialchars($extrainfo_text) . '</p>';
      echo '</div>';
    }

    Das würde die Felder ausgeben, aber nur wenn die Überschrift nicht leer ist. HTML-Zeichen im Text werden maskiert, Du kannst also kein HTML benutzen, musst dafür aber auch nicht daran denken, z.B. Ampersands selber zu maskieren. Die Überschrift wird als H3 und der Text als Absatz ausgegeben -- das kannst Du natürlich an Dein Theme anpassen. Stylen kannst Du das über die Klasse "extrainfo", die an dem umschließenden div hängt.

  • selbstgespräche die 50te

    [FONT=Arial][COLOR=Black]Hallo nochmal. Ich habe das letzte mal nur einen kleinen Test durchgeführt der auch funktioniert hat. Lediglich $id hatte ich ersetzt.[/COLOR][/FONT][COLOR=#000000][COLOR=#0000bb][FONT=Arial][COLOR=Black]

    Da mit nun aber aufgefallen ist, das ich nichtmal einen Umbruch erstellen kann, muss ich sagen , dass mir diese Variante nciht zusagt.
    Kann man auch einfach nur html ausgeben?

    Über schnelle Hilfe würd ich mich freuen.

    Gruß[/COLOR][/FONT]
    [/COLOR][/COLOR]

  • [COLOR=Black]Du kannst die beiden [/COLOR][COLOR=#000000][COLOR=Black][COLOR=#0000bb]htmlspecialchars[/COLOR][/COLOR][COLOR=#007700][COLOR=Black]-Aufrufe natürlich entfernen, wie ich geschrieben hatte. Dann musst Du Dich aber selber darum kümmern, dass der Feldinhalt korrekt codiertes HTML ist (betrifft vor allem Sonderzeichen wie & und <).

    Mit etwas mehr[/COLOR] [COLOR=Black]Aufwand kannst Du auch ein eigenes Eingabefeld dafür nutzen anstatt des einzeiligen Feldes der Benutzerdefinierten Felder. Das ist dann aber nicht ganz so einfach unmzusetzen.[/COLOR]
    [/COLOR][/COLOR]

  • Extra Textbereich

    Ich hänge mich hier mal dran, weil ich etwas Ähnliches vorhabe. Bei mir geht es um Projektbeschreibungen.

    Ich möchte meine single.php so aufteilen, dass über dem eigentlichen Post eine Slideshow gezeigt wird und neben dieser in einem gesonderten Textbereich Kurzinfos zu dem Projekt zu lesen sind. (Siehe Anhang.)

    Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Wie weise ich den Text im WYSIWYG-Editor genau diesem Textbereich "Kurzinfos" zu, im Bild-Anhang gelb dargestellt? Die Website wird für einen Kunden erstellt, und ich möchte ihm nicht zu viel Detais zumuten und mir die Custom Fields ersparen. Deshalb habe ich mir überlegt, die Position der Kurzinfos mit CSS zu definieren und dann mit Plugin das CSS auswählbar zu machen. Dann müssten doch die "Kurzinfos" an der richtigen Stelle erscheinen?

    Gibt es eine Möglichkeit, wie man das noch einfacher machen kann?

  • Ja, das soll sie.

    Jedes einzelne Projekt wird in einem Post beschrieben. Dann gibt es zu jedem Projekt eine Slideshow (ca. 3-4 Bilder), die nur in diesem Post erscheinen und zwar nur in der single.php.

Jetzt mitmachen!

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