【发布时间】:2019-11-28 10:16:02
【问题描述】:
我正在 ACF 的帮助下在 wordpress 中建立一个网站,但我遇到了一个我似乎无法解决的问题。
我有一个名为 "portfolio" 的转发器字段,其中有一个带有 3 个选项的复选框字段。 我使用它们,因此我可以将类添加到 div 以进行过滤,它工作正常,但是当我想将选择值作为列表显示到我的网页时,它会多次给我相同的值。
例如,我添加了 5 个 div,其中 3 个检查了“digi”的值,所以当我调用复选框值时,我会得到 3 次列表元素“digi”。我真的只想在我的网站上显示 3 种不同的选择。
我的代码:
<?php
if( have_rows('portfolio') ):
while ( have_rows('portfolio') ) : the_row();
$class = get_sub_field('portfolio_img_class');
foreach( $class as $value ): ?>
<li><?php echo $value; ?></li>
<?php endforeach;
endwhile;
else :
echo "FFS";
endif;
?>
我用来为 div 提供类的其他代码:
<?php if( have_rows('portfolio') ): ?>
<section class="work">
<?php while( have_rows('portfolio') ): the_row();
$image = get_sub_field('portfolio_img');
$text = get_sub_field('portfolio_img_text');
$link = get_sub_field('portfolio_img_link');
$class = get_sub_field('portfolio_img_class');
?>
<div class="item-work item-work-portfolio
<?php
foreach ( $class as $value ) { echo $value . " "; } ?>
">
<a href="<?php echo $link; ?>">
<img src="<?php echo $image; ?>"/>
<div class="work-overlay">
<h1 class="work-overlay-title"><?php echo $text; ?></h1>
</div>
</a>
</div>
<?php endwhile; ?>
</section>
<?php endif; ?>
我尝试了很多东西,但似乎没有任何效果。我这个几乎只是在主题中硬编码该死的东西。
编辑: 第一段代码的输出:
<ul id="nupud">
<li><a class="btn" onclick="filterSelection('all')">Kõik</a></li>
<li>digi</li>
<li>disain</li>
<li>digi</li>
<li>disain</li>
<li>digi</li>
<li>disain</li>
<li>digi</li>
<li>disain</li>
<li>digi</li>
<li>disain</li>
<li>sotsiaalmeedia</li>
</ul>
【问题讨论】:
标签: php wordpress advanced-custom-fields