sanitize_term()
Очищає всі поля елемента таксономії за допомогою sanitize_term_field() .
Приймає масив або об’єкт даних елемента таксономії, обробляє кожне значення за допомогою sanitize_term_field() і повертає переданий масив.
Також у масив/об’єкт, що повертається, додається ключ 'filter' = $context
у значенні якого вказаний контекст у якому були очищені всі поля. Потрібно це для оптимізації, щоби не очищати поля повторно. Тобто. якщо ‘filter’ вказаний і він збігається з переданим контекстом, функція просто поверне переданий об’єкт.
Також функція видаляє неприпустимі поля з переданого об’єкта. Повертаються лише ці поля:
term_id name description slug count parent term_group term_taxonomy_id object_id
sanitize_term_field()
(повільно) | 50000 разів – 6 сек
(швидко)
Хуків немає.
Повертає
Массив|Объект
. Масив/об’єкт із усіма очищеними полями.
Використання
sanitize_term( $term, $taxonomy, $context );
-
$term
(масив/об’єкт) (обов’язковий) - Об’єкт елемента таксономії, усі поля якого потрібно очистити.
-
$taxonomy
(рядок) (обов’язковий) - Назва таксономії.
-
$context
(рядок) Контекст, у якому потрібно очищати всі поля. Див. опис sanitize_term_field() . Може бути:
display
– для виведення на екранraw
– просто поверне значенняedit
– фільтр esc_html() якщо це поле description, та фільтр esc_attr() якщо інше поле.db
slug
rss
attribute
– фільтр esc_attr()js
– фільтр esc_js()
Типово: ‘display’
Приклади
#1 Демонстрація очищення полів елемента таксономії
// Вихідний масив $term = array( 'term_id' => '3', 'name' => 'Word ' press <tag>foo</tag>', 'slug' => 'word press <tag>', 'term_group' => 0, 'term_taxonomy_id' => 3, 'taxonomy' => 'category', 'description' => 'Опис > " ' press <tag>foo</tag>', 'parent' => 0, 'count' => 0, ); $ term = sanitize_term ($ term, 'category'); /* Array ( [term_id] => 3 [name] => Word ' press <tag>foo</tag> [slug] => word press <tag> [term_group] => 0 [term_taxonomy_id] => 3 [taxonomy] => category [description] => <p>Опис > » ' press <tag>foo</tag></p> [parent] => 0 [count] => 0 [filter] => display ) */ $ term = sanitize_term ($ term, 'category', 'db'); /* Array ( [term_id] => 3 [name] => Word ' press foo [slug] => word-press-tag [term_group] => 0 [term_taxonomy_id] => 3 [taxonomy] => category [description] => Опис > " ' press foo [parent] => 0 [count] => 0 [filter] => db ) */ $ term = sanitize_term ($ term, 'category', 'raw'); /* Array ( [term_id] => 3 [name] => Word ' press <tag>foo</tag> [slug] => word press <tag> [term_group] => 0 [term_taxonomy_id] => 3 [taxonomy] => category [description] => Опис > " ' press <tag>foo</tag> [parent] => 0 [count] => 0 [filter] => raw ) */ $ term = sanitize_term ($ term, 'category', 'js'); /* Array ( [term_id] => 3 [name] => Word ' press <tag>foo</tag> [slug] => word press <tag> [term_group] => 0 [term_taxonomy_id] => 3 [taxonomy] => category [description] => <p>Опис > » ' press <tag>foo</tag></p> [parent] => 0 [count] => 0 [filter] => js ) */
список змін
З версії 2.3.0 | Введено. |