WordPress шорткод принимает только атрибуты по умолчанию

В настоящее время я пытаюсь написать собственный шорткод, чтобы использовать API YouTube на моем сайте WordPress. Мой код работает также, но только с атрибутами по умолчанию шорткода. Добавленные атрибуты через шорткод игнорируются моим кодом.

Может кто-нибудь мне помочь? Я много гуглил, но ничего подобного не нашел. Я думаю, что сделал все как в кодексе, но, может быть, вы знаете больше.
Вот мой код:

function api_youtube_integration($atts, $content = null) {
$a = shortcode_atts(array(
'class'         => '',
'videoCount'    => 5,
'bottomBar'     => true
), $atts);
ob_start();
?>

<div data-video="<?php echo esc_html($a['videoCount']); ?>">Test</div>
<?php
return ob_get_clean();
}
add_shortcode('youtubeAPI', 'api_youtube_integration');

Мой шорткод: [youtubeAPI videoCount = 12] Код возвращает только 5 в качестве videCount, но не 12 …

С наилучшими пожеланиями, Лукас

0

Решение

Итак, по-видимому, атрибуты переданы shortcode_atts() всегда переводятся в нижний регистр Официальные документы:

Имена атрибутов всегда преобразуются в нижний регистр, прежде чем они передаются в функцию-обработчик. Ценности нетронуты. [myshortcode FOO = «BAR»] создает массив $ atts = (‘foo’ => ‘BAR’).

Поэтому вам нужно будет убедиться, что все параметры строчные, или использовать подчеркивание для разделения слов.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]