Всё что угодно что было внутри div становится внутри figcaption.
$telo = preg_replace('/(<img src=[^=]*?=")(.*?)(">)/s', '$1$3<figcaption>$2</figcaption>', $telo);
И работает?
$telo = preg_replace('/(<img[^>]+?alt=(\'|")([^>]+?)\2[^>]*?>)/s', '$1<figcaption>$3</figcaption>', $telo);
Сделай без отрыва, добавь на страницу и то и другое и простой скрипт который будет в форму добавлять то, что калькулятор насчитает.
И это будет не сложнее чем просто вывести один из 18 текстов? Или всё таки это будет самой сложной частью, а не вывод случайного текста?
Проще тем кто умеет их делать, но они таких вопросов не задают.
Можно плагин поискать соответствующий https://wordpress.org/plugins/jonradio-multiple-themes/
...или сделать сайт на Джумле, там эта возможность разработчиками предусмотрена.
С радостью погляжу на ваш пример скрипта, который будет понимать какие требуется совершить действия и отслеживать их. Не клики по заранее определённому элементу, а что-бы пользователь в админке мог задавать любые действия на сколько фантазии хватит, а скрипт это понимал без дополнительного участия кодера.
В котором написано потыкайте 20 раз на зелёный треугольник? И так все 18 пройти нужно в случайном порядке. Ну хоть 1 хоть 100 готового точно нет. И самое сложное тут будет отслеживать действие, клики по квадратикам, хотя если там из действий будут только клики на картинку внутри текста то и не так уж сложно. Но одними текстами всё равно тут не отделаешься.
Поменяй display:none на visibility: hidden
$total = 0; $repeater = get_field('repeater'); if ($repeater) { foreach ($repeater as $row) { var_dump($row); if ($row['sub_field_name'] == 'Тут нужное значение') { $total++; } } } echo $total; print_r($repeater);
samdo, var_dump($row) внутри foreach что показывает?
Но ты проверил print_r ? И где этот скрипт выводится? get_field('repeater') получает поле для текущего поста. У вас в одном посте несколько суб полей с одинаковым значением?