Blogger在meta标签中显示当前完整网址
问题描述:
我将我的Blogger用作SPA网站。用户可以将帖子分享到Facebook。 每个帖子在请求URL中由?id = {posts_id}相同,{post_id}由Javascript解析,并从JSON数据中查找帖子。Blogger在meta标签中显示当前完整网址
但Facebook共享爬行程序不支持SPA站点读取其og:标签。 因此,我们需要使用Facebook Crawler从另一个URL中读取og:标签。
我尝试了很多方法来使Blogger响应HTML与href =“”包含完整请求的URL。
这是我的尝试:完整网址是:www.abc.com/2016/07/31.html?id=1
<link expr:href='data:blog.url' rel='opengraph'/>
Will generate with HTML
<link href='www.abc.com/2016/07/31.html' rel='opengraph'/>
有没有什么办法让博客显示完整请求的URL,从HTML响应代码?
感谢提前
答
如果您正在使用由Blogger发布了新的主题(参见this)。然后你可以用下面的代码来实现你需要的东西 -
<b:if cond='data:view.isPost'>
<link expr:href='data:blog.url + "?id=" + data:view.postId' rel='opengraph'/>
</b:if>
,这将产生形式的URL -
www.abc.com/2016/07/post-title.html?id=PostID
的PostID
将是唯一的ID博客分配给每个岗位。这将只在邮政页面上呈现。
为了使静态网页这项工作,添加以下代码,以及到模板 - 利用页面ID
<b:if cond='data:view.isPage'>
<link expr:href='data:blog.url + "?id=" + data:view.pageId' rel='opengraph'/>
</b:if>
要抓取网页内容的数据,发送到以下端点的请求 -
https://www.blogger.com/feeds/BlogID/pages/default/PageID?alt=json
更换BlogID
和PageID
与实际值