WordPress

kategorie – Dodawanie tinymce do pól Custom Field na stronie edycji kategorii

  • 7 marca, 2011
  • 3 min read
kategorie – Dodawanie tinymce do pól Custom Field na stronie edycji kategorii


Udało mi się dodać wymagane pola niestandardowe do mojej strony edycji kategorii (kod znajduje się poniżej). Wszystko, co chciałbym zrobić, to mieć obszary tekstowe #Category_Extras_Features i #Category_Extras_Applications, aby mieć na nich edytor tinymce?

    // 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;
}

Czy jest to możliwe, a jeśli tak, to ktoś wie jak to zrobić?

Warto przeczytać!  Wybór idealnego responsywnego motywu: 8-punktowa lista kontrolna

Dzięki,

Dave’a


Źródło