Извлечение мета-тегов Open Graph с сайта реактивного шлема
У меня есть скрипт, который захватывает метатеги Open Graph с удаленной страницы. Я использую PHP для загрузки страницы в документ DOM и извлекаю содержимое тега следующим образом:
if($meta->getAttribute('property')=='og:image')
$og_image = $meta->getAttribute('content');
Это прекрасно работает для типичной страницы, где теги (на мой взгляд) отформатированы правильно, например так:
<meta property="og:image" content="https://example.com/image.jpg" />
Но я сталкиваюсь с сайтом (pitchfork.com), где теги OG форматируются следующим образом:
<meta data-react-helmet="true" name="og:image" content="https://example.com/image.jpg"/>
Конечно, мой код пропускает их, потому что ищет свойство, а не имя.
Я ничего не знаю о React или реагирующем шлеме, но это правильный код? Так выглядят теги на всех сайтах с реактивными шлемами? Должен ли я переписать свой код для учета этого? Если так, каков лучший способ сделать это?
1 ответ
В шлеме React теги OG форматируются в том формате, в котором мы хотим.
На "pitchfork.com" они должны были явно инициализировать "og:tags"
с именем ключа, а не собственности.
So, in this case, you need to rewrite your code according to name.
Хотя "og"
теги должны использоваться с ключом свойства.