Я новичок в PHP, но понятия не имею, как сформулировать этот вопрос.
Я хочу вернуть цветной круг, если цвет был выбран в другом месте.
Итак, если на серебре поставлена отметка, покажите серебряный кружок.
Если отмечены серебро и золото, покажите оба.
Должен быть более простой способ кодирования нижеприведенного, вместо того, чтобы создавать множество отдельных операторов if и каждый раз вызывать переменную?
elseif здесь не сработает, насколько я понимаю.
Простите мою наивность!
Код, который я написал ниже:
<?php
// for iphone
$colours_available = get_field('iphone_colours_available');
// check
if ( $colours_available && in_array('silver', $colours_available) ): ?>
<div class = "colour-circle-title"><p>Silver</p></div>
<?php endif; ?>
<?php
// vars
$colours_available = get_field('iphone_colours_available');
// check
if ( $colours_available && in_array('gold', $colours_available) ): ?>
<div class = "colour-circle-title"><p>Gold</p></div>
<?php endif; ?>
Большое спасибо за любую помощь!
Спасибо! этот метод сработал!






Как упоминалось в комментариях, вы можете перебирать свой массив $colours_available, а затем использовать ucwords() для ввода текста p-тега в верблюжий регистр:
<?php $colours_available = get_field('iphone_colours_available'); ?>
<?php foreach($colours_available as $color) :; ?>
<div class = "colour-circle-title"><p><?php echo ucwords($color); ?></p></div>
<?php endforeach; ?>
Примечание. Если вам не нужно использовать массив $colours_availble где-либо еще, вы можете удалить эту строку и заменить ее на get_field('iphone_colours_available') в цикле. Кроме того, это решение не касается сортировки, как в предыдущем решении. Для этого я бы рекомендовал посмотреть Функции сортировки PHP, в частности uasort, uksort и usort.
Если вы просто перебираете (попробуйте foreach ()) массив, возвращаемый get_field ('iphone_colours_available'), вы можете отобразить каждый цвет, который не показывает «если» требуется. Если все возвращаемые цвета не должны отображаться все, но я предполагаю, что он отфильтровывает только доступные.