`get_meta_tags` не читал og: image

Я хочу прочитать og:image метатег из URL. Я хочу использовать get_meta_tags, но он не возвращает значение для этого метатега.

В чем причина этого и как я могу это решить?

Код

<?php
$tags = get_meta_tags('https://stackoverflow.com/');
?>
<pre>
<?php
print_r($tags);
?>
</pre>

Ввод HTML

 <meta property="og:type" content= "website" />
<meta property="og:url" content="https://stackoverflow.com/"/>
<meta property="og:site_name" content="Stack Overflow" />
<meta property="og:image" itemprop="image primaryImageOfPage" content="https://cdn.sstatic.net/Sites/stackoverflow/img/[email protected]?v=73d79a89bded" />
<meta name="twitter:card" content="summary"/>
<meta name="twitter:domain" content="stackoverflow.com"/>
<meta name="twitter:title" property="og:title" itemprop="title name" content="Stack Overflow - Where Developers Learn, Share, &amp; Build Careers" />
<meta name="twitter:description" property="og:description" itemprop="description" content="Stack Overflow | The World’s Largest Online Community for Developers" />

Результат

   Array
(
[description] => Stack Overflow is the largest, most trusted online community for developers to learn, share​ ​their programming ​knowledge, and build their careers.
[viewport] => width=device-width, height=device-height, initial-scale=1.0, minimum-scale=1.0
[twitter:card] => summary
[twitter:domain] => stackoverflow.com
[twitter:title] => Stack Overflow - Where Developers Learn, Share, & Build Careers
[twitter:description] => Stack Overflow | The World’s Largest Online Community for Developers
)

1

Решение

Это не сработает.

get_meta_tags использует name атрибут метатегов для заполнения ключей массива.

Если вы проверите HTML страницы, с которой пытаетесь получить эти значения, вы увидите это:

 <meta property="og:type" content= "website" />
<meta property="og:url" content="https://stackoverflow.com/"/>
<meta property="og:site_name" content="Stack Overflow" />
<meta property="og:image" itemprop="image primaryImageOfPage" content="https://cdn.sstatic.net/Sites/stackoverflow/img/[email protected]?v=73d79a89bded" />

Как видите, ни один из этих тегов не имеет name атрибута, поэтому функция не может присвоить эти значения любой клавише.

Вам придется использовать другой метод, чтобы получить эти метатеги.

2

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

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

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