在Facebook或其他社交网络上分享页面时:
如果存在<meta property="og:image" content="http://url.to/image.jpg" />
,则用于生成缩略图。没关系。
如果<meta property="og:image">
不存在但页面上有图像,则HTML页面上显示的第一个图像将用作缩略图。这也很好。
如果<meta property="og:image">
不存在且,页面上没有图片,则表示没有缩略图。
如何使用<meta property="og:image">
提供一个默认缩略图图片,当且仅当我们遇到#3时才会使用
即。 :如果页面上没有图像,则此默认图像将仅使用 (如果有图像,则将使用此图像!)
更一般地说,有没有办法告诉:
“如果没有og:image
,请将页面呈现用作缩略图(就像众所周知的http://netrenderer.com/)”
我想要实现的目标:始终拥有缩略图,无论页面上是否有图像。
答案 0 :(得分:2)
据我了解,如果页面上没有可供选择的图片,您希望提供一个后备og:image-tag。
我看到两个通用解决方案:
我建议在后端执行此操作。
假设您有一个单文件PHP控制器,您可以将逻辑,数据和视图混合在一起...... 我们假设您将所有内容存储在变量中,可能称为 $ pagecontent 。
如果此变量将所有即将发布的内容保存为字符串,您可以在html-head中执行以下操作:
<head>
<!-- other code -->
<?php
if (strpos($pagecontent, '<img ') === false) {
echo '<meta property="og:image" content="http://url.to/fallback-image.jpg" />';
}
?>
</head>
我希望这会有所帮助。
答案 1 :(得分:1)
如果您希望始终根据您的选择提供缩略图,则需要提供默认图像:
<meta property="og:image" content="http://YOUR_DOMAIN.COM/YOUR_DEFAULT_image.jpg" />
否则Facebook将根据自己的决定添加或忽略图像