首页 文章

Facebook og:图片标签无法从Drupal网站下载

提问于
浏览
1

我有一个Drupal摄影网站 . 图像对我来说很重要,无论我怎么努力,谷歌有多难,我都无法将这些图像用于Facebook Open Graph共享 .

  • 我正在使用Drupal 7.14 .

  • 用户使用Plupload插件上传照片 .

  • 超大照片会通过Plupload调整大小功能自动调整大小 .

  • 这些照片被上传到自定义目录中 . 例如 . 网站/默认/文件/产品/ [用户: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 . "/" . $ user . "/" . $文件名;

//因此$ image_url输出我的完整图片网址 . 例如 . HTTP:// WWW [我的Web站点]的.com /网站/默认/文件/风格/大/公/产品/ 1 / [IMAGE] .JPG

$ element = array(
'#tag' => 'meta',
'#attributes' => array(
'property' => 'og:image',
'content' => $ image_url

);
require_once 'includes/common.inc';
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仅返回 ONE 问题 .
    那是 - Unable to download og:image: The image referenced by the url of og:image tag could not be downloaded.

  • 我可以确认ogp.spypixel.com/Pogo/checker/可以显示我的og:图像,图像网址是 Health 的 .

  • 我正在使用HTTP,因此Facebook og:图像的HTTPS错误无关紧要 .

  • 我的图像有ALT-txt .

  • 我还将 <link rel="image_src" href="[IMAGE_LINK]" 包含在 <HEAD> 中 .

  • 我的图像尺寸符合Facebook的标准 . 两个尺寸至少200px,按比例不超过3:1 .

  • 我在page.tpl.php文件中声明了og:namespace .
    的xmlns:OG =“http://ogp.me/ns#

  • 无论Google如何努力并修改代码并尝试新图片 . Facebook仍然不会显示我的照片并返回错误,如注释#9所示 .

  • 我的网站徽标等图片可以在Facebook分享中显示 . 唯一未显示的图像来自自定义节点页面/面板 .

  • 我试图修改图像的FTP权限但仍然失败 .

  • 我怀疑Plupload插件是它调整大小的图像无法由Facebook OG呈现的罪魁祸首 .

  • 我还怀疑可能是文件名或图像扩展名的区分大小写问题 .

我已经在这个问题上工作了24个多小时,希望正在消退 . 我仍然希望能在这里找到我对这个问题的启示 . 如果您知道解决方案或者遇到同样的问题,请帮助我 .

谢谢 .

1 回答

  • 0

    上面的问题是由于图像上的 HTTP 500 Internal Server Error 而发生的 . 图像在互联网浏览器中显示良好,但搜索引擎机器人无法访问 .

    我已通过在 /public_html/sites/default/files/ 文件夹中的.htaccess文件中禁用 Option FollowSymLinks 来解决了该问题 .

    要永久禁用该选项,您必须删除.htaccess文件的内容,同时将文件本身保留在文件夹中 .

    希望有所帮助,欢呼 .

相关问题