所以我有三个变量 $blue_tooltip_icon、$red_tooltip_icon 和 $gray_tooltip_icon。现在我希望根据传递到 WordPress 短代码的属性来输出特定变量。因此,如果输入“蓝色”,则为 $blue_tooltip_icon;如果输入“红色”,则为 $red_tooltip_icon;如果输入“灰色”,则为 $gray_tooltip_icon。
问题是如何解决这个问题。我尝试使用 if 语句,但发现这在串联中是不可能的。
这就是我尝试通过短代码输出的内容,工具提示图标根据通过短代码属性输入的颜色而变化。
$message = '<span data-title="'.$atts['text'].'" class="tooltip">'.$content .$blue_tooltip_icon.'</span>';
P粉7040660872023-09-10 13:40:58
我认为这对你有帮助。
<?php // Cleaner way $blue_tooltip_icon = 'blue'; $red_tooltip_icon = 'red'; $green_tooltip_icon = 'green'; $atts['text'] = 'john'; $content = 'content'; $icons = [ 'blue' => $blue_tooltip_icon, 'red' => $red_tooltip_icon, 'green' => $green_tooltip_icon ]; $input = 'red'; //$message = '<span data-title="' . $atts['text'] . '" class="tooltip">' . $content . $icons[$input] . '</span>'; // Awkward style with ternary operator $input = 'green'; $message = '<span data-title="' . $atts['text'] . '" class="tooltip">' . $content . (($input == "red") ? $red_tooltip_icon : (($input == "blue") ? $blue_tooltip_icon : $green_tooltip_icon)) . '</span>'; echo $message;