wp_update_link

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

WordPress Version: 5.6

/**
 * Updates a link in the database.
 *
 * @since 2.0.0
 *
 * @param array $linkdata Link data to update. See wp_insert_link() for accepted arguments.
 * @return int|WP_Error Value 0 or WP_Error on failure. The updated link ID on success.
 */
function wp_update_link($linkdata)
{
    $link_id = (int) $linkdata['link_id'];
    $link = get_bookmark($link_id, ARRAY_A);
    // Escape data pulled from DB.
    $link = wp_slash($link);
    // Passed link category list overwrites existing category list if not empty.
    if (isset($linkdata['link_category']) && is_array($linkdata['link_category']) && count($linkdata['link_category']) > 0) {
        $link_cats = $linkdata['link_category'];
    } else {
        $link_cats = $link['link_category'];
    }
    // Merge old and new fields with new fields overwriting old ones.
    $linkdata = array_merge($link, $linkdata);
    $linkdata['link_category'] = $link_cats;
    return wp_insert_link($linkdata);
}

WordPress Version: 5.5

/**
 * Updates a link in the database.
 *
 * @since 2.0.0
 *
 * @param array $linkdata Link data to update.
 * @return int|WP_Error Value 0 or WP_Error on failure. The updated link ID on success.
 */
function wp_update_link($linkdata)
{
    $link_id = (int) $linkdata['link_id'];
    $link = get_bookmark($link_id, ARRAY_A);
    // Escape data pulled from DB.
    $link = wp_slash($link);
    // Passed link category list overwrites existing category list if not empty.
    if (isset($linkdata['link_category']) && is_array($linkdata['link_category']) && count($linkdata['link_category']) > 0) {
        $link_cats = $linkdata['link_category'];
    } else {
        $link_cats = $link['link_category'];
    }
    // Merge old and new fields with new fields overwriting old ones.
    $linkdata = array_merge($link, $linkdata);
    $linkdata['link_category'] = $link_cats;
    return wp_insert_link($linkdata);
}

WordPress Version: 4.4

/**
 * Updates a link in the database.
 *
 * @since 2.0.0
 *
 * @param array $linkdata Link data to update.
 * @return int|WP_Error Value 0 or WP_Error on failure. The updated link ID on success.
 */
function wp_update_link($linkdata)
{
    $link_id = (int) $linkdata['link_id'];
    $link = get_bookmark($link_id, ARRAY_A);
    // Escape data pulled from DB.
    $link = wp_slash($link);
    // Passed link category list overwrites existing category list if not empty.
    if (isset($linkdata['link_category']) && is_array($linkdata['link_category']) && 0 != count($linkdata['link_category'])) {
        $link_cats = $linkdata['link_category'];
    } else {
        $link_cats = $link['link_category'];
    }
    // Merge old and new fields with new fields overwriting old ones.
    $linkdata = array_merge($link, $linkdata);
    $linkdata['link_category'] = $link_cats;
    return wp_insert_link($linkdata);
}

WordPress Version: 3.7

/**
 * Update a link in the database.
 *
 * @since 2.0.0
 *
 * @param array $linkdata Link data to update.
 * @return int|WP_Error Value 0 or WP_Error on failure. The updated link ID on success.
 */
function wp_update_link($linkdata)
{
    $link_id = (int) $linkdata['link_id'];
    $link = get_bookmark($link_id, ARRAY_A);
    // Escape data pulled from DB.
    $link = wp_slash($link);
    // Passed link category list overwrites existing category list if not empty.
    if (isset($linkdata['link_category']) && is_array($linkdata['link_category']) && 0 != count($linkdata['link_category'])) {
        $link_cats = $linkdata['link_category'];
    } else {
        $link_cats = $link['link_category'];
    }
    // Merge old and new fields with new fields overwriting old ones.
    $linkdata = array_merge($link, $linkdata);
    $linkdata['link_category'] = $link_cats;
    return wp_insert_link($linkdata);
}