使用PHP自动执行og:title和og:description标签

问题描述 投票:0回答:1

我在一天的大部分时间里都没有尝试自动执行og:title和og:description标签。我有一个global.php文件,其中包含一些我想放在我所有页面上的通用元标记。但是不包括“标题”标签,我以每页为基础。我对meta description标签也做同样的事情。因此计划是在全局文件内添加og:title和og:description,并使用一些PHP魔术来自动填充这些文件,并使其与<title><meta name="description"

相同

首先,我已经阅读了2个小时,试图实现标题,这里有另一篇文章的建议。我使此行工作了许多个月,以获取当前的URL(我将其用于“复制到此页面的链接”按钮))

$url =  'https://'."{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}";
$escaped_url = htmlspecialchars( $url, ENT_QUOTES, 'UTF-8' );

所以我尝试通过这种方式进行标题自动化:

$html = file_get_contents($escaped_url);
$title = preg_match("/<title>([^<]*)<\/title>/im", $html, $matches);

然后是<meta property="og:title" content="<?=$title;?>">

但是这会破坏我的Web服务器。无限期挂起。

甚至我用于做Description标签的更简单,更干净的解决方案也使我的服务器挂起。

$tags = get_meta_tags($escaped_url);
$description = $tags['description'];
<meta property="og:description" content="<?=$description;?>">

你们对如何实现此自动化有任何想法,还是应该将其删除并手动在每个页面上进行?

我在一天的大部分时间里都没有尝试自动执行og:title和og:description标签。我有一个global.php文件,其中包含一些我想放在我所有页面上的通用元标记。但是...

php facebook-opengraph
1个回答
0
投票

实际上,您的服务器正在挂起,因为您调用的程序会自行调用以收集标题。这不是最好的方法。

© www.soinside.com 2019 - 2024. All rights reserved.