我有以下代码:
<?php echo get_custom_field('Services'); ?>
有三种可能的字符串输出:“食物”,“饮料”,“食物和饮料”。
我想用小图标替换这些字符串(例如用于“喝”的玻璃杯)。
使用PHP有一种简单的方法吗?
由于
答案 0 :(得分:4)
您可以通过数组映射值:
$items = array(
"Food" => "plate.png",
"Drink" => "glass.png",
"Food & Drink" => "tray.png"
);
然后在回显图像时执行查找:
<img src="<?php echo $items[ get_custom_field('Services') ]; ?>" />
答案 1 :(得分:1)
您可以使用开关:
<?php
switch (get_custom_field('Services')) {
case "glass":
echo '<img src="glass.jpg" />';
break;
case "drink":
echo '<img src="food.jpg" />';
break;
case "food & drink":
echo '<img src="food-drink.jpg" />';
break;
default:
echo '<img src="noicon.jpg" />';
}
?>
答案 2 :(得分:1)
不是直接答案,但我会在(包含...)元素中添加一个类,并使用css删除文本并显示背景图像:
PHP:
<?php echo '<span class="' . $SERVICES_ID_OR_SOMETHING . '">' . get_custom_field('Services') . '</span>'; ?>
的CSS:
.SERVICES_ID_OR_SOMETHING {
background: url(/path/to/image) no-repeat left center;
text-indent: -9999em;
}