stam_state_city
State and city with population
class Service_Area_Market_Meta { public function __construct() { if ( is_admin() ) { add_action( 'service_area_add_form_fields', array( $this, 'create_screen_fields'), 10, 1 ); add_action( 'service_area_edit_form_fields', array( $this, 'edit_screen_fields' ), 10, 2 ); add_action( 'created_service_area', array( $this, 'save_data' ), 10, 1 ); add_action( 'edited_service_area', array( $this, 'save_data' ), 10, 1 ); } } public function create_screen_fields( $taxonomy ) { // Set default values. $samm_office = ''; $samm_state = 'Texas'; $samm_county = ''; $samm_market = ''; $samm_distance = ''; $samm_population = ''; // Form fields. echo '<div class="form-field term-samm_office-wrap">'; echo ' <label for="samm_office">' . __( 'Office', 'text_domain' ) . '</label>'; echo ' <select id="samm_office" name="samm_office">'; echo ' <option value="" ' . selected( $samm_office, '', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Gatesville" ' . selected( $samm_office, 'Gatesville', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Killeen" ' . selected( $samm_office, 'Killeen', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Hewitt" ' . selected( $samm_office, 'Hewitt', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Round Rock" ' . selected( $samm_office, 'Round Rock', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Temple" ' . selected( $samm_office, 'Temple', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' </select>'; echo ' <p class="description">' . __( 'Market home office', 'text_domain' ) . '</p>'; echo '</div>'; echo '<div class="form-field term-samm_state-wrap">'; echo ' <label for="samm_state">' . __( 'State', 'text_domain' ) . '</label>'; echo ' <input type="text" id="samm_state" name="samm_state" placeholder="' . esc_attr__( 'Texas', 'text_domain' ) . '" value="' . esc_attr( $samm_state ) . '">'; echo ' <p class="description">' . __( 'State', 'text_domain' ) . '</p>'; echo '</div>'; echo '<div class="form-field term-samm_county-wrap">'; echo ' <label for="samm_county">' . __( 'County', 'text_domain' ) . '</label>'; echo ' <select id="samm_county" name="samm_county">'; echo ' <option value="" ' . selected( $samm_county, '', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Bell" ' . selected( $samm_county, 'Bell', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Coryell" ' . selected( $samm_county, 'Coryell', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="McLennan" ' . selected( $samm_county, 'McLennan', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Williamson" ' . selected( $samm_county, 'Williamson', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' </select>'; echo ' <p class="description">' . __( 'Target market county', 'text_domain' ) . '</p>'; echo '</div>'; echo '<div class="form-field term-samm_market-wrap">'; echo ' <label for="samm_market">' . __( 'Market', 'text_domain' ) . '</label>'; echo ' <select id="samm_market" name="samm_market">'; echo ' <option value="" ' . selected( $samm_market, '', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Austin" ' . selected( $samm_market, 'Austin', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Bartlett" ' . selected( $samm_market, 'Bartlett', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Bellmead" ' . selected( $samm_market, 'Bellmead', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Belton" ' . selected( $samm_market, 'Belton', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Bruceville-Eddy" ' . selected( $samm_market, 'Bruceville-Eddy', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Cedar Park" ' . selected( $samm_market, 'Cedar Park', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Copperas Cove" ' . selected( $samm_market, 'Copperas Cove', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Florence" ' . selected( $samm_market, 'Florence', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Georgetown" ' . selected( $samm_market, 'Georgetown', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Golinda" ' . selected( $samm_market, 'Golinda', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Harker Heights" ' . selected( $samm_market, 'Harker Heights', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Holland" ' . selected( $samm_market, 'Holland', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Hutto" ' . selected( $samm_market, 'Hutto', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Jarrell" ' . selected( $samm_market, 'Jarrell', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Killeen" ' . selected( $samm_market, 'Killeen', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Lacy-Lakeview" ' . selected( $samm_market, 'Lacy-Lakeview', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Leander" ' . selected( $samm_market, 'Leander', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Liberty Hill" ' . selected( $samm_market, 'Liberty Hill', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Little River-Academy" ' . selected( $samm_market, 'Little River-Academy', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Lorena" ' . selected( $samm_market, 'Lorena', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Mart" ' . selected( $samm_market, 'Mart', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="McGregor" ' . selected( $samm_market, 'McGregor', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Moody" ' . selected( $samm_market, 'Moody', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Nolanville" ' . selected( $samm_market, 'Nolanville', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Pflugerville" ' . selected( $samm_market, 'Pflugerville', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Robinson" ' . selected( $samm_market, 'Robinson', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Salado" ' . selected( $samm_market, 'Salado', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Taylor" ' . selected( $samm_market, 'Taylor', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Temple" ' . selected( $samm_market, 'Temple', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Troy" ' . selected( $samm_market, 'Troy', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Waco" ' . selected( $samm_market, 'Waco', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Woodway" ' . selected( $samm_market, 'Woodway', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' </select>'; echo ' <p class="description">' . __( 'Market city name', 'text_domain' ) . '</p>'; echo '</div>'; echo '<div class="form-field term-samm_distance-wrap">'; echo ' <label for="samm_distance">' . __( 'Distance', 'text_domain' ) . '</label>'; echo ' <input type="number" id="samm_distance" name="samm_distance" placeholder="' . esc_attr__( '', 'text_domain' ) . '" value="' . esc_attr( $samm_distance ) . '">'; echo ' <p class="description">' . __( 'Approximate distance from home office', 'text_domain' ) . '</p>'; echo '</div>'; echo '<div class="form-field term-samm_population-wrap">'; echo ' <label for="samm_population">' . __( 'Population', 'text_domain' ) . '</label>'; echo ' <input type="number" id="samm_population" name="samm_population" placeholder="' . esc_attr__( '', 'text_domain' ) . '" value="' . esc_attr( $samm_population ) . '">'; echo ' <p class="description">' . __( 'Estimated population of target market', 'text_domain' ) . '</p>'; echo '</div>'; } public function edit_screen_fields( $term, $taxonomy ) { // Retrieve an existing value from the database. $samm_office = get_term_meta( $term->term_id, 'samm_office', true ); $samm_state = get_term_meta( $term->term_id, 'samm_state', true ); $samm_county = get_term_meta( $term->term_id, 'samm_county', true ); $samm_market = get_term_meta( $term->term_id, 'samm_market', true ); $samm_distance = get_term_meta( $term->term_id, 'samm_distance', true ); $samm_population = get_term_meta( $term->term_id, 'samm_population', true ); // Set default values. if( empty( $samm_office ) ) $samm_office = ''; if( empty( $samm_state ) ) $samm_state = 'Texas'; if( empty( $samm_county ) ) $samm_county = ''; if( empty( $samm_market ) ) $samm_market = ''; if( empty( $samm_distance ) ) $samm_distance = ''; if( empty( $samm_population ) ) $samm_population = ''; // Form fields. echo '<tr class="form-field term-samm_office-wrap">'; echo '<th scope="row">'; echo ' <label for="samm_office">' . __( 'Office', 'text_domain' ) . '</label>'; echo '</th>'; echo '<td>'; echo ' <select id="samm_office" name="samm_office">'; echo ' <option value="" ' . selected( $samm_office, '', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Gatesville" ' . selected( $samm_office, 'Gatesville', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Killeen" ' . selected( $samm_office, 'Killeen', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Hewitt" ' . selected( $samm_office, 'Hewitt', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Round Rock" ' . selected( $samm_office, 'Round Rock', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Temple" ' . selected( $samm_office, 'Temple', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' </select>'; echo ' <p class="description">' . __( 'Market home office', 'text_domain' ) . '</p>'; echo '</td>'; echo '</tr>'; echo '<tr class="form-field term-samm_state-wrap">'; echo '<th scope="row">'; echo ' <label for="samm_state">' . __( 'State', 'text_domain' ) . '</label>'; echo '</th>'; echo '<td>'; echo ' <input type="text" id="samm_state" name="samm_state" placeholder="' . esc_attr__( 'Texas', 'text_domain' ) . '" value="' . esc_attr( $samm_state ) . '">'; echo ' <p class="description">' . __( 'State', 'text_domain' ) . '</p>'; echo '</td>'; echo '</tr>'; echo '<tr class="form-field term-samm_county-wrap">'; echo '<th scope="row">'; echo ' <label for="samm_county">' . __( 'County', 'text_domain' ) . '</label>'; echo '</th>'; echo '<td>'; echo ' <select id="samm_county" name="samm_county">'; echo ' <option value="" ' . selected( $samm_county, '', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Bell" ' . selected( $samm_county, 'Bell', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Coryell" ' . selected( $samm_county, 'Coryell', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="McLennan" ' . selected( $samm_county, 'McLennan', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Williamson" ' . selected( $samm_county, 'Williamson', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' </select>'; echo ' <p class="description">' . __( 'Target market county', 'text_domain' ) . '</p>'; echo '</td>'; echo '</tr>'; echo '<tr class="form-field term-samm_market-wrap">'; echo '<th scope="row">'; echo ' <label for="samm_market">' . __( 'Market', 'text_domain' ) . '</label>'; echo '</th>'; echo '<td>'; echo ' <select id="samm_market" name="samm_market">'; echo ' <option value="" ' . selected( $samm_market, '', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Austin" ' . selected( $samm_market, 'Austin', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Bartlett" ' . selected( $samm_market, 'Bartlett', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Bellmead" ' . selected( $samm_market, 'Bellmead', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Belton" ' . selected( $samm_market, 'Belton', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Bruceville-Eddy" ' . selected( $samm_market, 'Bruceville-Eddy', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Cedar Park" ' . selected( $samm_market, 'Cedar Park', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Copperas Cove" ' . selected( $samm_market, 'Copperas Cove', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Florence" ' . selected( $samm_market, 'Florence', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Georgetown" ' . selected( $samm_market, 'Georgetown', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Golinda" ' . selected( $samm_market, 'Golinda', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Harker Heights" ' . selected( $samm_market, 'Harker Heights', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Holland" ' . selected( $samm_market, 'Holland', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Hutto" ' . selected( $samm_market, 'Hutto', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Jarrell" ' . selected( $samm_market, 'Jarrell', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Killeen" ' . selected( $samm_market, 'Killeen', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Lacy-Lakeview" ' . selected( $samm_market, 'Lacy-Lakeview', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Leander" ' . selected( $samm_market, 'Leander', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Liberty Hill" ' . selected( $samm_market, 'Liberty Hill', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Little River-Academy" ' . selected( $samm_market, 'Little River-Academy', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Lorena" ' . selected( $samm_market, 'Lorena', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Mart" ' . selected( $samm_market, 'Mart', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="McGregor" ' . selected( $samm_market, 'McGregor', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Moody" ' . selected( $samm_market, 'Moody', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Nolanville" ' . selected( $samm_market, 'Nolanville', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Pflugerville" ' . selected( $samm_market, 'Pflugerville', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Robinson" ' . selected( $samm_market, 'Robinson', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Salado" ' . selected( $samm_market, 'Salado', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Taylor" ' . selected( $samm_market, 'Taylor', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Temple" ' . selected( $samm_market, 'Temple', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Troy" ' . selected( $samm_market, 'Troy', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Waco" ' . selected( $samm_market, 'Waco', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' <option value="Woodway" ' . selected( $samm_market, 'Woodway', false ) . '> ' . __( '', 'text_domain' ) . '</option>'; echo ' </select>'; echo ' <p class="description">' . __( 'Market city name', 'text_domain' ) . '</p>'; echo '</td>'; echo '</tr>'; echo '<tr class="form-field term-samm_distance-wrap">'; echo '<th scope="row">'; echo ' <label for="samm_distance">' . __( 'Distance', 'text_domain' ) . '</label>'; echo '</th>'; echo '<td>'; echo ' <input type="number" id="samm_distance" name="samm_distance" placeholder="' . esc_attr__( '', 'text_domain' ) . '" value="' . esc_attr( $samm_distance ) . '">'; echo ' <p class="description">' . __( 'Approximate distance from home office', 'text_domain' ) . '</p>'; echo '</td>'; echo '</tr>'; echo '<tr class="form-field term-samm_population-wrap">'; echo '<th scope="row">'; echo ' <label for="samm_population">' . __( 'Population', 'text_domain' ) . '</label>'; echo '</th>'; echo '<td>'; echo ' <input type="number" id="samm_population" name="samm_population" placeholder="' . esc_attr__( '', 'text_domain' ) . '" value="' . esc_attr( $samm_population ) . '">'; echo ' <p class="description">' . __( 'Estimated population of target market', 'text_domain' ) . '</p>'; echo '</td>'; echo '</tr>'; } public function save_data( $term_id ) { // Sanitize user input. $samm_new_office = isset( $_POST[ 'samm_office' ] ) ? $_POST[ 'samm_office' ] : ''; $samm_new_state = isset( $_POST[ 'samm_state' ] ) ? sanitize_text_field( $_POST[ 'samm_state' ] ) : ''; $samm_new_county = isset( $_POST[ 'samm_county' ] ) ? $_POST[ 'samm_county' ] : ''; $samm_new_market = isset( $_POST[ 'samm_market' ] ) ? $_POST[ 'samm_market' ] : ''; $samm_new_distance = isset( $_POST[ 'samm_distance' ] ) ? floatval( $_POST[ 'samm_distance' ] ) : ''; $samm_new_population = isset( $_POST[ 'samm_population' ] ) ? floatval( $_POST[ 'samm_population' ] ) : ''; // Update the meta field in the database. update_term_meta( $term_id, 'samm_office', $samm_new_office ); update_term_meta( $term_id, 'samm_state', $samm_new_state ); update_term_meta( $term_id, 'samm_county', $samm_new_county ); update_term_meta( $term_id, 'samm_market', $samm_new_market ); update_term_meta( $term_id, 'samm_distance', $samm_new_distance ); update_term_meta( $term_id, 'samm_population', $samm_new_population ); } } new Service_Area_Market_Meta;