Задать вопрос
@vladimirir

Как оптимально подтягивать og:img для списка статей с разных сайтов?

Возник запрос создать новостной раздел "О нас", в котором компания упоминается в разных новостных статьях. Для каждой статьи хотят, чтобы автоматически подгружалась картинка сниппета (как в телеграмме, вк, и т.д.). Сейчас использую метод, приведённый ниже, для запроса картинки, но получается довольно тяжеловесно при запросе выборки статей (каждая это элемент ИБ) по каждой ещё отдельный запрос делать. Думаю, сохранять картинку сниппета при создании элемента. Может, есть ещё какие-то варианты?

function getOgImage($url)
    {
        $image = '';
        libxml_use_internal_errors(true);
        $c = file_get_contents($url);
        if (!$c) {
            return $image;
        }
        $d = new DomDocument();
        $d->loadHTML($c);
        $xp = new domxpath($d);
        foreach ($xp->query("//meta[@property='og:image']") as $el) {
            $image = $el->getAttribute("content");
        }

        return $image;
    }
  • Вопрос задан
  • 150 просмотров
Подписаться 1 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
Думаю, сохранять картинку сниппета при создании элемента

Разумное решение. Или можно ставить задание в очередь. Ещё можно в фоне периодически актуализировать.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽