我有下面的代碼:如果字符串是...則用圖像替換它?
<?php echo get_custom_field('Services'); ?>
有此三種可能的字符串輸出:「食物」,「飲料」,「食品飲料&」。
我想用小圖標替換這些字符串(例如用於「飲料」的玻璃杯)。
有沒有一種簡單的方法來做到這一點與PHP?
感謝
我有下面的代碼:如果字符串是...則用圖像替換它?
<?php echo get_custom_field('Services'); ?>
有此三種可能的字符串輸出:「食物」,「飲料」,「食品飲料&」。
我想用小圖標替換這些字符串(例如用於「飲料」的玻璃杯)。
有沒有一種簡單的方法來做到這一點與PHP?
感謝
你可以通過數組映射值:
$items = array(
"Food" => "plate.png",
"Drink" => "glass.png",
"Food & Drink" => "tray.png"
);
然後呼應圖像時進行的查找:
<img src="<?php echo $items[ get_custom_field('Services') ]; ?>" />
你可以使用開關:
<?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" />';
}
?>
不是一個直接的答案,但我會添加一個類的(含...)元素,並使用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;
}
工程,很棒。謝謝! – user1444027