edited_(taxonomy)
Спрацьовує після оновлення терміну (рубрики, елемента таксономії) та очищення його кешу.
Дозволяє, наприклад, створити/оновити метаполя терміна на сторінці редагування терміна.
Дивіться також ідентичний хук edited_term , в ньому назва таксономії передається в третьому параметрі, в іншому хук також працює.
Можливі імена хука:
Динамічна частина (taxonomy) в імені хука – це назва (склад) таксономії з якою ми хочемо працювати. Так базових таксономій WP цей хук виглядає так:
- edited_category – під час редагування рубрики.
- edited_post_tag – під час редагування мітки.
- post_format – під час редагування формату запису.
- nav_menu — редагування меню навігації.
Використання
add_action( 'edited_(taxonomy)', 'wp_kama_edited_taxonomy_action', 10, 2);
/**
* Function for `edited_(taxonomy)` action-hook.
*
* @param int $term_id Term ID.
* @param int $tt_id Term taxonomy ID.
*
* @return void
*/
function wp_kama_edited_taxonomy_action( $term_id, $tt_id ){
// action...
}- $term_id
(число) - ID термін.
- $tt_id
(число) - ID терміна з урахуванням таксономії (внутрішній параметр, останніх версіях ВП дорівнює ID терміна).
Приклади
#1 Збережемо довільне поле після редагування терміну (рубрики)
<?php
// Додамо довільне поле у форму редагування
add_action( 'category_edit_form_fields', 'add_custom_form_field' );
function add_custom_form_field( $term ) {
?>
<tr class="form-field">
<th scope="row" valign="top"><label><?php _e( 'Custom field' ); ?></label></th>
<td>
<input type="text" name="custom_field" value="<?php esc_attr_e( get_term_meta( $term->term_id, 'custom_field', true ) ) ?>">
</td>
</tr>
<?php
}
// Збережемо значення довільно поля
add_action( 'edited_category', 'save_custom_form_field' );
function save_custom_form_field( $term_id ) {
if ( ! isset( $_POST['custom_field'] ) ) {
return;
}
if ( ! current_user_can( 'edit_term', $term_id ) ) {
return;
}
if ( ! wp_verify_nonce( $_POST['_wpnonce'], "update-tag_{$term_id}" ) && ! wp_verify_nonce( $_POST['_wpnonce_add-tag'], 'add-tag' ) ) {
return;
}
update_term_meta( $term_id, 'custom_field', wp_unslash( $_POST['custom_field'] ) );
return $term_id;
}
список змін
| З версії 2.3.0 | Введено. |
Де викликається хук
edited_(taxonomy)