示例#1
0
/**
 * @since 3.0
 */
function awpcp_do_placeholder_location($ad, $placeholder)
{
    $regions = AWPCP_Ad::get_ad_regions_names($ad->ad_id);
    $cities = array();
    $states = array();
    $villages = array();
    $countries = array();
    $places = array();
    if (get_awpcp_option('show-city-field-before-county-field')) {
        $order = array('country', 'state', 'city', 'county');
    } else {
        $order = array('country', 'state', 'county', 'city');
    }
    foreach ($regions as $region) {
        if (!empty($region['city'])) {
            $cities[] = stripslashes_deep($region['city']);
        }
        if (!empty($region['county'])) {
            $villages[] = stripslashes_deep($region['county']);
        }
        if (!empty($region['state'])) {
            $states[] = stripslashes_deep($region['state']);
        }
        if (!empty($region['country'])) {
            $countries[] = stripslashes_deep($region['country']);
        }
        $place = array();
        foreach ($order as $field) {
            if (!empty($region[$field])) {
                $place[] = stripslashes_deep($region[$field]);
            }
        }
        $places[] = $place;
    }
    if (!empty($cities)) {
        $replacements['city'] = join(', ', $cities);
    }
    if (!empty($states)) {
        $replacements['state'] = join(', ', $states);
    }
    if (!empty($villages)) {
        $replacements['county'] = join(', ', $villages);
        $replacements['village'] = $replacements['county'];
    }
    if (!empty($countries)) {
        $replacements['country'] = join(', ', $countries);
    }
    $location = array();
    foreach ($places as $place) {
        $location[] = join(', ', $place);
    }
    $location = join('; ', $location);
    if (!empty($location)) {
        $replacements['location'] = sprintf('<br/><label>%s</label>: %s', __('Location', 'AWPCP'), $location);
        $replacements['region'] = $location;
    } else {
        $replacements['location'] = '';
        $replacements['region'] = '';
    }
    if (!empty($replacements['city'])) {
        $replacements['awpcp_city_display'] = sprintf('%s<br/>', $replacements['city']);
    } else {
        $replacements['awpcp_city_display'] = '';
    }
    if (!empty($replacements['state'])) {
        $replacements['awpcp_state_display'] = sprintf('%s<br/>', $replacements['state']);
    } else {
        $replacements['awpcp_state_display'] = '';
    }
    if (!empty($replacements['country'])) {
        $replacements['awpcp_country_display'] = sprintf('%s<br/>', $replacements['country']);
    } else {
        $replacements['awpcp_country_display'] = '';
    }
    return $replacements[$placeholder];
}