the_meta() WP 1.2.0

Застаріла з версії 6.0.2 . Більше не підтримується і може бути видалено.
Використовуйтеget_post_meta() to retrieve post meta and render manually .

Виводить довільні поля запису (метадані з wp_postmeta ). Поля відображаються у списку <li> . Приховані поля ігноруються.

Функція повинна використовуватися всередині Цикл WordPress або у файлі single.php – там де є дані запису.

Приховані поля – довільні поля (назви полів), що починаються з нижнього підкреслення _, ігноруються (у списку не потрапляють). Таке маркування використовують WordPress для системних метаполів.

Працює на основі:
get_post_custom_keys()
1 раз – 0.001464 сек
(дуже повільно) | 50000 разів – 2.87 сек
(швидко) |
PHP 7.1.2, WP 4.7.3

Хуки з функції

Повертає

null.

Використання

<?php the_meta(); ?>

Приклади

0

#1 Виведемо метадані посту

Для цього розмістимо наступний код у файлі single.php після тега шаблону (функції) the_content() :

<p>Мета інформація про поточний пост:</p>
<?php the_meta(); ?>

Цей код виведе наступні

<p>Мета інформація про поточний пост:</p>
<ul class='post-meta'>
	<li><span class='post-meta-key'>назва ключа:</span> значення поля</li>
</ul>

список змін

З версії 1.2.0Введено.
Застаріла з 6.0.2Використовуйте get_post_meta() для відтворення post meta and render manually.

Код the_meta() WP 6.0.2

function the_meta() {
	_deprecated_function( __FUNCTION__, '6.0.2', 'get_post_meta()' );
	$keys = get_post_custom_keys();
	if ($keys) {
		$li_html = '';
		foreach ((array) $keys as $key) {
			$ keyt = trim ($ key);
			if ( is_protected_meta( $keyt, 'post' ) ) {
				continue;
			}

			$values ​​= array_map( 'trim', get_post_custom_values( $key ) );
			$value = implode(', ', $values);

			$html = sprintf(
				"<li><span class='post-meta-key'>%s</span> %s</li>n",
				/* translators: %s: Post custom field name. */
				esc_html( sprintf( _x( '%s:', 'Post custom field name' ), $key ) ),
				esc_html( $value )
			);

			/**
			 * Filters HTML output of li element в post custom fields list.
			 *
			 * @ Since 2.2.0
			 *
			 * @param string $html HTML output for the li element.
			 * @param string $key Meta key.
			 * @param string $value Meta value.
			 */
			$li_html .= apply_filters( 'the_meta_key', $html, $key, $value );
		}

		if ( $li_html ) {
			echo "<ul class='post-meta'>n{$li_html}</ul>n";
		}
	}
}

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *