wp_ajax_delete_tag

The timeline below displays how wordpress function wp_ajax_delete_tag has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: 6.3

/**
 * Handles deleting a tag via AJAX.
 *
 * @since 3.1.0
 */
function wp_ajax_delete_tag()
{
    $tag_id = (int) $_POST['tag_ID'];
    check_ajax_referer("delete-tag_{$tag_id}");
    if (!current_user_can('delete_term', $tag_id)) {
        wp_die(-1);
    }
    $taxonomy = (!empty($_POST['taxonomy'])) ? $_POST['taxonomy'] : 'post_tag';
    $tag = get_term($tag_id, $taxonomy);
    if (!$tag || is_wp_error($tag)) {
        wp_die(1);
    }
    if (wp_delete_term($tag_id, $taxonomy)) {
        wp_die(1);
    } else {
        wp_die(0);
    }
}

WordPress Version: 4.7

/**
 * Ajax handler for deleting a tag.
 *
 * @since 3.1.0
 */
function wp_ajax_delete_tag()
{
    $tag_id = (int) $_POST['tag_ID'];
    check_ajax_referer("delete-tag_{$tag_id}");
    if (!current_user_can('delete_term', $tag_id)) {
        wp_die(-1);
    }
    $taxonomy = (!empty($_POST['taxonomy'])) ? $_POST['taxonomy'] : 'post_tag';
    $tag = get_term($tag_id, $taxonomy);
    if (!$tag || is_wp_error($tag)) {
        wp_die(1);
    }
    if (wp_delete_term($tag_id, $taxonomy)) {
        wp_die(1);
    } else {
        wp_die(0);
    }
}

WordPress Version: 4.0

/**
 * Ajax handler for deleting a tag.
 *
 * @since 3.1.0
 */
function wp_ajax_delete_tag()
{
    $tag_id = (int) $_POST['tag_ID'];
    check_ajax_referer("delete-tag_{$tag_id}");
    $taxonomy = (!empty($_POST['taxonomy'])) ? $_POST['taxonomy'] : 'post_tag';
    $tax = get_taxonomy($taxonomy);
    if (!current_user_can($tax->cap->delete_terms)) {
        wp_die(-1);
    }
    $tag = get_term($tag_id, $taxonomy);
    if (!$tag || is_wp_error($tag)) {
        wp_die(1);
    }
    if (wp_delete_term($tag_id, $taxonomy)) {
        wp_die(1);
    } else {
        wp_die(0);
    }
}

WordPress Version: 3.7

function wp_ajax_delete_tag()
{
    $tag_id = (int) $_POST['tag_ID'];
    check_ajax_referer("delete-tag_{$tag_id}");
    $taxonomy = (!empty($_POST['taxonomy'])) ? $_POST['taxonomy'] : 'post_tag';
    $tax = get_taxonomy($taxonomy);
    if (!current_user_can($tax->cap->delete_terms)) {
        wp_die(-1);
    }
    $tag = get_term($tag_id, $taxonomy);
    if (!$tag || is_wp_error($tag)) {
        wp_die(1);
    }
    if (wp_delete_term($tag_id, $taxonomy)) {
        wp_die(1);
    } else {
        wp_die(0);
    }
}