1

我是一个 Joomla 1.5 站点的管理员。我今天遇到一个问题,因为我在 Facebook 上分享一篇文章时,它被显示为没有图像。在网上搜索,我发现 Facebook 需要一个链接标签位于 html 页面的标题中,如下所示:

<link rel="image_src" href="..." />

虽然我的网站提供了这样的东西

<meta name="image" content="...." />

我的网站正在使用 K2 插件来获取文章我对 Joomla 的了解非常有限,因为我从未使用过它,但尝试搜索文件的结构并发现在 item.php 文件中引用的图像是这样的:

$this->item->image

于是我修改了主模板的 index.php 文件,在头部添加了如下标签:

<link rel="image_src" href="<?php echo JURI::base() . $this->item->image; ?>" />

然而,虽然 $this->item->image; 不给出任何错误它什么也不返回。难道我做错了什么?

先感谢您

4

1 回答 1

0

$this 指的是插件的上下文,而在模板中 $this 是模板,因此是错误的。

我很长时间没有使用 1.5,但考虑到系统插件可以访问生成的标记;所以它可以插入任何操纵html文本的标签。

但是,它需要访问组件的数据才能获取图像。但是组件在插件之前运行,因此您可以在组件中设置 post var 或 global:

JRequest::setVar('templateheader',$this->item->image);

然后在系统插件或libraries/joomla/document/html/renderer/head.php(核心hack)中检索它并打印出来。

于 2013-03-13T23:01:31.310 回答