本文整理汇总了PHP中WPSC_Country::get_regions方法的典型用法代码示例。如果您正苦于以下问题:PHP WPSC_Country::get_regions方法的具体用法?PHP WPSC_Country::get_regions怎么用?PHP WPSC_Country::get_regions使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WPSC_Country
的用法示例。
在下文中一共展示了WPSC_Country::get_regions方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: wpsc_checkout_shipping_state_and_region
/**
* get the output used to show a shipping state and region select drop down
*
* @since 3.8.14
*
* @param wpsc_checkout|null $wpsc_checkout checkout object
* @return string
*/
function wpsc_checkout_shipping_state_and_region($wpsc_checkout = null)
{
// just in case the checkout form was not presented, like when we are doing the shipping calculator
if (empty($wpsc_checkout)) {
$wpsc_checkout = new wpsc_checkout();
$doing_checkout_form = false;
} else {
$doing_checkout_form = true;
}
// if we aren't showing the shipping state on the cor we have no work to do
if (!$wpsc_checkout->get_checkout_item('shippingstate')) {
return '';
}
// save the current checkout item in case we adjust it in the routine, we'll put it back before return
$saved_checkout_item = $wpsc_checkout->checkout_item;
// check a new checkout form with all fields
$checkout_form = new WPSC_Checkout_Form(null, false);
// is the shipping country visible on the form, let's find out
$shipping_country_form_element = $checkout_form->get_field_by_unique_name('shippingcountry');
$showing_shipping_country = (bool) $shipping_country_form_element->active;
// make sure the shipping state is the current checkout element
$wpsc_checkout->checkout_item = $wpsc_checkout->get_checkout_item('shippingstate');
// setup the edit field, aka 'shippingstate'
$shipping_country = wpsc_get_customer_meta('shippingcountry');
$shipping_region = wpsc_get_customer_meta('shippingregion');
$shipping_state = wpsc_get_customer_meta('shippingstate');
// if we are showing the billing country on the form then we use the value that can be
// changed by the user, otherwise we will use the base country as configured in store admin
if ($showing_shipping_country) {
$wpsc_country = new WPSC_Country($shipping_country);
} else {
$wpsc_country = new WPSC_Country(wpsc_get_base_country());
}
$region_list = $wpsc_country->get_regions();
$placeholder = $wpsc_country->get('region_label');
if (empty($placeholder)) {
$placeholder = $wpsc_checkout->checkout_item->name;
}
$placeholder = apply_filters('wpsc_checkout_field_placeholder', apply_filters('wpsc_checkout_field_name', $placeholder), $wpsc_checkout->checkout_item);
$form_element_id = $wpsc_checkout->form_element_id();
if ($doing_checkout_form) {
$id_attribute = ' id="' . $form_element_id . '" ';
} else {
$id_attribute = '';
}
// if there are regions for the current country we are going to
// create the billing state edit, but hide it
$style = ' ';
if (!empty($region_list)) {
$style = 'style="display: none;"';
}
$output = '<input class="shipping_region text wpsc-visitor-meta" ' . ' data-wpsc-meta-key="' . $wpsc_checkout->checkout_item->unique_name . '" ' . ' title="' . $wpsc_checkout->checkout_item->unique_name . '" ' . ' type="text" ' . $id_attribute . ' placeholder="' . esc_attr($placeholder) . '" ' . ' value="' . esc_attr($shipping_state) . '" ' . ' name="collected_data[' . $wpsc_checkout->checkout_item->id . ']" ' . $style . ' />' . "\n\r";
// setup the drop down field, aka 'shippingregion'
// move the checkout item pointer to the billing country, so we can generate form element ids, highly lame
$wpsc_checkout->checkout_item = $checkout_form->get_field_by_unique_name('shippingcountry');
// if there aren't any regions for the current country we are going to
// create the empty region select, but hide it
$style = ' ';
if (empty($region_list)) {
$style = 'style="display: none;"';
}
$title = 'shippingregion';
$region_form_id = $wpsc_checkout->form_element_id() . '_region';
$output .= '<select id="' . $region_form_id . '" ' . ' class="current_region wpsc-visitor-meta wpsc-region-dropdown" ' . ' data-wpsc-meta-key="shippingregion" ' . ' title="' . $title . '" ' . 'name="collected_data[' . $wpsc_checkout->checkout_item->id . '][1]" ' . $style . ">\n\r";
$wpsc_current_region = $wpsc_country->get_region($shipping_region);
if (!empty($region_list)) {
if (count($region_list) > 1) {
$label = $wpsc_country->get('region_label');
$please_select_message = sprintf(__('Please select a %s', 'wp-e-commerce'), $label);
$output .= "<option value='0'>" . $please_select_message . "</option>\n\r";
}
foreach ($region_list as $wpsc_region) {
if ((bool) $wpsc_current_region && $wpsc_current_region->get_id() == $wpsc_region->get_id()) {
$selected = "selected='selected'";
} else {
$selected = '';
}
$output .= "<option value='" . $wpsc_region->get_id() . "' {$selected}>" . esc_html($wpsc_region->get_name()) . "</option>\n\r";
}
}
$output .= "</select>\n\r";
// restore the checkout item in case we messed with it
$wpsc_checkout->checkout_item = $saved_checkout_item;
return $output;
}
示例2: count
function test_get_regions_array()
{
$country = new WPSC_Country(self::COUNTRY_ID_WITH_REGIONS);
$regions = $country->get_regions(true);
$this->assertInternalType('array', $regions);
$this->assertEquals(self::NUM_REGIONS, count($regions));
$country = new WPSC_Country(self::COUNTRY_ID_WITHOUT_REGIONS);
$regions = $country->get_regions(true);
$this->assertInternalType('array', $regions);
$this->assertEquals(0, count($regions));
}
示例3: wpsc_shipping_region_list
function wpsc_shipping_region_list($selected_country, $selected_region, $deprecated = false, $id = 'region')
{
$output = '';
if (false !== $deprecated) {
_wpsc_deprecated_argument(__FUNCTION, '3.8.14');
}
$country = new WPSC_Country($selected_country);
$regions = $country->get_regions();
$output .= "<select class=\"wpsc-visitor-meta\" data-wpsc-meta-key=\"shippingregion\" name=\"region\" id=\"{$id}\" >\n\r";
if (count($regions) > 0) {
foreach ($regions as $region_id => $region) {
$selected = '';
if ($selected_region == $region_id) {
$selected = "selected='selected'";
}
$output .= "<option {$selected} value='{$region_id}'>" . esc_attr(htmlspecialchars($region->get_name())) . "</option>\n\r";
}
$output .= '';
}
$output .= '</select>';
return $output;
}