Html 打开图形元标记-";遗失物业;及;“推断财产”;[使用Django的Facebook共享]
我正在尝试创建一个Facebook共享按钮,以共享带有自定义主题、描述和图像的页面。但是根据:developers.facebook.com/tools/debug/sharing(请原谅我的格式,我不能发布超过2个链接),我有一些缺少和推断属性的问题 第一个和最后一个元标记作为原始元标记加载。我想知道为什么中间的标签不是 base.html:Html 打开图形元标记-";遗失物业;及;“推断财产”;[使用Django的Facebook共享],html,django,facebook,facebook-opengraph,facebook-share,Html,Django,Facebook,Facebook Opengraph,Facebook Share,我正在尝试创建一个Facebook共享按钮,以共享带有自定义主题、描述和图像的页面。但是根据:developers.facebook.com/tools/debug/sharing(请原谅我的格式,我不能发布超过2个链接),我有一些缺少和推断属性的问题 第一个和最后一个元标记作为原始元标记加载。我想知道为什么中间的标签不是 base.html: <html> <head> <meta name="viewport" content="wi
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- My og metatags -->
<meta property="fb:app_id" content="{ myId }" />
<meta property="og:url" content="{ myUrl }" />
<meta property="og:type" content="website" />
<meta property="og:title" content="{ myTitle }" />
<meta property="og:description" content="{ myDescription }" />
<meta property="og:image" content="{% static 'accounts/img/share_image.png' %}" />
<meta name="turbolinks-cache-control" content="no-preview">
</head>
<body>
{% block body %}
<h1>Base</h1>
{% endblock %}
<script>
(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.10&";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
</body>
</html>
{% extends 'base.html' %}
{% load static %}
{% block body %}
<div class="fb-share-button"
data-href="{ myPageToShare }"
data-layout="button_count">
</div>
{% endblock %}
{%block body%}
基础
{%endblock%}
(功能(d、s、id){
var js,fjs=d.getElementsByTagName[0];
if(d.getElementById(id))返回;
js=d.createElement;js.id=id;
js.src=“//connect.facebook.net/en_US/sdk.js#xfml=1&version=v2.10&”;
fjs.parentNode.insertBefore(js,fjs);
}(文档“脚本”、“facebook jssdk”);
template.html:
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- My og metatags -->
<meta property="fb:app_id" content="{ myId }" />
<meta property="og:url" content="{ myUrl }" />
<meta property="og:type" content="website" />
<meta property="og:title" content="{ myTitle }" />
<meta property="og:description" content="{ myDescription }" />
<meta property="og:image" content="{% static 'accounts/img/share_image.png' %}" />
<meta name="turbolinks-cache-control" content="no-preview">
</head>
<body>
{% block body %}
<h1>Base</h1>
{% endblock %}
<script>
(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.10&";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
</body>
</html>
{% extends 'base.html' %}
{% load static %}
{% block body %}
<div class="fb-share-button"
data-href="{ myPageToShare }"
data-layout="button_count">
</div>
{% endblock %}
{%extends'base.html%}
{%load static%}
{%block body%}
{%endblock%}
当请求时,服务器必须直接返回单个URL的OG元标记;Facebook scraper不关心任何客户端JavaScript(turbolinks有效地使用了它。)@CBroe谢谢,我不确定我是否完全理解。这是否意味着Facebook scraper无法读取此脚本?我能做些什么来解决这个问题?有什么办法吗?您需要OG元数据的服务器端呈现。@CBroe就是这样!非常感谢你的帮助!当请求时,服务器必须直接返回单个URL的OG元标记;Facebook scraper不关心任何客户端JavaScript(turbolinks有效地使用了它。)@CBroe谢谢,我不确定我是否完全理解。这是否意味着Facebook scraper无法读取此脚本?我能做些什么来解决这个问题?有什么办法吗?您需要OG元数据的服务器端呈现。@CBroe就是这样!非常感谢你的帮助!