Created
December 27, 2011 14:02
-
-
Save noeltock/1523749 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // Edit term page | |
| function brewery_edit_meta_field($term) { | |
| // Address | |
| $address = get_metadata($term->taxonomy, $term->term_id, 'brewery_address', true); | |
| $lat = get_metadata($term->taxonomy, $term->term_id, 'brewery_lat', true); | |
| $long = get_metadata($term->taxonomy, $term->term_id, 'brewery_long', true); | |
| // Grab Lat & Long if not Available | |
| if (!$lat && $address) { | |
| $cleanaddress = urlencode($address); | |
| if( !$geocode = get_transient( '_location_' . $cleanaddress ) ) { | |
| $geocode = @file_get_contents('http://maps.google.com/maps/api/geocode/json?address=' . $cleanaddress . '&sensor=false'); | |
| } | |
| if( !$geocode ) | |
| continue; | |
| $output= json_decode($geocode); | |
| $lat = $output->results[0]->geometry->location->lat; | |
| $long = $output->results[0]->geometry->location->lng; | |
| } | |
| // Other Details | |
| $website = get_metadata($term->taxonomy, $term->term_id, 'brewery_website', true); | |
| $phone = get_metadata($term->taxonomy, $term->term_id, 'brewery_phone', true); | |
| $email = get_metadata($term->taxonomy, $term->term_id, 'brewery_email', true); | |
| $logo = get_metadata($term->taxonomy, $term->term_id, 'brewery_logo', true); | |
| ?> | |
| <tr class="form-field"> | |
| <th scope="row" valign="top"><label for="brewery_address">Address (GMaps Friendly)</label></th> | |
| <td><input type="text" name="brewery_address" id="brewery_address" value="<?php echo $address; ?>"/></td> | |
| </tr> | |
| <tr class="form-field"> | |
| <th scope="row" valign="top"><label for="brewery_latlong">Lat / Long</label></th> | |
| <td><input style="width:30%;" type="text" name="brewery_lat" id="brewery_lat" value="<?php echo $lat; ?>"/> / <input style="width:30%;" type="text" name="brewery_long" id="brewery_long" value="<?php echo $long; ?>"/></td> | |
| </tr> | |
| <tr class="form-field"> | |
| <th scope="row" valign="top"><label for="brewery_website">Website URL</label></th> | |
| <td><input type="text" name="brewery_website" id="brewery_website" value="<?php echo $website; ?>"/></td> | |
| </tr> | |
| <tr class="form-field"> | |
| <th scope="row" valign="top"><label for="brewery_phone">Phone</label></th> | |
| <td><input type="text" name="brewery_phone" id="brewery_phone" value="<?php echo $phone; ?>"/></td> | |
| </tr> | |
| <tr class="form-field"> | |
| <th scope="row" valign="top"><label for="brewery_email">E-mail</label></th> | |
| <td><input type="text" name="brewery_email" id="brewery_email" value="<?php echo $email; ?>"/></td> | |
| </tr> | |
| <tr class="form-field"> | |
| <th scope="row" valign="top"><label for="brewery_logo">Logo URL</label></th> | |
| <td><input type="text" name="brewery_logo" id="brewery_logo" value="<?php echo $logo; ?>"/></td> | |
| </tr> | |
| <?php | |
| } | |
| add_action( 'brewery_edit_form_fields', 'brewery_edit_meta_field', 10, 2 ); | |
| // Save Term Meta | |
| function save_brewery_custom_meta($term_id) | |
| { | |
| if (isset($_POST['brewery_address'])) | |
| update_metadata($_POST['taxonomy'], $term_id, 'brewery_address', $_POST['brewery_address']); | |
| if (isset($_POST['brewery_lat'])) | |
| update_metadata($_POST['taxonomy'], $term_id, 'brewery_lat', $_POST['brewery_lat']); | |
| if (isset($_POST['brewery_long'])) | |
| update_metadata($_POST['taxonomy'], $term_id, 'brewery_long', $_POST['brewery_long']); | |
| if (isset($_POST['brewery_website'])) | |
| update_metadata($_POST['taxonomy'], $term_id, 'brewery_website', $_POST['brewery_website']); | |
| if (isset($_POST['brewery_phone'])) | |
| update_metadata($_POST['taxonomy'], $term_id, 'brewery_phone', $_POST['brewery_phone']); | |
| if (isset($_POST['brewery_email'])) | |
| update_metadata($_POST['taxonomy'], $term_id, 'brewery_email', $_POST['brewery_email']); | |
| if (isset($_POST['brewery_logo'])) | |
| update_metadata($_POST['taxonomy'], $term_id, 'brewery_logo', $_POST['brewery_logo']); | |
| } | |
| add_action( 'edited_brewery', 'save_brewery_custom_meta', 10, 2); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment