2016-08-20 4 views
3

Ich habe eine benutzerdefinierte Taxonomie (Jahr) und jedes Jahr ist ein Begriff. Manchmal hat ein Film mehr als ein Jahr. Ich muss nur das (first - Last) Jahr nicht das ganze Jahr von einem Film drucken.Nur die erste und letzte Taxonomie für ein Produkt anzeigen

Zum Beispiel habe ich dieses Jahr für Vampire Diaries:
2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015 und 2016

Ich möchte nur die ersten und letzten Jahre zeigen diese Art und Weise : Vampire diaries (2008 - 2016)

Mein Code ist:

<?php $releaseyear_as_text = get_the_term_list($post->ID,'release-year','', ' , '); ?> 

    <h1><a href="<?php the_permalink() ?>"><?php the_title(); ?>&nbsp;(<?php echo strip_tags($releaseyear_as_text) ?>)</a></h1> 
    <div class="clearfix"></div> 

Wie kann ich das erreichen?

Dank

Antwort

1

Ich habe einige Code schreiben, unter dem genau das zeigen, was man selten zu erwarten. Zusätzlich wird es, dass zwei andere Fälle behandeln:

  • Wenn nur ein Begriff ist (ein Jahr)
  • Wenn es keinen Begriff (kein Jahr)

Hier ist Ihre angepassten Code:

<?php 

// Getting the years for the current post ID in a string coma separated 
$release_years_str = get_the_term_list($post->ID,'release-year','', ','); 

// concerting years string in an array of years 
$release_years_arr = explode(',', $release_years_str); 

// Number of items (terms) in the array 
$count = sizeof($release_years_arr); 

// First term year 
$first_year = $release_years_arr[ 0 ]; 

// if there is more than on term (year) 
if ($count > 1) 
{ 
    // Last term year 
    $last_year = $release_years_arr[ $count - 1 ]; 

    // Formatting in a string the 2 years: (first - Last) 
    $releaseyear_as_text = ' (' . $first_year . ' - ' . $last_year . ')'; 

} 
elseif ($count == 1) // If there is only one term (one year in the array) 
{ 
    $releaseyear_as_text = ' (' . $first_year . ')'; 
} 
else // No term (No years, empty array) 
{ 
    $releaseyear_as_text = ''; 
} 
?> 

<h1><a href="<?php the_permalink() ?>"><?php the_title(); echo strip_tags($releaseyear_as_text); ?></a></h1> 
<div class="clearfix"></div> 

WordPress Function Reference wp get post terms

Verwandte Themen