Ein neues benutzerdefiniertes Feld hinzufügen

  • Hallo zusammen

    ich stehe vor folgendem Problem. Ich habe eine Seite mit meinen Projekten. Nun wollte ich zu diesen Projekten ein benutzderdefiniertes Feld hinzufügen. Damit ich dort den Direktlink zum Projekt angeben kann.

    Seite: blog.next-it.ch

    Ein Benutzderdefiniertes Feld habe ich erstellt. Nun will ich dies aber in meine Seite einbauen. Siehe Printscreen.

    Den Button habe ich eingebaut, aber wie kann ich nun dieses Feld mit diesem Button verbinden. So habe ich den Button eingebaut:

    PHP
    <a href="<?php the_permalink() ?>"  target="_blank" title="<?php printf( __('Permalink to %s', 'arras'), get_the_title() ) ?>">Ergebnis ...</a>

    Ich hoffe Ihr versteht was ich meine.

    gruss zyclop

    • 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

  • angenommen, der key des benutzerdefinierten feldes ist 'ergebnis' und das feld enthaelt die absolute url des direktlinks (alles incl. http://...), dann koennte das so aussehen:

    PHP
    <a href="<?php echo get_post_meta($post->ID,'ergebnis',true); ?>"  target="_blank" title="Link zum Ergebnis">Ergebnis ...</a>
  • Hallo

    Ich habe nun das Feld erstellt und den Code angepasst. Leider ohne erfolg. Er verweist, jetzt einfach auf meinen Blog und nicht auf den Link den ich angegeben habe.

    Sieh es dir auf der Seite an.

    Folgenden Code habe ich eingefügt:

    PHP
    <a href="<?php echo get_post_meta($post->ID,'ergebnis',true); ?>"  target="_blank" title="Link zum Ergebnis">Ergebnis ...</a>

    Folgendes Feld habe ich erstellt.

    Name:ergebnis
    Inhalt:http://www.website.ch

    BTW: Währe es möglich dass dieses Feld nur erscheint, wenn ich auch etwas in das Ergebnis Feld eingetragen habe?

    gruss zyclop

    Einmal editiert, zuletzt von zyclop (13. Juli 2010 um 14:05)

  • Zitat

    BTW: Währe es möglich dass dieses Feld nur erscheint, wenn ich auch etwas in das Ergebnis Feld eingetragen habe?


    wenn das feld leer ist, wird natuerlich nichts ausgegeben. dann steht da ein leerer link, der durchaus auf die vorderseite verlinken kann.

    wenn zB 'http://www.website.ch' im ben.def.feld drin steh, sollte das auch so in den Ergebnis-link ausgegeben werden. wo das dann hinverlinkt, ist eine andere frage. (die freuen sich jetzt ueber extra werbung ;-)

    was steht denn unten links im browser, wenn du ueber den Ergebnis-button hoverst?

    mit etwas mehr programmieren kannst du das vermeiden:

    PHP
    <?php $link = get_post_meta($post->ID,'ergebnis',true); if($link) { ?>
    <a href="<?php echo $link; ?>"  target="_blank" title="Link zum Ergebnis">Ergebnis ...</a> 
    <?php } else { ?>
    <span style="color: #999;">Ergebnis ...</span>
    <?php } ?>



    das fragt, ob das feld ausgefuellt ist;
    wenn ja, gibt es den link code und text aus;
    wenn nein, gibt es den nicht-verlinkten text in grau aus.

  • Hallo alchymyth

    Vielen Dank für deine Hilfe. Das "vergrauen" funktioniert. So wie es scheint liegt der Fehler an der Übergabe des Feldes. Denn jetzt sind alle Artikel vergraut.

    Siehe Bild

    gruss zyclop

    Einmal editiert, zuletzt von zyclop (21. Februar 2011 um 16:48)

  • ich habe den verdacht, dass das '$post->ID' nicht die post id richtig uebergibt.

    hat die datei einen standard loop und ist dieser code im loop?

    wie ist der code der ganzen datei?

    du kannst die zB in einen http://wordpress.pastebin.com/ kopieren und dann den link dazu hier angeben.


    ps: versuch auch mal anstelle von '$post->ID' - 'get_the_ID()' zu verwenden

  • danke. arras ist ziemlich anders als 'normale' themes.

    hab das mal auf meinem lokalen testblog installiert:
    und mein verdacht hat sich bestaetigt: $post->ID ist leer;
    aber get_the_ID() hat die post id.

    es geht hier mit:

    PHP
    <?php $link = get_post_meta(get_the_ID(),'ergebnis',true); if($link) { ?>
    <a href="<?php echo $link; ?>"  target="_blank" title="Link zum Ergebnis">Ergebnis ...</a> 
    <?php } else { ?>
    <span style="color: #999;">Ergebnis ...</span>
    <?php } ?>



    noch ein vorschlag: anstatt des grauen wortes 'ergebnis', lass das wort einfach weg, dann haben nur artikel mit diesem feld ausgefuellt einen 'ergebnis' button.

    also so:

    PHP
    <?php $link = get_post_meta(get_the_ID(),'ergebnis',true); if($link) { ?>
    <a href="<?php echo $link; ?>"  target="_blank" title="Link zum Ergebnis">Ergebnis ...</a> 
    <?php } ?>
  • Klasse. Vielen Dank.

    Nun kann ich natürlich mehrere Felder einfügen. z.B. Kunde, Event, FB, etc.

    Kann man in diesem Forum Beiträge bewerten?

    gruss und nochmals danke.

Jetzt mitmachen!

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