Функция is_protected_meta() в WordPress: определение защищенного ключа

IS_PROTECTED_META() │ WP 3.1.3

Функция is_protected_meta() используется для определения, является ли ключ метаданных защищённым (внутренним).

Что такое защищённый ключ метаданных?

В WordPress ключи метаданных, которые начинаются с символа подчеркивания (_), считаются защищёнными. Например, ключ _edit_time означает, что этот метаданные используется только для внутренних целей, поэтому они не отображаются в панели "Пользовательские поля" при р��дактировании поста.

Время выполнения

  • 1 раз — 0.00001 сек (скорость света)
  • 50000 раз — 0.03 сек (скорость света)

Хуки функции

Функция использует хук is_protected_meta.

Возвращаемое значение

Функция возвращает значение true или false, в зависимости от того, считается ли ключ метаданных защищённым.

Использование

Функция вызывается следующим образом:

is_protected_meta( $meta_key, $meta_type );
  • $meta_key (string, обязательный) — ключ метаданных.
  • $meta_type (string) — тип объекта, к которому относятся метаданные. Может принимать значения 'post', 'comment', 'term', 'user' или любой другой тип объекта с соответствующей таблицей метаданных.
  • По умолчанию: пустая строка.

Примеры

Пример 1: Проверка защищённого ключа метаданных

$meta_key = '_my_metakey';
if( is_protected_meta( $meta_key, 'post' ) ){
    echo 'Защищённый ключ метаданных';
}

Изменения

Функция была введена в версии 3.1.3.

Код функции

Вот как выглядит код функции в файле wp-includes/meta.php:

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] );

    /**
     * Фильтрует, считается ли ключ метаданных защищённым.
     *
     * @since 3.2.0
     *
     * @param bool   $protected Считается ли ключ защищённым.
     * @param string $meta_key  Ключ метаданных.
     * @param string $meta_type Тип объекта, к которому относятся метаданные. Принимает 'post', 'comment', 'term', 'user',
     *                          или любой другой тип объекта с соответствующей таблицей метаданных.
     */
    return apply_filters( 'is_protected_meta', $protected, $meta_key, $meta_type );
}

Связанные функции метаданных

  • add_comment_meta()
  • add_metadata()
  • add_post_meta()
  • add_term_meta()
  • add_user_meta()
  • delete_comment_meta()
  • delete_metadata()
  • delete_post_meta()
  • delete_post_meta_by_key()
  • delete_term_meta()
  • delete_user_meta()
  • get_comment_meta()
  • get_metadata()
  • get_post_custom()
  • get_post_custom_keys()
  • get_post_custom_values()
  • get_post_meta()
  • get_site_meta()
  • get_term_meta()
  • get_the_author_meta()
  • get_user_meta()
  • has_term_meta()
  • register_meta()
  • register_post_meta()
  • register_term_meta()
  • sanitize_meta()
  • the_author_meta()
  • update_comment_meta()
  • update_metadata()
  • update_post_meta()
  • update_term_meta()
  • update_user_meta()
  • wp_read_image_metadata()

Эта информация поможет вам лучше понять, как работает функция is_protected_meta() и как её использовать в WordPress.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *