Intereting Posts
Пропустить дополнительный параметр в URL-адресе Многоязычный блог, преобразующий категории в поддомены Получить пользовательские данные из URL-адреса Можно ли изменить путь к css-файлу, зарегистрированному через wp_enqueue_style ()? Как изменить то, как выглядит страница создания публикации? Пользовательский метабокс, вызывающий функцию JS дважды Заполнить заполнение пользовательского поля при установке темы? Обменники WordPress – предложение текстового поля автоматически заполняется выберите персонализированный тип сообщения на обычной почте Один запрос для получения сообщений и их таксономии 2 домены, одинаковое содержимое, разные заголовки? Скрыть подменю иногда WordPress Multisite – может ли 2 домена совместно использовать базу данных пользователей? Включение WordPress в API RESTful Укажите количество сообщений для страницы подкатегории

Как я могу оптимизировать этот код?

У меня есть флажок «Дополнительные пользовательские поля», и я должен выполнить некоторые проверки. Если на заднем конце отмечен флажок, он выводит соответствующее изображение на переднем конце. У меня есть код, который «работает», но я думаю, что это должен быть гораздо более эффективный способ сделать это.

Вот код

$gluten = 'gluten.png'; $vegan = 'vegan.png'; $vegetarian = 'vegetarian.png'; $dish = get_field('diet_friendly'); if( in_array( 'gluten', get_field('diet_friendly') ) ) { echo '<img src="'; echo get_template_directory_uri().'/images/'.$gluten.'" alt="Gluten Free" />'; } if( in_array( 'vegan', get_field('diet_friendly') ) ) { echo '<img src="'; echo get_template_directory_uri().'/images/'.$vegan.'" alt="Vegan Friendly" />'; } 

Вот массив поля флажка

 array(2) { [0]=> string(6) "gluten" [1]=> string(5) "vegan" } 

Solutions Collecting From Web of "Как я могу оптимизировать этот код?"

Вы назначаете значение $dish , но затем не используете его …

Попробуйте следующее. Он использует тот факт, что ваш образ для «клейковины» называется gluten.png и т. Д. Вы сможете добавить больше тегов, просто добавив массив $images .

 $images = array( "gluten" => "Gluten Free", "vegan" => "Vegan Friendly", "vegetarian" => "Vegetarian" ); $dish_tags = (array) get_field('diet_friendly'); foreach ($images as $image_name => $alt) { if (in_array($image_name, $dish_tags)) { echo '<img src="' . get_template_directory_uri() . '/images/' . $image_name . '.png" alt="' . $alt . '" />'; } }