Facebook共享:如何在使用AJAX加载页面时更新OG标记
我有一个网站,使用100%AJAX加载所有“页面”和“内容”。我使用jQuery来处理AJAX负载 我遇到的问题是,我想为各个项目页面包含一个FB共享链接(请参见下面的链接): 因此,当通过AJAX加载每个项目时,我将使用jQuery(当doc.ready时)更新index.php页面中的OG元标记。我给了每个FB OG元一个与其用途相对应的ID(例如FB_标题)。下面是位于index.php头部的OG元:Facebook共享:如何在使用AJAX加载页面时更新OG标记,facebook,jquery,share,Facebook,Jquery,Share,我有一个网站,使用100%AJAX加载所有“页面”和“内容”。我使用jQuery来处理AJAX负载 我遇到的问题是,我想为各个项目页面包含一个FB共享链接(请参见下面的链接): 因此,当通过AJAX加载每个项目时,我将使用jQuery(当doc.ready时)更新index.php页面中的OG元标记。我给了每个FB OG元一个与其用途相对应的ID(例如FB_标题)。下面是位于index.php头部的OG元: <meta id="FB_title" property="og:title"
<meta id="FB_title" property="og:title" content="Concrete Design Communications" />
<meta id="FB_description" property="og:description" content="Internationally acclaimed Toronto-based brand design practice serving a variety of sectors including telecom, luxury retail, fashion, cosmetics, hospitality, publishing, as well as furniture and product design." />
<meta id="FB_image" property="og:image" content="http://www.concrete.ca/images/LOGO.png" />
然后,当通过AJAX加载每个项目页面时,我想更新“内容”
元标记的属性。按照这些思路:
$('#FB_title').attr('content', 'Concrete Design: <? print $GA_project_name; ?>');
$('FB#u title').attr('content','Concrete Design:');
问题是,当我运行代码时,我得到了一个“解析错误”。还有人遇到过这个问题吗?通过AJAX加载页面时,更新FB OG meta的最佳方法是什么
我已经看过FB开发文档,但似乎没有任何东西可以解决这个问题
提前感谢您的帮助。Facebook的linter不运行任何javascript。因此,当facebook来抢夺时,你必须确保提供正确的内容 这是你需要做的。两种选择。无论是工作,并已被证明与其他生产网站的工作。J
- 在Like插件代码中指定AJAX url。当您的web服务器看到来自Facebook linter的请求时,请在其上设置一个特殊的处理程序。刮板的用户代理是:
。然后,您的服务器可以解析hash bang并为该内容提供特定的og元标记。这称为URL重写,可以通过.htaccess完成“facebookexternalhit/1.1(+http://www.facebook.com/externalhit_uatext.php)“
- 在Like插件代码中指定规范URL。对于可以显示的每一部分内容,该规范URL都是唯一的,可能是对
(不带hash-bang)显示正确的og:meta标记http://www.concrete.ca/work_project.php?project_ID=32