所以我使用Wordpress高级自定义字段,outpit是这样的:
<?php the_field('output'); ?>
输出是纯文本,可以是:一,二或三。我需要用图像替换输出文本。
我尝试了这个例子:if string...但它不适合我。我也尝试了该链接底部的swithc示例,但仍然无法正常工作。 Probobly couse他们使用litlle有点不同的输出。有人能帮助我吗?
答案 0 :(得分:4)
你需要使用get_field()而不是the_field()。
根据你的链接问题:
$items = array(
"one" => "one.png",
"two" => "two.png",
"three" => "three.png"
);
<img src="<?php echo $items[ get_field('output') ]; ?>" />
答案 1 :(得分:0)
您最好使用选择字段,因为您无法强制用户使用文本字段添加特定值。
http://www.advancedcustomfields.com/resources/field-types/select/
而不是像user574632那样回答。
答案 2 :(得分:0)
我不使用高级自定义字段,但如果它没有get
的等效the_field()
函数(这会让我感到惊讶),那么您可以使用以下方法(显然填写{根据需要{1}}和src
属性。)
alt
答案 3 :(得分:-2)
根据我对WordPress的理解,the_title()
和the_content()
之类的函数只是直接回显内容,但通常会有相应的get_the_*
函数返回值。 the_field()
有get_field()
。因此,您可以在变量中捕获它并在switch
语句中使用它:
<?php
$output = get_field('output');
switch ($output) {
case 'one':
// first image
break;
case 'two':
// second image
break;
case 'three':
// third image
break;
}