2016-05-10 15 views
0

Ich verwende die WP-Post-Formate in meinem Theme, und ich möchte Teile der vorherigen Posts in meiner Single-Post-Seite wiedergeben. Es funktioniert gut, aber ich möchte nur vorherige Posts aus einem bestimmten Post-Format anzeigen. Ich habe versucht, eine if Anweisung mit der has_post_format()-Funktion, aber es würde nicht funktionieren:Überprüfen, ob der vorherige Artikel ein bestimmtes Wordpress-Postformat hat

php:

$prev_post = get_previous_post(); 

$prev_post_id = $prev_post->ID; 

$prev_post_title = $prev_post->post_title; 

function prev_post_item($object) { 
    if (!has_post_format('gallery', $prev_post_id)) { 
     echo $object; 
    } 
} 

html:

<h2><?php prev_post_item($prev_post_title); ?></h2> 

Antwort

0

Zwei Optionen

<h2> 
    <?php 
     $prev_post = get_previous_post(); 
     $prev_post_id = $prev_post->ID; 
     if (! has_post_format('gallery', $prev_post_id)) { 
      echo 'Is not a gallery' 
     } 
    ?> 
</h2> 

oder in einer Funktion

function your_prev_post_item() { 
    $prev_post = get_previous_post(); 
    $prev_post_id = $prev_post->ID; 
    if (!has_post_format('gallery', $prev_post_id)) { 
     echo 'Is not a gallery' 
    } 
} 

dann die HTML

<h2><?php your_prev_post_item(); ?></h2> 
+0

Ah, ich brauche die Variablen innerhalb der Funktion? –