wp_ajax_get_tagcloud

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

WordPress Version: 6.3

/**
 * Handles getting a tagcloud via AJAX.
 *
 * @since 3.1.0
 */
function wp_ajax_get_tagcloud()
{
    if (!isset($_POST['tax'])) {
        wp_die(0);
    }
    $taxonomy = sanitize_key($_POST['tax']);
    $taxonomy_object = get_taxonomy($taxonomy);
    if (!$taxonomy_object) {
        wp_die(0);
    }
    if (!current_user_can($taxonomy_object->cap->assign_terms)) {
        wp_die(-1);
    }
    $tags = get_terms(array('taxonomy' => $taxonomy, 'number' => 45, 'orderby' => 'count', 'order' => 'DESC'));
    if (empty($tags)) {
        wp_die($taxonomy_object->labels->not_found);
    }
    if (is_wp_error($tags)) {
        wp_die($tags->get_error_message());
    }
    foreach ($tags as $key => $tag) {
        $tags[$key]->link = '#';
        $tags[$key]->id = $tag->term_id;
    }
    // We need raw tag names here, so don't filter the output.
    $return = wp_generate_tag_cloud($tags, array('filter' => 0, 'format' => 'list'));
    if (empty($return)) {
        wp_die(0);
    }
    echo $return;
    wp_die();
}

WordPress Version: 6.1

/**
 * Ajax handler for getting a tagcloud.
 *
 * @since 3.1.0
 */
function wp_ajax_get_tagcloud()
{
    if (!isset($_POST['tax'])) {
        wp_die(0);
    }
    $taxonomy = sanitize_key($_POST['tax']);
    $taxonomy_object = get_taxonomy($taxonomy);
    if (!$taxonomy_object) {
        wp_die(0);
    }
    if (!current_user_can($taxonomy_object->cap->assign_terms)) {
        wp_die(-1);
    }
    $tags = get_terms(array('taxonomy' => $taxonomy, 'number' => 45, 'orderby' => 'count', 'order' => 'DESC'));
    if (empty($tags)) {
        wp_die($taxonomy_object->labels->not_found);
    }
    if (is_wp_error($tags)) {
        wp_die($tags->get_error_message());
    }
    foreach ($tags as $key => $tag) {
        $tags[$key]->link = '#';
        $tags[$key]->id = $tag->term_id;
    }
    // We need raw tag names here, so don't filter the output.
    $return = wp_generate_tag_cloud($tags, array('filter' => 0, 'format' => 'list'));
    if (empty($return)) {
        wp_die(0);
    }
    echo $return;
    wp_die();
}

WordPress Version: 5.4

/**
 * Ajax handler for getting a tagcloud.
 *
 * @since 3.1.0
 */
function wp_ajax_get_tagcloud()
{
    if (!isset($_POST['tax'])) {
        wp_die(0);
    }
    $taxonomy = sanitize_key($_POST['tax']);
    $tax = get_taxonomy($taxonomy);
    if (!$tax) {
        wp_die(0);
    }
    if (!current_user_can($tax->cap->assign_terms)) {
        wp_die(-1);
    }
    $tags = get_terms(array('taxonomy' => $taxonomy, 'number' => 45, 'orderby' => 'count', 'order' => 'DESC'));
    if (empty($tags)) {
        wp_die($tax->labels->not_found);
    }
    if (is_wp_error($tags)) {
        wp_die($tags->get_error_message());
    }
    foreach ($tags as $key => $tag) {
        $tags[$key]->link = '#';
        $tags[$key]->id = $tag->term_id;
    }
    // We need raw tag names here, so don't filter the output.
    $return = wp_generate_tag_cloud($tags, array('filter' => 0, 'format' => 'list'));
    if (empty($return)) {
        wp_die(0);
    }
    echo $return;
    wp_die();
}

WordPress Version: 5.3

/**
 * Ajax handler for getting a tagcloud.
 *
 * @since 3.1.0
 */
function wp_ajax_get_tagcloud()
{
    if (!isset($_POST['tax'])) {
        wp_die(0);
    }
    $taxonomy = sanitize_key($_POST['tax']);
    $tax = get_taxonomy($taxonomy);
    if (!$tax) {
        wp_die(0);
    }
    if (!current_user_can($tax->cap->assign_terms)) {
        wp_die(-1);
    }
    $tags = get_terms(array('taxonomy' => $taxonomy, 'number' => 45, 'orderby' => 'count', 'order' => 'DESC'));
    if (empty($tags)) {
        wp_die($tax->labels->not_found);
    }
    if (is_wp_error($tags)) {
        wp_die($tags->get_error_message());
    }
    foreach ($tags as $key => $tag) {
        $tags[$key]->link = '#';
        $tags[$key]->id = $tag->term_id;
    }
    // We need raw tag names here, so don't filter the output
    $return = wp_generate_tag_cloud($tags, array('filter' => 0, 'format' => 'list'));
    if (empty($return)) {
        wp_die(0);
    }
    echo $return;
    wp_die();
}

WordPress Version: 4.9

/**
 * Ajax handler for getting a tagcloud.
 *
 * @since 3.1.0
 */
function wp_ajax_get_tagcloud()
{
    if (!isset($_POST['tax'])) {
        wp_die(0);
    }
    $taxonomy = sanitize_key($_POST['tax']);
    $tax = get_taxonomy($taxonomy);
    if (!$tax) {
        wp_die(0);
    }
    if (!current_user_can($tax->cap->assign_terms)) {
        wp_die(-1);
    }
    $tags = get_terms($taxonomy, array('number' => 45, 'orderby' => 'count', 'order' => 'DESC'));
    if (empty($tags)) {
        wp_die($tax->labels->not_found);
    }
    if (is_wp_error($tags)) {
        wp_die($tags->get_error_message());
    }
    foreach ($tags as $key => $tag) {
        $tags[$key]->link = '#';
        $tags[$key]->id = $tag->term_id;
    }
    // We need raw tag names here, so don't filter the output
    $return = wp_generate_tag_cloud($tags, array('filter' => 0, 'format' => 'list'));
    if (empty($return)) {
        wp_die(0);
    }
    echo $return;
    wp_die();
}

WordPress Version: 4.1

/**
 * Ajax handler for getting a tagcloud.
 *
 * @since 3.1.0
 */
function wp_ajax_get_tagcloud()
{
    if (!isset($_POST['tax'])) {
        wp_die(0);
    }
    $taxonomy = sanitize_key($_POST['tax']);
    $tax = get_taxonomy($taxonomy);
    if (!$tax) {
        wp_die(0);
    }
    if (!current_user_can($tax->cap->assign_terms)) {
        wp_die(-1);
    }
    $tags = get_terms($taxonomy, array('number' => 45, 'orderby' => 'count', 'order' => 'DESC'));
    if (empty($tags)) {
        wp_die($tax->labels->not_found);
    }
    if (is_wp_error($tags)) {
        wp_die($tags->get_error_message());
    }
    foreach ($tags as $key => $tag) {
        $tags[$key]->link = '#';
        $tags[$key]->id = $tag->term_id;
    }
    // We need raw tag names here, so don't filter the output
    $return = wp_generate_tag_cloud($tags, array('filter' => 0));
    if (empty($return)) {
        wp_die(0);
    }
    echo $return;
    wp_die();
}

WordPress Version: 4.0

/**
 * Ajax handler for getting a tagcloud.
 *
 * @since 3.1.0
 */
function wp_ajax_get_tagcloud()
{
    if (isset($_POST['tax'])) {
        $taxonomy = sanitize_key($_POST['tax']);
        $tax = get_taxonomy($taxonomy);
        if (!$tax) {
            wp_die(0);
        }
        if (!current_user_can($tax->cap->assign_terms)) {
            wp_die(-1);
        }
    } else {
        wp_die(0);
    }
    $tags = get_terms($taxonomy, array('number' => 45, 'orderby' => 'count', 'order' => 'DESC'));
    if (empty($tags)) {
        wp_die($tax->labels->not_found);
    }
    if (is_wp_error($tags)) {
        wp_die($tags->get_error_message());
    }
    foreach ($tags as $key => $tag) {
        $tags[$key]->link = '#';
        $tags[$key]->id = $tag->term_id;
    }
    // We need raw tag names here, so don't filter the output
    $return = wp_generate_tag_cloud($tags, array('filter' => 0));
    if (empty($return)) {
        wp_die(0);
    }
    echo $return;
    wp_die();
}

WordPress Version: 3.7

function wp_ajax_get_tagcloud()
{
    if (isset($_POST['tax'])) {
        $taxonomy = sanitize_key($_POST['tax']);
        $tax = get_taxonomy($taxonomy);
        if (!$tax) {
            wp_die(0);
        }
        if (!current_user_can($tax->cap->assign_terms)) {
            wp_die(-1);
        }
    } else {
        wp_die(0);
    }
    $tags = get_terms($taxonomy, array('number' => 45, 'orderby' => 'count', 'order' => 'DESC'));
    if (empty($tags)) {
        wp_die($tax->labels->not_found);
    }
    if (is_wp_error($tags)) {
        wp_die($tags->get_error_message());
    }
    foreach ($tags as $key => $tag) {
        $tags[$key]->link = '#';
        $tags[$key]->id = $tag->term_id;
    }
    // We need raw tag names here, so don't filter the output
    $return = wp_generate_tag_cloud($tags, array('filter' => 0));
    if (empty($return)) {
        wp_die(0);
    }
    echo $return;
    wp_die();
}