2014-02-12 105 views
1

我希望有人能够帮助我。我在使用Wordpress的高级自定义字段插件的if语句时遇到了麻烦。我有三种选择供用户选择,三种都可以选择,但如果他们愿意,也可以选择一种。WordPress中的高级自定义字段 - “if”语句麻烦

我遇到的问题是我写的代码显示了所有的HTML标签,甚至是空的。这是造成造型问题。我希望能够显示已填充的HTML。我已经尝试了ACF论坛上的解决方案,但无济于事。

链接:http://www.advancedcustomfields.com/resources/getting-started/code-examples/

这里的快(新手!)代码中,我在一分钟得到:

<a href="<?php the_sub_field('link'); ?>"><?php the_sub_field('link'); ?></a> 
<a href="<?php the_sub_field('doc'); ?>"><?php the_sub_field('doc'); ?></a> 
<p><?php the_sub_field('cap'); ?></p> 

我枕着ACF论坛和尝试这一点,但它打破了主题:

<?php if(the_sub_field('link')) { 
    echo '<a href="' . the_sub_field('link') . '">' . the_sub_field('link') . '</a>'; 
} ?> 

<?php if(the_sub_field('doc')) { 
    echo '<a href="' . the_sub_field('doc') . '">' . the_sub_field('doc') . '</a>'; 
} ?> 

<?php if(the_sub_field('cap')) { 
    echo '<p>' . the_sub_field('cap') . '</p>'; 
} ?> 

我正在寻找一些帮助来完成这项工作。我不认为我离正确的答案太远,但是我是一个拥有超出标准前端任何东西的新手,任何想法都将非常感激。

谢谢!

回答

0

尝试使用get_sub_field();

<?php if(get_sub_field('link')) { 
    echo '<a href="' . the_sub_field('link') . '">' . the_sub_field('link') . '</a>'; 
} ?> 

<?php if(get_sub_field('doc')) { 
    echo '<a href="' . the_sub_field('doc') . '">' . the_sub_field('doc') . '</a>'; 
} ?> 

<?php if(get_sub_field('cap')) { 
    echo '<p>' . the_sub_field('cap') . '</p>'; 
} ?> 

当通过这些领域的一个循环,这个功能从当前行返回一个子领域。

+0

我会试试这个...谢谢! –

1

像DK-夏威夷说,尝试循环使用get_sub_field()代替the_sub_field() 不同的是get_sub_field()返回值作为一个字符串,并the_sub_field()打印数据,

而且get_sub_field()只是一个中继器/流体下工作现场类型否则不会工作, 如果它不是中继器/流体领域的子字段只是尝试get_field()