2017-05-22 6 views
1

Ich habe ein Problem, ich versuche, eine Landesflagge auf verschiedene benutzerdefinierte Beiträge in einer Kategorie zu zeigen, der Code, den ich benutze funktioniert, aber wenn es mehr als 1 Kategorie assigend zu einem benutzerdefinierten Beitrag Bilder werden nicht angezeigt.WordPress Benutzerdefinierte Kategorie Bild anzeigen

Hier ist mein Code:

<?php 
 
$terms = get_the_terms(get_the_ID(), 'story_category'); 
 
if ( $terms[0]->slug == "usa-freebies") :?> 
 
<img class="country" width="23" src="http://www.iconarchive.com/download/i47330/icons-land/vista-flags/United-States-Flag-1.ico"> 
 
<?php elseif ($terms[0]->slug == "uk-freebies") : ?> 
 
<img class="country" width="23" src="http://www.iconarchive.com/download/i47324/icons-land/vista-flags/United-Kingdom-Flag-1.ico"> 
 
<?php elseif ($terms[0]->term_taxonomy_id == "698") :?> 
 
<img class="country" width="21" src="https://cdn2.iconfinder.com/data/icons/Siena/256/globe%20blue.png"> 
 
<?php endif; ?>

Antwort

2

Gerade jetzt haben Sie die $terms[0] zeigt. 0 ist die erste Position von $terms Array, so dass immer die erste Kategorie angezeigt wird. Sie müssen Ihren Code ändern und eine foreach-Schleife laufen:

<?php 

    $terms = get_the_terms(get_the_ID(), 'story_category'); 

    foreach($terms as $current_term){ 
     if ( $current_term->slug == "usa-freebies") :?> 
     <img class="country" width="23" src="http://www.iconarchive.com/download/i47330/icons-land/vista-flags/United-States-Flag-1.ico"> 
     <?php elseif ($current_term->slug == "uk-freebies") : ?> 
     <img class="country" width="23" src="http://www.iconarchive.com/download/i47324/icons-land/vista-flags/United-Kingdom-Flag-1.ico"> 
     <?php elseif ($current_term->term_taxonomy_id == "698") :?> 
     <img class="country" width="21" src="https://cdn2.iconfinder.com/data/icons/Siena/256/globe%20blue.png"> 
     <?php endif; 
    } 
?> 
+0

Sie Sir ist ein geniales – Brian

+0

Auch FYI, Sie könnten einen 'print_r verwenden ($ terms)', um Ihre Daten Struktur zu sehen. Dies wird Ihnen helfen, Ihre Daten zu verstehen –

+0

Vielen Dank, ich werde anfangen, das zu verwenden, wenn ich versuche, Code herauszufinden. – Brian

Verwandte Themen