# wp_ajax_send_link_to_editor()

URL: https://chugunov.pro/api-wordpress/functions/wp_ajax_send_link_to_editor/
Проверено на WordPress 6.9, обновлено 06.08.2026.
Источник: независимый русскоязычный справочник chugunov.pro. Не является официальной документацией WordPress.

Тип: функция.
Появился в версии: 3.5.0.

## Сигнатура

```php
wp_ajax_send_link_to_editor()
```

## Описание

Генерирует HTML для отправки в редактор ссылки на встраиваемый объект, не являющийся изображением.
Обратно совместимо со следующими фильтрами:

file_send_to_editor_url

audio_send_to_editor_url

video_send_to_editor_url

## Исходный код

Файл: `wp-admin/includes/ajax-actions.php:3400`

```php
function wp_ajax_send_link_to_editor() {
	global $post, $wp_embed;

	check_ajax_referer( 'media-send-to-editor', 'nonce' );

	$src = wp_unslash( $_POST['src'] );
	if ( ! $src ) {
		wp_send_json_error();
	}

	if ( ! strpos( $src, '://' ) ) {
		$src = 'http://' . $src;
	}

	$src = sanitize_url( $src );
	if ( ! $src ) {
		wp_send_json_error();
	}

	$link_text = trim( wp_unslash( $_POST['link_text'] ) );
	if ( ! $link_text ) {
		$link_text = wp_basename( $src );
	}

	$post = get_post( $_POST['post_id'] ?? 0 );

	// Ping WordPress for an embed.
	$check_embed = $wp_embed->run_shortcode( '' . $src . '' );

	// Fallback that WordPress creates when no oEmbed was found.
	$fallback = $wp_embed->maybe_make_link( $src );

	if ( $check_embed !== $fallback ) {
		// TinyMCE view for  will parse this.
		$html = '' . $src . '';
	} elseif ( $link_text ) {
		$html = '<a href="' . esc_url( $src ) . '">' . $link_text . '</a>';
	} else {
		$html = '';
	}

	// Figure out what filter to run:
	$type      = 'file';
	$extension = preg_replace( '/^.+?\.([^.]+)$/', '$1', $src );
	if ( $extension ) {
		$extension_type = wp_ext2type( $extension );
		if ( 'audio' === $extension_type || 'video' === $extension_type ) {
			$type = $extension_type;
		}
	}

	/** This filter is documented in wp-admin/includes/media.php */
	$html = apply_filters( "{$type}_send_to_editor_url", $html, $src, $link_text );

	wp_send_json_success( $html );
}
```

## История изменений

- 3.5.0 — Introduced.

## Связанные

Использует: [`wp_ext2type`](https://chugunov.pro/api-wordpress/functions/wp_ext2type/), `WP_Embed::maybe_make_link`, `WP_Embed::run_shortcode`, [`wp_unslash`](https://chugunov.pro/api-wordpress/functions/wp_unslash/), [`wp_basename`](https://chugunov.pro/api-wordpress/functions/wp_basename/), [`esc_url`](https://chugunov.pro/api-wordpress/functions/esc_url/), [`check_ajax_referer`](https://chugunov.pro/api-wordpress/functions/check_ajax_referer/), [`sanitize_url`](https://chugunov.pro/api-wordpress/functions/sanitize_url/), [`wp_send_json_error`](https://chugunov.pro/api-wordpress/functions/wp_send_json_error/), [`wp_send_json_success`](https://chugunov.pro/api-wordpress/functions/wp_send_json_success/), [`apply_filters`](https://chugunov.pro/api-wordpress/functions/apply_filters/), [`get_post`](https://chugunov.pro/api-wordpress/functions/get_post/).

Оригинал в официальной документации: https://developer.wordpress.org/reference/functions/wp_ajax_send_link_to_editor/
