2017-01-05 2 views
0

Ich habe die folgende Schleife, diein einem Separator zwischen den Pfosten in Schleife setzen

html

<?php 
if (have_posts()) { 
    while (have_posts()) { 
     the_post(); 
     echo '<div class="cell"><a href="'.get_the_permalink().'">'.get_the_title().'</a></div>'; 
    } // end while 
} // end if 
?> 

css

.cell { 
    display: inline-block; 
    margin: 0 10px; 
} 

im Titel jeder Beitrag auf meiner Seite bringt möchte ich Setzen Sie ein Trennzeichen zwischen den einzelnen Titeln/Links (nicht an den Enden).

Beispielausgabe

link <div class="separate"></div> 
link <div class="separate"></div> link 
+0

Können Sie nicht '' '' ''
verwenden? – iyop45

+0

Ich möchte eine benutzerdefinierte Trennzeichen setzen, während sie ausgerichtet bleiben (ich weiß, ich habe vergessen, dieses Teil hinzuzufügen und wird meine Post bearbeiten) – user3550879

Antwort

1

einfache Lösung unter Verwendung zusätzlicher Flagvariable $first

<?php 
    if (have_posts()) { 
     $first = true; 

     while (have_posts()) { 
      the_post(); 

      if($first){ 
       $first = false; 
      } else { 
       // echo separator 
      } 

      echo '<div class="cell"><a href="'.get_the_permalink().'">'.get_the_title().'</a></div>'; 
     } // end while 
    } // end if 
?> 
+0

Probleme beim Echo meines Trennzeichens buchstäblich brauchen nur ein div namens 'Trennzeichen' zwischen den Links zu sein – user3550879

+0

ersetzen '// Echo-Trennzeichen' mit 'Echo' '; ' – pwolaq

+0

meine Entschuldigung Ich hatte einen Tippfehler, Ihre Lösung funktioniert gut , Vielen Dank – user3550879

0

Sie in einem <hr> Element am Ende des Echo so sagen könnte:

echo '<div class="cell"><a href="'.get_the_permalink().'">'.get_the_title().'</a></div><hr>'; 
+0

löst dies das Problem der Separatoren an den Enden? – user3550879

0

Sie müssen einen Zähler setzen und den Zähler mit Beiträge pro Seite wenn Sie zu überprüfen, vergleichen habe den letzten Post erreicht.

Sie können Beiträge pro Seite von Optionen Tabelle wie folgt erhalten:

$default_posts_per_page = get_option('posts_per_page'); 

Überprüfen Sie, ob Sie den letzten Beitrag erreicht haben, drucke dann nicht aus dem Separator.

$counter = 1; 
while (have_posts()) { 

    //your stuffs 

    if ($counter != $default_posts_per_page) { 
     //print separator 
    } 

    $counter++; 
} 
Verwandte Themen