Heim > Fragen und Antworten > Hauptteil
Ich habe also drei Variablen $blue_tooltip_icon, $red_tooltip_icon und $gray_tooltip_icon. Jetzt möchte ich bestimmte Variablen basierend auf den an den WordPress-Shortcode übergebenen Attributen ausgeben. Wenn also „blau“ eingegeben wird, ist es $blue_tooltip_icon; wenn „rot“ eingegeben wird, ist es $red_tooltip_icon; wenn „grau“ eingegeben wird, ist es $gray_tooltip_icon.
Die Frage ist, wie man dieses Problem lösen kann. Ich habe versucht, if-Anweisungen zu verwenden, habe jedoch festgestellt, dass dies in der Verkettung nicht möglich ist.
Das versuche ich über den Shortcode auszugeben. Das Tooltip-Symbol ändert sich basierend auf der Farbe, die über das Shortcode-Attribut eingegeben wurde.
$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;