Я использую следующие функции, чтобы проверить, содержит ли каждая часть адреса значение, существует ли полный адрес, почтовый индекс города-штата или только город и штат. Что такое чистый метод для написания этой функции. Я думал, что должен быть способ вставить каждую переменную в массив и выполнить цикл по каждому члену массива, проверяя, содержит ли оно значение для создания строки.
$location_name = get_field('location_name');
$address = get_field('address');
$city = get_field('city');
$state = get_field('state');
$zipcode = get_field('zipcode');
if($location_name){
$location = $location_name;
}
if($address){
$location .= $address.', ';
}
if($city){
$location .= $city;
}
if($state){
$location .= ', '.$state;
}
if($zipcode){
$location .= $zipcode;
}
$location = implode(
', ',
array_filter(
array(
get_field('location_name'),
get_field('address'),
get_field('city'),
get_field('state'),
get_field('zipcode')
)
)
);
Других решений пока нет …