WordPress Version: 6.1
/**
* Retrieves the image HTML to send to the editor.
*
* @since 2.5.0
*
* @param int $id Image attachment ID.
* @param string $caption Image caption.
* @param string $title Image title attribute.
* @param string $align Image CSS alignment property.
* @param string $url Optional. Image src URL. Default empty.
* @param bool|string $rel Optional. Value for rel attribute or whether to add a default value. Default false.
* @param string|int[] $size Optional. Image size. Accepts any registered image size name, or an array of
* width and height values in pixels (in that order). Default 'medium'.
* @param string $alt Optional. Image alt attribute. Default empty.
* @return string The HTML output to insert into the editor.
*/
function get_image_send_to_editor($id, $caption, $title, $align, $url = '', $rel = false, $size = 'medium', $alt = '')
{
$html = get_image_tag($id, $alt, '', $align, $size);
if ($rel) {
if (is_string($rel)) {
$rel = ' rel="' . esc_attr($rel) . '"';
} else {
$rel = ' rel="attachment wp-att-' . (int) $id . '"';
}
} else {
$rel = '';
}
if ($url) {
$html = '<a href="' . esc_url($url) . '"' . $rel . '>' . $html . '</a>';
}
/**
* Filters the image HTML markup to send to the editor when inserting an image.
*
* @since 2.5.0
* @since 5.6.0 The `$rel` parameter was added.
*
* @param string $html The image HTML markup to send.
* @param int $id The attachment ID.
* @param string $caption The image caption.
* @param string $title The image title.
* @param string $align The image alignment.
* @param string $url The image source URL.
* @param string|int[] $size Requested image size. Can be any registered image size name, or
* an array of width and height values in pixels (in that order).
* @param string $alt The image alternative, or alt, text.
* @param string $rel The image rel attribute.
*/
$html = apply_filters('image_send_to_editor', $html, $id, $caption, $title, $align, $url, $size, $alt, $rel);
return $html;
}