【发布时间】:2014-03-12 22:49:34
【问题描述】:
我们希望在 word press 网站中有链接,将目标网站的当前元描述作为链接的锚文本。
我知道这需要 javascript 或 php,但不确定哪种方法合适,哪种方法最容易在 word press 中得到支持。
【问题讨论】:
标签: javascript php jquery html wordpress
我们希望在 word press 网站中有链接,将目标网站的当前元描述作为链接的锚文本。
我知道这需要 javascript 或 php,但不确定哪种方法合适,哪种方法最容易在 word press 中得到支持。
【问题讨论】:
标签: javascript php jquery html wordpress
如果您有 Wordpress,那么您应该安装并激活 cURL(或找到方法)。此外,还有一个名为 get_meta_tags() 的 PHP 函数。所以,你可以做这样的事情,假设你有一个链接数组,每个 URL 称为$links_array:
foreach($links_array as $link){
$tags = get_meta_tags($link);
$description = @$tags['description'];
//Printing each link
echo "<a href='$link'>$description</a>";
}
【讨论】:
有趣的问题,是的,这是可能的。您不能使用 javascript 或 AJAX 来执行此操作,因为浏览器的跨域策略不允许您执行此操作。我认为它必须是两者的结合。
我能想到的第一个解决方案是使用 PHP 创建某种代理,它返回目标 URL(链接到的那个)的内容:
<?php
$url=$_POST['url'];
if($url!="")
echo file_get_contents($url);
?>
假设我们称这个小脚本为“getit.php”。现在您可以进行 AJAX 调用,它将目标 url 发送到您的 .php 文件,并且 .php 文件返回目标页面的内容。然后,您将从返回的数据中提取描述元标记。
当然,您可以在 PHP 文件中获取它并且只返回元描述,因为这甚至会是一个更好的解决方案。你可以在 PHP 中尝试这样的事情:
<?php
$url=$_POST['url'];
$tags = get_meta_tags($url);
return $tags['description'];
?>
PS。抱歉我的英语不好,这不是我的母语。
【讨论】:
get_meta_tags() php 函数 ;)