Hallo.
Ich benutze das Plugin Custom Field Template. Kann mit einer sagen, wie ich die so generierten Custom Fields in mein PHP-Template einbauen kann?
Oder kann man die neuen Felder nur in dem Editor mittels Shortcode einbauen?
Brauche die neuen CF`s in meinem Template.
Danke für Hilfe.
Fisch
Frage zu Custom Field Template
-
-
- Gerade eben
- 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)
-
eigentlich steht alles im manuel ;)
entweder shortcode oder per php!Template Content:
[Projekt]
type = text
size = 35
label = Project NamePHP:
$strProjekt = get_post_meta($post->ID, 'Projekt', true);Shortcode:
http://wordpress.org/extend/plugins…d-template/faq/ -
An welcher Steller meiner Index.php bzw. wohin im Loop müsste ich den PHP Befehl dann setzten und kann man irgendwo bestimmen wo auf dem ausgegeben Post die Template Box dann erscheint? Ich würde auf Zeile 32 tippen, nach
Zitat<?php get_post_custom_values('name1'); ?>
?
Hier meine index.php mit dem Loop
PHP
Alles anzeigen<?php list($bfa_ata, $cols, $left_col, $left_col2, $right_col, $right_col2, $bfa_ata['h_blogtitle'], $bfa_ata['h_posttitle']) = bfa_get_options(); get_header(); extract($bfa_ata); ?> <?php /* If there are any posts: */ if (have_posts()) : $bfa_ata['postcount'] = 0; /* Postcount needed for option "XX first posts full posts, rest excerpts" */ ?> <?php // Deactivated since 3.6.5 # include 'bfa://content_above_loop'; // Uses the following static code instead: ?> <?php bfa_next_previous_page_links('Top'); // For MULTI post pages if activated at ATO -> Next/Previous Navigation: ?> <?php while (have_posts()) : the_post(); $bfa_ata['postcount']++; ?> <?php // Deactivated since 3.6.5 #include 'bfa://content_inside_loop'; // Uses the following static code instead: ?> <?php bfa_next_previous_post_links('Top'); // For SINGLE post pages if activated at ATO -> Next/Previous Navigation ?> <?php /* Post Container starts here */ if ( function_exists('post_class') ) { ?> <div <?php if ( is_page() ) { post_class('post'); } else { post_class(); } ?> id="post-<?php the_ID(); ?>"> <?php } else { ?> <div class="<?php echo ( is_page() ? 'page ' : '' ) . 'post" id="post-'; the_ID(); ?>"> <?php } ?> <?php bfa_post_kicker('<div class="post-kicker">','</div>'); ?> <?php bfa_post_headline('<div class="post-headline">','</div>'); ?> <?php bfa_post_byline('<div class="post-byline">','</div>'); ?> <?php bfa_post_bodycopy('<div class="post-bodycopy clearfix">','</div>'); ?> <?php get_post_custom_values('name1'); ?> <?php bfa_post_pagination('<p class="post-pagination"><strong>'.__('Pages:','atahualpa').'</strong>','</p>'); ?> <?php bfa_post_footer('<div class="post-footer">','</div>'); ?> </div><!-- / Post --> <?php endwhile; ?> <?php // Deactivated since 3.6.5 # include 'bfa://content_below_loop'; // Uses the following static code instead: ?> <?php bfa_next_previous_post_links('Middle'); // Displayed on SINGLE post pages if activated at ATO -> Next/Previous Navigation: ?> <?php bfa_get_comments(); // Load Comments template (on single post pages, and static pages, if set on options page): ?> <?php bfa_next_previous_post_links('Bottom'); // Displayed on SINGLE post pages if activated at ATO -> Next/Previous Navigation: ?> <?php bfa_archives_page('<div class="archives-page">','</div>'); // Archives Pages. Displayed on a specific static page, if configured at ATO -> Archives Pages: ?> <?php bfa_next_previous_page_links('Bottom'); // Displayed on MULTI post pages if activated at ATO -> Next/Previous Navigation: ?> <?php /* END of: If there are any posts */ else : /* If there are no posts: */ ?> <?php // Deactivated since 3.6.5 #include 'bfa://content_not_found'; // Uses the following static code instead: ?> <h2><?php _e('Not Found','atahualpa'); ?></h2> <p><?php _e("Sorry, but you are looking for something that isn't here.","atahualpa"); ?></p> <?php endif; /* END of: If there are no posts */ ?> <?php get_footer(); ?> -
der Loop ist alles zwischen while und endwhile,
wo du den Code einsetzt willst liegt an dir,
-
Danke das mit dem Loop habe ich mittelerweile auch rausbekommen, aber nicht wirklich wo genau ich den Code einsetzen muss.
Es geht um diese zwei Zeilen für das Verve Plugin:
Egal wo ich sie hinsetze, sie tauchen im Frontend nicht auf, in der Anleitung des PIs steht nur:
ZitatPlace <?php get_post_custom_values('your_custom_field_key_here '); ?> inside the Loop in your templates
-
du weist aber laut Anleitung schon, das das Ergebnis eine Array ist.
-
du weist aber laut Anleitung schon, das das Ergebnis eine Array ist.
Wieso eine Array? Ich kann doch beim Feld bestimmen was eingegen wird, es sollte doch im Frontend einfach nur ausgegeben werden?
-
bei dieser Funktion get_post_custom_values kommt ein Array retour, ist so siehe http://codex.wordpress.org/Function_Refer…t_custom_values
-
Hallo,
wow war eine kurze Nacht, habe noch bis 2 Uhr dran herumgedoktert.
also was in die functions.php einzufügen ist generiert das Plugin Advanced Custom Fields zum Glück selbst und ich habe es auch erfogreich dort eingefügt, so dass die Felder nun im Backend erscheinen.
Um die Felder auszugeben, habe ich den Loop editiert, das funktioniert nun auch:
PHP<img src="<?php the_field('Cover'); ?>" alt="" /> <?php the_field('spielname'); ?> <?php the_field('preis'); ?> <?php the_field('enwickler'); ?> <?php the_field('publisher'); ?> <?php the_field('USK'); ?> <img src="<?php the_field('usk_logo'); ?>" alt=""/>Nun gibt es noch 2 weitere Probleme, zum einen zeigt das erste Feld "Cover"
eine "0" im Frontend wenn kein Bild hinterlegt ist - wie kann ich das unterdrücken - bzw. gibt es einen konditionalen Befehl wenn nichts ausgegeben werden soll, bzw. das Feld im Backend nicht befüllt ist.Schick wäre auch wenn das vorherige Feld "USK", das im Backend als Auswahlfeld hinterlegt ist, die Anzeige eines bestimmten Bildes im "usk_logo" Feld auslösen könnte welches jeweils in der Mediathek hinterlegt ist.
Last but not least, müsste das Ganze dann noch in Tabellenform an die Seiter oder den Boden des Bodies, der bisherige html Code für diese Tabelle aus der alten Seite lautete:
HTML
Alles anzeigen<table width="170" border="0" align="left" cellpadding="5" cellspacing="5"> <tr> <td width="150" align="center" valign="top" bgcolor="#8598B6"><div align="center"><img src="packshot.jpg" width="170" height="196"></div> </td> </tr> <tr> <td height="26" align="center" valign="top" bgcolor="#8598B6"><b><font color="#003471" size="2" face="Verdana, Arial, Helvetica, sans-serif">Rage</font></b></td> </tr> <tr> <td height="80" align="center" valign="top" bgcolor="#8598B6"><p><font face="Verdana, Arial, Helvetica, sans-serif" color="#000000"><b><font color="#003471" size="2">Preis: ca. EUR 60,-</font></b></font></p> <p><font color="#003366" size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Entwickler:</strong></font><b><br> <a href="http://www.idsoftware.com/" target="_blank">id Software</a></b></p> <p><font color="#003366" size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Erschienen bei:</strong></font><br> <a href="http://www.bethsoft.com/ger/index.php" target="_blank">Bethesda Softworks </a> </p> </tr> <tr> <td height="112" align="center" valign="top" bgcolor="#8598B6"><img src="../../../images/usk18.gif" width="101" height="101"></td> </tr> </table>Die Farbangaben im HTML Code können natürlich ignoriert werden.
-
Nun gibt es noch 2 weitere Probleme, zum einen zeigt das erste Feld "Cover"
eine "0" im Frontend wenn kein Bild hinterlegt ist - wie kann ich das unterdrücken - bzw. gibt es einen konditionalen Befehl wenn nichts ausgegeben werden soll, bzw. das Feld im Backend nicht befüllt ist.
ein if Abfrage ob entweder value oder sogar key vorhandenZitat
Schick wäre auch wenn das vorherige Feld "USK", das im Backend als Auswahlfeld hinterlegt ist, die Anzeige eines bestimmten Bildes im "usk_logo" Feld auslösen könnte welches jeweils in der Mediathek hinterlegt ist.
entweder direkt verlinken, oder Funktion ähnlich wie Bild einfügen wie es bei Artikel ist aktivieren. bzw vielleicht sogar direkt die Thumbnails aus der Mediathek inkl link zu großem Bild nutzen.ZitatLast but not least, müsste das Ganze dann noch in Tabellenform an die Seiter oder den Boden des Bodies, der bisherige html Code für diese Tabelle aus der alten Seite lautete:
meinst du Sidebar oder Footer?
dazu ist es interessanter mit Sidebar Widget (zb per Plugin)zu arbeiten, und dies nicht dirket im Template einzubauenweiters wäre es interesant die Custom Field nicht direkt ins template zu integrieren, sondern durch die Filter Hook möglichkeit von Wordpress diese zb wenn vorhanden an bestimmter stelle im Template darstellen, vorteil man greift nicht ins Template ein, und auch eine Tausch des Design template ermöglicht im Normalfall weiterhin die Extrafunktionen.
-
Hallo Shadow,
Danke, war natürlich in der Zwischenzeit fleissig und lerne dazu, danke für den Vorschlag mit dem Widget, dadurch habe ich weitergesucht.
Das Problem war das Positionieren der Felder, nach vielen Versuchen direkt im loop der index.php habe ich ein posting gefunden, dass auf die Möglichkeit hinweis, dieses Problem durch ein Widget zu lösen Thread: How to register widget below posts ? .Also habe ich mein eigenes Widget am Ende des Body Containers kreiert und es TribeMetaBox genannt. Dafürhabe ich folgenden bfa_widget code in den Loop eingefügt (die mittlere Zeile).
PHP<?php bfa_post_bodycopy('<div class="post-bodycopy clearfix">','</div>'); ?> <?php bfa_widget_area('name=TribeMetaBox&cells=1&align=&before_widget=<div id="%1$s" class="posts-widget %2$s">&after_widget=</div>'); ?> <?php if(get_field('my_checkbox')){ ?>Nun erscheint die Box aber leider hinter den Social Buttons des Tracking social sharing PI - keine Ahnung wie das umgehen kann, das Plugin hat nur ein Setting für die Buttons vor oder nach den Posts.
Als nächstes möchte das Widget nur bei bestimmten Kategorien anzeigen lassen, ist sowas möglich?
Wie schon vorher erwähnt wäre es toll wenn das Feld Cover automatisch das Bild aus den Thumbnails welches auch die Excerpts nutzen nehmen könnte. Und das USK Feld sollte das korrespondierene Bild fürs usk_logo Feld - benutzen aus der WP Mediathek.
Leider weiss ich weder wie ich die IF function nutzen kann noch wie ich direkt das Default Artikelbild verlinken kann :-(
Der Code für die Tabelle im Widget lautet:
HTML
Alles anzeigen<!--here starts boxcode--> <hr style="height: 2px; width: 100%;" size="2" width="100%" color="#B5C0CD" /> <div align="center"></div> <table width="100%" height="155" id="TO_Meta_Box" > <tr> <td align="center" ><div align="center"><img src="<?php the_field('Cover'); ?>" width="94" height="150" align="absmiddle"></div></td> <td align="center" valign="middle" ><div align="center"><?php the_field('spielname'); ?><br> Entwickler: <!--a href="http://www.idsoftware.com/" target="_blank"--><?php the_field('enwickler'); ?><br> Erschienen bei: <!--a href="http://www.bethsoft.com/ger/index.php" target="_blank"--><?php the_field('publisher'); ?><br> Preis: ca. <?php the_field('preis'); ?> Euro</div></td> <td align="center"><div align="center"><img src="<?php the_field('usk_logo');?>" width="90" height="90" align="absmiddle"></div></td> </tr> </table> <hr style="height: 2px; width: 100%;" size="2" width="100%" color="#B5C0CD" /> <!--here ends Boxcode-->Noch ein Frage kann man diese Linie irgendwie einfärben?
Nochmals vielen Dank
-
Ich schaffe es partout nicht dass die Social Plugins buttons unter meinem Widget erscheine und bekomme das mit dem PHP nicht gelöst. Wie gesagt ich bin absoluter Neuling und google schon 2 Tage nach einer Lösung, ich bin auf if oder isset oder empty gestossen, aber habe es leider nicht kapiert :confused:.
Was ich möchte ist ein Feld nur dann im Frontend ausgeben wenn es überhaupt befüllt worden ist (im Backend):
Mein bisheriger Code gibt das Feld immer aus und ich weiss nicht wie ich das nun genau ändern muss:
PHPEntwickler: <?php the_field('enwickler'); ?> Erschienen bei: <?php the_field('publisher'); ?> Preis: ca. <?php the_field('preis'); ?> EuroErweitert sollte dann das USK feld (multiple choice: 0,6,12,18) das der Author aussuchen kann das Bild fürs usk_logo feld aus den hinterlegten Bilder der Mediathek ziehen:
Das Feld Cover sollte dagegen mit dem Artikelfeld befüllt werden, das auch in den Excerpts zu sehen ist:
Vielen Dank
-
dort musst du dir mal in die Grundlagen von PHP einlesen.
Kontrollstrukturen wie if und andere http://www.php.net/manual/de/language.control-structures.php
usw... -
Auch das habe ich schon gelesen :oops: ich finde aber einfach keine Anweisung, wie man anhand des Feldes die eine oder andere Auswahl trifft.
Ich versuch mich mal an code aber der ist wahrscheinlich grotten falsch
Der einfach Code für die erste USK Klasse wäre:
Als Multiple Auswahl (wahrscheinlich falsch, oder=
PHP
Alles anzeigen<?php if(get_field('usk') == "0") { echo '<img src="'120px-USK0_neu2.svg_.png'>; } if(get_field('usk') == "6") { echo '<img src="'120px-USK6_neu2.svg_.png'>; } if(get_field('usk') == "12") { echo '<img src="'120px-USK12_neu2.svg_.png'>; } if(get_field('usk') == "18") { echo '<img src="'120px-USK18_neu2.svg_.png'>; } ?>
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!