Та еще задача:
корректно извлекать данные рейтинга организации. Задал вопрос поддержке Яндекса, как это сделать не нарушая правил платформы. Жду ответ и опубликую здесь.
А пока, есть простое решение, извлекать данные посредством PHP
шоркода:
<?php
function rating_function($atts) {
extract(shortcode_atts(array(
// вставляем ссылку на карточку организации в Яндекс Справочике как есть
"url" => 'https://yandex.ru/maps/org/<---id организации--->',
), $atts));
$content = file_get_contents($url);
// определяем начало необходимого фрагмента кода, до которого мы удалим весь контент
$pos = strpos($content, '<div class="orgpage-reviews-view__rating-score">');
// удаляем все до нужного фрагмента
$content = substr($content, $pos);
// находим конец необходимого фрагмента кода
$pos = strpos($content, '</div>');
// отрезаем нужное количество символов от конца фрагмента
$content = substr($content, 0, $pos);
echo $content;
}
add_shortcode('rating', 'rating_function');
?>
Получаем рейтинг в числовом значении и вставляем полученный шорткод куда нужно на сайте:
[rating].
P.S.: Только функцию нужно запускать как можно редко;) дабы избежать нагрузки, желательно через периодическое обновление кэша, например, посредством curl закрывая соединение curl_close(); или каждый раз вызывая форму запроса данных в ручную.
Здесь, предлагается одно из решений посредством curl.