我有一个 Drupal 摄影网站。图片对我来说很重要,无论我怎么努力,怎么用谷歌搜索,我都无法让这些图片在 Facebook Open Graph 共享上工作。
我正在使用 Drupal 7.14。
用户使用 Plupload 插件上传照片。
Plupload resize 功能会自动调整尺寸过大的照片。
这些照片被上传到自定义目录中。例如。站点/默认/文件/产品/[用户:id]/
这些照片根据 Drupal 核心样式进行缩略图和样式化。例如。网站/默认/文件/样式/大/
这些照片显示在我使用面板自定义的覆盖节点页面中。
Drupal 模块目前不支持面板的 Open Graph 标签,所以我自己使用
drupal_add_html_head
.// OG 图像标签
$node = node_load(%node:nid);
$user = $node->uid;
$filename = $node->field_product_photos['und'][0]['filename'];
$base_url = "http://www.[my-web-site].com/sites/default/files/styles/large/public/products";
$image_url = $base_url 。“/”。$用户。“/”。$文件名;
// 因此 $image_url 输出我的完整图像 url 地址。例如。http://www.[my-web-site].com/sites/default/files/styles/large/public/products/1/[IMAGE].JPG
$element = array (
'#tag' => 'meta ',
'#attributes' => 数组(
'property' => 'og:image',
'content' => $image_url
),
);
要求一次'
drupal_add_html_head($element, 'og_image');我使用http://ogp.spypixel.com/Pogo/checker/index.php?url=http%3A%2F%2Fwww.feelsion.com%2Fproduct%2Fd700检查我的 OG 标签。og:title, og:image, og:url, og:description 就像一个没有问题的魅力。
但是 Facebook 调试器https://developers.facebook.com/tools/debug/og/object?q=http%3A%2F%2Fwww.feelsion.com%2Fproduct%2Fd700只返回一个问题。
那是 -无法下载 og:image:无法下载 og:image 标签的 url 引用的图像。我可以确认 ogp.spypixel.com/Pogo/checker/ 可以显示我的 og:image 并且图像 url 是健康的。
我正在使用 HTTP,因此 Facebook og:image 的 HTTPS 错误无关紧要。
我的图片有 ALT-txt。
我也加入
<link rel="image_src" href="[IMAGE_LINK]"
了<HEAD>
.我的图片尺寸符合 Facebook 的标准。两个尺寸至少 200 像素,比例不超过 3:1。
我在 page.tpl.php 文件中声明了 og:namespace。
xmlns:og="http://ogp.me/ns#无论我多么努力地谷歌并修改代码并尝试新图像。Facebook 仍然从不显示我的照片并返回注释 #9 中的错误。
我的网站徽标等图像可以显示在 Facebook 共享中。唯一未显示的图像来自自定义节点页面/面板。
我试图修改图像的 FTP 权限,但仍然失败。
我怀疑 Plupload 插件是其调整大小的图像无法被 Facebook OG 渲染的罪魁祸首。
我还怀疑这可能是文件名或图像扩展名的区分大小写问题。
我在这个问题上工作了超过 24 小时,但希望正在消退。我仍然希望我能在这里找到我对这个问题的启示。如果您知道解决方案或遇到同样的问题,请帮助我。
谢谢你。