0

I've managed to add the required custom fields to my category edit page (the code is below). All I'd like to do it have the textareas #Category_Extras_Features and #Category_Extras_Applications to have a tinymce editor on them?

    // Add custom fields to category edit pages
// the option name
define('Category_Extras', 'Category_Extras_option');

// your fields (the form)
add_filter('edit_category_form', 'Category_Extras');
function Category_Extras($tag) {
    $tag_extra_fields = get_option(Category_Extras);

    ?>

<table class="form-table">
        <tr class="form-field">
            <th scope="row" valign="top"><label for="Category_Extras_Features">Category Features</label></th>
            <td><textarea style="width: 97%;" cols="50" rows="5" name="Category_Extras_Features" id="Category_Extras_Features"><?php  echo $tag_extra_fields[$tag->term_id]['Category_Extras_Features']; ?></textarea>

            <p class="description">This isn't applicable to all categories but allows additional information to be displayed on a category page.</p></td>
        </tr>
        <tr class="form-field">
            <th scope="row" valign="top"><label for="Category_Extras_Applications">Category Applications</label></th>
            <td><textarea style="width: 97%;" cols="50" rows="5" name="Category_Extras_Applications" id="Category_Extras_Applications"><?php  echo $tag_extra_fields[$tag->term_id]['Category_Extras_Applications']; ?></textarea>
            <p class="description">This isn't applicable to all categories but allows additional information to be displayed on a category page.</p></td>
        </tr>
</table>



    <?php
}


// when the form gets submitted, and the category gets updated (in your case the option will get updated with the values of your custom fields above
add_filter('edited_terms', 'update_Category_Extras');
function update_Category_Extras($term_id) {
  if($_POST['taxonomy'] == 'category'):
    $tag_extra_fields = get_option(Category_Extras);
    $tag_extra_fields[$term_id]['Category_Extras_Features'] = strip_tags($_POST['Category_Extras_Features']);
    $tag_extra_fields[$term_id]['Category_Extras_Applications'] = strip_tags($_POST['Category_Extras_Applications']);
    update_option(Category_Extras, $tag_extra_fields);
  endif;
}


// when a category is removed
add_filter('deleted_term_taxonomy', 'remove_Category_Extras');
function remove_Category_Extras($term_id) {
  if($_POST['taxonomy'] == 'category'):
    $tag_extra_fields = get_option(Category_Extras);
    unset($tag_extra_fields[$term_id]);
    update_option(Category_Extras, $tag_extra_fields);
  endif;
}

Is this possible, and if so anyone know how to do this?

Cheers,

Dave

1

Follow this tutorial TinyMCE in WordPress Plugins and you'll get there.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.