Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Add term page
- function pippin_taxonomy_add_new_meta_field() {
- // this will add the custom meta field to the add new term page
- ?>
- <div class="form-field">
- <label for="term_meta[hex]"><?php _e( 'Hex Color', 'pippen' ); ?></label>
- <input type="text" name="term_meta[hex]" id="term_meta[hex]" value="">
- <p class="description"><?php _e( 'Enter a value for this field','pippen' ); ?></p>
- </div>
- <div class="form-field">
- <label for="term_meta[former_employee]"><?php _e( 'Former Employee?', 'pippen' ); ?></label>
- <input type="checkbox" name="term_meta[former_employee]" value="<?php echo esc_attr( $term_meta['former_employee'] ) ? esc_attr( $term_meta['former_employee'] ) : ''; ?>" <?php checked( $term_meta['former_employee'], 1 ); ?> />
- <p class="description"><?php _e( 'Enter a value for this field','pippen' ); ?></p>
- </div>
- <?php
- }
- // {$taxonomy_name}_add_form_fields, function, priority
- add_action( 'myplugin_employees_add_form_fields', 'pippin_taxonomy_add_new_meta_field', 10, 2 );
- // Edit term page
- function pippin_taxonomy_edit_meta_field($term) {
- // put the term ID into a variable
- $t_id = $term->term_id;
- // retrieve the existing value(s) for this meta field. This returns an array
- $term_meta = get_option( "taxonomy_$t_id" );
- ?>
- <tr class="form-field">
- <th scope="row" valign="top">
- <label for="term_meta[hex]"><?php _e( 'Hex Color', 'pippen' ); ?></label>
- </th>
- <td>
- <input type="text" name="term_meta[hex]" id="term_meta[hex]" value="<?php echo esc_attr( $term_meta['hex'] ) ? esc_attr( $term_meta['hex'] ) : ''; ?>">
- <p class="description"><?php _e( 'Enter a value for this field','pippen' ); ?></p>
- </td>
- </tr>
- <tr class="form-field">
- <th scope="row" valign="top">
- <label for="term_meta[former_employee]"><?php _e( 'Former Employee?', 'pippen' ); ?></label>
- </th>
- <td>
- <input type="checkbox" name="options[postlink]" value="<?php echo esc_attr( $term_meta['former_employee'] ) ? esc_attr( $term_meta['former_employee'] ) : ''; ?>" <?php checked( $term_meta['former_employee'], 1 ); ?> />
- <p class="description"><?php _e( 'Enter a value for this field','pippen' ); ?></p>
- </td>
- </tr>
- <?php
- }
- // {$taxonomy_name}_edit_form_fields, function, priority
- add_action( 'myplugin_employees_edit_form_fields', 'pippin_taxonomy_edit_meta_field', 10, 2 );
- // Save extra taxonomy fields callback function.
- function save_taxonomy_custom_meta( $term_id ) {
- if ( isset( $_POST['term_meta'] ) ) {
- $t_id = $term_id;
- $term_meta = get_option( "taxonomy_$t_id" );
- $cat_keys = array_keys( $_POST['term_meta'] );
- foreach ( $cat_keys as $key ) {
- if ( isset ( $_POST['term_meta'][$key] ) ) {
- $term_meta[$key] = $_POST['term_meta'][$key];
- }
- }
- // Save the option array.
- update_option( "taxonomy_$t_id", $term_meta );
- }
- }
- // edited_{$taxonomy_name}, function, priority
- // create_{$taxonomy_name}, function, priority
- add_action( 'edited_myplugin_employees', 'save_taxonomy_custom_meta', 10, 2 );
- add_action( 'create_myplugin_employees', 'save_taxonomy_custom_meta', 10, 2 );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement