2013-10-29 78 views
0

我正在使用中繼器字段在頁面上顯示產品。其中一些需要PDF下載鏈接,有些則不需要。只有當PDF已經上傳到文件上傳中繼器子字段時,我才能夠顯示「下載PDF」鏈接。僅當它存在於帖子中時才顯示高級自定義字段中繼器子字段

這裏就是我與迄今爲止的工作:

<?php 
      $rows = get_field('artwork_example'); 
      if($rows) { 
       foreach($rows as $row) { 
        echo '<div class="artwork-content"><img src="', $row['image']; 
        echo '"><div class="right"><h2>', $row['title']; 
        echo '</h2><p>', $row['text']; 
        echo '</p>'; 
        if (get_sub_field('upload_pdf')) echo '<p><a class="download" href="', $row['upload_pdf']; 
        if (get_sub_field('upload_pdf')) echo '">Download PDF</a></p></div></div>'; 
     } 
    } 
?> 

讚賞任何幫助,謝謝!

回答

0

您可以簡單地使用:

<?php if ($row['upload_pdf']) 
{ 
    //show link 
} 
else 
{ 
    //hide 
} 

編輯:

我會做這樣的:

<?php 
      $rows = get_field('artwork_example'); 
      if($rows) { 
       foreach($rows as $row) { 
        echo '<div class="artwork-content"><img src="', $row['image']; 
        echo '"><div class="right"><h2>', $row['title']; 
        echo '</h2><p>', $row['text']; 
        echo '</p>'; 

        if ($row['upload_pdf']) 
        { 
         <a class="download" href="<?php echo $row['url']; ?>">Download PDF</a> <?php 
        } 
        else 
        { 
         echo ''; 
        } 
     } 
    } 
?> 

另外,如果你不能確定如何獲得一定值出ACF,使用var_dump。

var_dump($row); 

祝你好運!

+0

謝謝,我將如何融入到這上面的代碼?似乎打破了我嘗試過的方式。 –

+0

請參閱我編輯的帖子。 – Marciano

+0

謝謝,但是我得到這樣的錯誤: –

1

使用此結構與循環

if (have_posts()) while (have_posts()) : the_post(); ?> 

<?php if(get_field('photo_repeater')): ?> 

<?php while(has_sub_field('photo_repeater')): ?> 

<?php if(get_sub_field('photo_slider')): ?> 

<?php while(has_sub_field('photo_slider')): ?> 

     <?php 
     $img_url = get_sub_field('photo_block'); 
     $image = aq_resize($img_url, 200, 200, true); 
     ?> 
     <img class="image_news" src="<?php echo $image; ?>" alt="111" /> 
<?php endwhile; ?>  

<?php endif; ?> 

<?php endwhile; ?> 

<?php endif; ?> 

<?php endwhile; ?> 

PS - 測試內部中繼子領域 - 中繼

if(get_sub_field('photo_block'))(....) 
相關問題