# atom_enclosure()

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

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

## Сигнатура

```php
atom_enclosure()
```

## Описание

Использует глобальную переменную $post, чтобы проверить, требует ли запись пароль и есть ли у пользователя пароль к этой записи. Если нет, функция завершится до вывода.
Также использует функцию get_post_custom() для получения поля метаданных «enclosure» записи и разбирает его значение, чтобы вывести вложение (или несколько). Вложения представляют собой HTML-теги link с URI и другими атрибутами.

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

Файл: `wp-includes/feed.php:519`

```php
function atom_enclosure() {
	if ( post_password_required() ) {
		return;
	}

	foreach ( (array) get_post_custom() as $key => $val ) {
		if ( 'enclosure' === $key ) {
			foreach ( (array) $val as $enc ) {
				$enclosure = explode( "\n", $enc );

				$url    = '';
				$type   = '';
				$length = 0;

				$mimes = get_allowed_mime_types();

				// Parse URL.
				if ( isset( $enclosure[0] ) && is_string( $enclosure[0] ) ) {
					$url = trim( $enclosure[0] );
				}

				// Parse length and type.
				for ( $i = 1; $i <= 2; $i++ ) {
					if ( isset( $enclosure[ $i ] ) ) {
						if ( is_numeric( $enclosure[ $i ] ) ) {
							$length = trim( $enclosure[ $i ] );
						} elseif ( in_array( $enclosure[ $i ], $mimes, true ) ) {
							$type = trim( $enclosure[ $i ] );
						}
					}
				}

				$html_link_tag = sprintf(
					"<link href=\"%s\" rel=\"enclosure\" length=\"%d\" type=\"%s\" />\n",
					esc_url( $url ),
					esc_attr( $length ),
					esc_attr( $type )
				);

				/**
				 * Filters the atom enclosure HTML link tag for the current post.
				 *
				 * @since 2.2.0
				 *
				 * @param string $html_link_tag The HTML link tag with a URI and other attributes.
				 */
				echo apply_filters( 'atom_enclosure', $html_link_tag );
			}
		}
	}
}
```

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

- 2.2.0 — Introduced.

## Связанные

Использует: [`get_allowed_mime_types`](https://chugunov.pro/api-wordpress/functions/get_allowed_mime_types/), [`post_password_required`](https://chugunov.pro/api-wordpress/functions/post_password_required/), [`get_post_custom`](https://chugunov.pro/api-wordpress/functions/get_post_custom/), [`esc_url`](https://chugunov.pro/api-wordpress/functions/esc_url/), [`esc_attr`](https://chugunov.pro/api-wordpress/functions/esc_attr/), [`apply_filters`](https://chugunov.pro/api-wordpress/functions/apply_filters/).

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