eurobyte.ru - мощные сервера с Дата-центрами в Нидерландах и Москве. От 159 ₽/мес.

wp_parse_slug_list()WP 4.7.0

Создает массив ярлыков из строки слов разделенных запятыми, пробелами. Значения массив очищается через sanitize_title().

Можно передать массив, чтобы просто его очистить.

В массиве останутся только уникальные значения.

Работает на основе: sanitize_title()
1 раз — 0.000199 сек (быстро) | 50000 раз — 3.64 сек (быстро) | PHP 7.0.8, WP 4.7

Хуков нет.

Возвращает

string[]. Очищенный массив ярлыков (слагов).

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

wp_parse_slug_list( $input_list ): array;
$list(массив/строка) (обязательный)
Список ярлыков (slug) в виде строки. Ярлыки должны быть разделены пробелами или запятыми/ Например: my_slug, your_slug.

Примеры

#1 Демонстрация работы

$str = 'Привет, мир Привет, мир';
$array = wp_parse_slug_list( $str );

/*
$array будет равен:
Array
(
	[0] => privet
	[1] => mir
)
*/

// следующие строки вернут тот же результат:
$atr = 'Привет мир';
$atr = 'Привет,мир';
$atr = 'Привет,мир,мир,мир';
$atr = 'Привет,      мир';

Транслитерация как в примере, будет только если установлен соответствующий плагин, например, Cyr to Lat.

Список изменений

С версии 4.7.0 Введена.
С версии 5.1.0 Refactored to use wp_parse_list().

Код wp_parse_slug_list() WP 7.1

function wp_parse_slug_list( $input_list ): array {
	$input_list = wp_parse_list( $input_list );

	return array_unique(
		array_map(
			'sanitize_title',
			array_map(
				/*
				 * Cast booleans, integers, and floats to strings. Non-scalar types
				 * (including null) have already been filtered out by wp_parse_list().
				 */
				'strval',
				$input_list
			)
		)
	);
}
1 комментарий