WC_Countries::country_dropdown_options( string $selected_country = '', string $selected_state = '', bool $escape = false )
Outputs the list of countries and states for use in dropdown boxes.
Description Description
Parameters Parameters
- $selected_country
-
(Optional) Selected country.
Default value: ''
- $selected_state
-
(Optional) Selected state.
Default value: ''
- $escape
-
(Optional) If we should escape HTML.
Default value: false
Source Source
File: includes/class-wc-countries.php
public function country_dropdown_options( $selected_country = '', $selected_state = '', $escape = false ) { if ( $this->countries ) { foreach ( $this->countries as $key => $value ) { $states = $this->get_states( $key ); if ( $states ) { echo '<optgroup label="' . esc_attr( $value ) . '">'; foreach ( $states as $state_key => $state_value ) { echo '<option value="' . esc_attr( $key ) . ':' . esc_attr( $state_key ) . '"'; if ( $selected_country === $key && $selected_state === $state_key ) { echo ' selected="selected"'; } echo '>' . esc_html( $value ) . ' — ' . ( $escape ? esc_html( $state_value ) : $state_value ) . '</option>'; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped } echo '</optgroup>'; } else { echo '<option'; if ( $selected_country === $key && '*' === $selected_state ) { echo ' selected="selected"'; } echo ' value="' . esc_attr( $key ) . '">' . ( $escape ? esc_html( $value ) : $value ) . '</option>'; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped } } } }