簡體   English   中英

高級自定義字段復選框

[英]advanced custom fields Checkbox

我在wordpress中使用高級自定義字段復選框功能。

我用四個<li>創建了一個<ul> <li>

<ul class="post-icons">
  <li class="microphone" title="Alt text"></li>
  <li class="video" title="Alt text"></li>
  <li class="text" title="Alt text"></li>
  <li class="image" title="Alt text"></li>
</ul>

我已經在高級自定義字段中創建了四個復選框。 如果我在class="(here)"使用此PHP。

<?php echo implode(' ', get_field('field_name')); ?>

它將把Checkboxes的值打印到類“”上,但是它將打印我創建的所有四個Checkboxes值。 我只想在正確的位置打印正確的一個。

最好的方法是使用.active類,但高級自定義字段不允許使用多個具有相同值的Checkbox。 我的意思是,如果您選中“ 圖像文本上的復選框”,它將在.active上打印

<li class="image" title="Alt text"></li> and 
<li class="text" title="Alt text"></li> 

Like = <li class="image active" title="Alt text"></li> and <li class="text active" title="Alt text"></li>

我有四個復選框

  • 視頻
  • 文本
  • 聲音
  • 圖片

還有四個<li>

 - <li class="video"></li>
 - <li class="text"></li>
 - <li class="microphone"></li>
 - <li class="image"></li>

麥克風=聲音

我想在正確的<li> class""項目上打印.active 選中相應的復選框時

我將鏈接到“高級自定義字段的文檔”復選框,我不太了解如何創建項目所需的內容。

文檔

從“問題”中並不清楚是什么字段存在。

如果是Checkbox字段(請檢查PHP三元運算符 ):

// If checked, the string is 'active', otherwise empty
$image = ( get_field( 'image_field' ) ) ? 'active' : '';
$video = ( get_field( 'video_field' ) ) ? 'active' : ''; 

<li class="image <?php echo $image; ?>" title="Alt text"></li> 
<li class="video <?php echo $video; ?>" title="Alt text"></li> 

但是,更好的是,一個Select字段允許多個選擇(請檢查PHP in_array ):
acf選擇多個

$get_field = get_field( 'field_name' ); 
$image = in_array( 'image', $get_field) ? 'active' : '';
$video = in_array( 'video', $get_field) ? 'active' : '';

<li class="image <?php echo $image; ?>" title="Alt text"></li> 
<li class="video <?php echo $video; ?>" title="Alt text"></li> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM