2016-12-22 1 views
0

Ich arbeite jetzt an einer WordPress-Thema Basis mit dem Advanced Custom Fields-Plugin, Und ich möchte ein <div>-Tag anzeigen, wenn die if Aussage wahr ist. Hier ist mein Code:div Tag in PHP-Anweisung anzeigen

<?php 
    $rows = get_field('classification'); 
    $sort = get_sub_field('sort'); 
    $row_count = count($rows); 
    for ($i = 1; $i <= $row_count; $i++)?> 
    <?php if ($i==1 || $i%5==0) { ?> 
     <div class="bor"></div> 
     <h3 style="text-align:center"> 
     <?php echo $sort; ?> 
     <a id="browser"></a></h3> 
     <div class="bor"></div> 
    <?php } ?> 

oder so ähnlich

<?php 
    $rows = get_field('classification'); 
    $fenlei = get_sub_field('fenlei'); 
    $row_count = count($rows); 
    for ($i = 1; $i <= $row_count; $i++)?> 
    <?php if ($i==1 || $i%5==0) { ?> 
     echo '<div class="bor"></div>'; 
     echo '<h3 style="text-align:center">'; 
     <?php echo $fenlei; ?> 
     echo '<a id="browser"></a></h3>'; 
     <div class="bor"></div> 
    <?php } ?> 

Aber der Inhalt der div-Tags nicht angezeigt. Jede Antwort wird geschätzt! Vielen Dank.

+0

Ihr Code ist verloren .. wo ist es? –

+0

Entschuldigung, das ist mein erster Beitrag, den ich irgendwann für dieses System brauche. –

+0

hmm, komisch. in einem einfachen php denke ich sollte es funktionieren. Wird ein Fehler gemeldet? Haben Sie auch die Seitenquelle überprüft (das erzeugte HTML)? –

Antwort

0

einige Ihrer Echo-Anweisung sind aus PHP-Tags. Verwenden Sie dies:

<?php 
    $rows = get_field('classification'); 
    $fenlei = get_sub_field('fenlei'); 
    $row_count = count($rows); 

    for ($i = 1; $i <= $row_count; $i++){ 
     if ($i==1 || $i%5==0) { 
     echo "<div class='bor'></div> 
       <h3 style='text-align:center'>".$fenlei." 
       <a id='browser'></a></h3> 
       <div class='bor'></div>"; 
     } 
    } 
?> 
+0

Dank Anuja Agarwal für Ihren Code, jetzt die div wurde auf der HTML-Seite gezeigt. –

+0

können Sie bitte akzeptieren und upvote es dann. Sie wissen, klicken Sie auf das Häkchen auf der linken Seite meiner Antwort. – ab29007

0

Wenn Sie den HTML-Code in PHP anzeigen wollten, empfehle ich Ihnen, den folgenden Code zu verwenden.

<?php 
    $rows = get_field('classification'); 
    $fenlei = get_sub_field('fenlei'); 
    $row_count = count($rows); 
    for($i = 1; $i <= $row_count; $i++){ 
     if ($i==1 || $i%5==0) { 
      echo '&gt;div class="bor"&lt;&gt;/div&lt;'; 
      echo '&gt;h3 style="text-align:center"&lt;'; 
      echo $fenlei; 
      echo '&gt;a id="browser"&lt;&gt;/a&lt;&gt;/h3&lt;'; 
      echo '&gt;div class="bor"&lt;&gt;/div&lt;'; 
     } 
    } 
?> 
+0

danke gleich –

0

Ich schätze, Sie verwenden ein ACF Pro Repeater-Feld. In diesem Fall müssen Sie the_row() verwenden, wodurch der korrekte Inhalt des Unterfelds festgelegt wird. Blick auf dieses editierten Beispiel aus dem Docs:

<?php 
// check if the repeater field has rows of data 
if(have_rows('repeater_field_name')): 
    // loop through the rows of data 
    while (have_rows('repeater_field_name')) : the_row(); 
     // display a sub field value 
     the_sub_field('sub_field_name'); 
    endwhile; 
endif; 

?> 

so denke ich, dass Ihr Code aussehen sollte wie:

<?php 
    if(have_rows('classification')): 
    while (have_rows('classification')) : the_row(); 
    // Your Code... 
    endwhile; 
endif; 
?> 

Und ich Sie vor kurzem zählen müssen gelernt haben, die Reihen außerhalb der while Schleife. Sonst wird es den Zeilenbetrag nicht fangen.

+0

Danke elicohenator! –