shortcode_parse_atts()
Парсит аргументи Шоткод передані у вигляді рядка.
Переданий рядок повинен містити лише аргументи у вигляді пари ключ="значение"
, без імені шоткода та його дужок.
Працює на основі:
get_shortcode_atts_regex()
get_shortcode_atts_regex()
1 раз – 0.000195 сек
(швидко) | 50000 разів – 0.07 сек
(швидкість світла)
(швидко) | 50000 разів – 0.07 сек
(швидкість світла)
Хуків немає.
Повертає
Массив|Строку
. Список атрибутів і значення у вигляді масиву.
- Поверне порожній масив при
trim( $text ) == '""'
. - Поверне порожній рядок при
trim( $text ) == ''
. - Решта збіги перевіряються через empty() .
Використання
shortcode_parse_atts($text);
-
$text
(рядок) (обов’язковий) -
Рядок атрибутів шоткоду. Наприклад:
module="WP" foo='bar'
.
Приклади
#1 Демонстрація роботи функції
$res = shortcode_parse_atts( ' module="WP" bar="" foo='bar'' ); print_r ($ res); /* Array [module] => WP [bar] => [foo] => bar */
#2 Виріжемо та розберемо параметри шоткоду
Приклад того, як можна вирізати рядок параметрів шорткоду та розпарити її на окремі ключ=значение
.
$str = <<<'STR' Контент [five_element name="big badaboom" ident="multipassport" foo='bar'] Ще Контент STR; // для цієї перевірки шоткод повинен бути зареєстрований WP, див: add_shortcode() if( ! has_shortcode( $str, 'five_element' ) ){ echo 'Шоткод не знайдено'; } preg_match( '~[five_element(.+)]~s', $str, $mm ); $res = shortcode_parse_atts( $mm[1] ); print_r ($ res); /* Array ( [name] => big badaboom [ident] => multipassport [foo] => bar ) */
список змін
З версії 2.5.0 | Введено. |