is_protected_meta()
Перевіряє вказаний ключ метаполя, чи він захищеним (внутрішнім).
За умовчанням у WordPress використовується така логіка: якщо назва метаполя починається з нижнього підкреслення _
, наприклад _edit_time
, то таке метаполе вважається захищеним – використовується для внутрішніх цілей движка. Такі захищені метаполя не виводяться в блоці метаполів під час редагування запису.
1 раз – 0.00001 сек
(швидкість світла) | 50000 разів – 0.03 сек
(швидкість світла) |
PHP 7.0.8, WP 4.6
(швидкість світла) | 50000 разів – 0.03 сек
(швидкість світла) |
PHP 7.0.8, WP 4.6
Хуки з функції
Повертає
true|false
. Захищене метаполем чи ні.
Використання
if( is_protected_meta( $meta_key, $meta_type ) ){ // Захищене поле }
-
$meta_key
(рядок) (обов’язковий) - Ключ метаполя, який потрібно перевірити.
-
$meta_type
(рядок/null) -
Типу метаполя. Можливо:
post
,
user
,
comment
,
term
.
Типово: null
Приклади
#1 Перевіримо метаполе, чи воно не є захищеним
$meta_key = '_my_metakey'; if( is_protected_meta( $meta_key, 'post' ) ){ echo 'Захищене поле'; }
список змін
З версії 3.1.3 | Введено. |
Код is_protected_meta() is protected meta WP 6.0.2
function is_protected_meta( $meta_key, $meta_type = '' ) { $sanitized_key = preg_replace( "/[^x20-x7Ep{L}]/", '', $meta_key ); $protected = strlen( $sanitized_key ) > 0 && ( '_' === $sanitized_key[0] ); /** * Filters whether meta key is considered protected. * * @ Since 3.2.0 * * @param bool $protected Whether the key is considered protected. * @param string $meta_key Metadata key. * @param string $meta_type Type of object metadata is for. Accepts 'post', 'comment', 'term', 'user', * або будь-який інший object type with an associated meta table. */ return apply_filters( 'is_protected_meta', $protected, $meta_key, $meta_type ); }