在帖子上使用HTML Twitter分享按钮时,需要在URL中对Blogger标题中的垂直条/管道进行编码

时间:2017-04-13 19:15:43

标签: twitter encoding share blogger

我正在尝试在网址中对Blogger标题中的竖线进行编码,因为当我在帖子上推送html推文按钮时,Twitter的弹出窗口不会显示任何推文。但是,当我将垂直条编码为%7C时,一切正常。

例如,MSNBC使用竖线在Youtube上分割他们的标题,我自动将他们的视频嵌入我的一个博客。见这里:

  总统唐纳德特朗普的周五鸣叫:'伊朗正在玩火'|   早上乔| MSNBC

https://us-gov.blogspot.com/2017/02/president-donald-trumps-friday-tweet.html

但如果有人试图发布帖子,他们会在网址上显示空白https://twitter.com/share?url=https://us-gov.blogspot.com/2017/02/president-donald-trumps-friday-tweet.html&text=President%20Donald%20Trump%27s%20Friday%20Tweet:%20%27Iran%20Is%20Playing%20With%20Fire%27%20|%20Morning%20Joe%20|%20MSNBC

但是,如果我将垂直条编码为%7C,Twitter窗口工作正常。

https://twitter.com/share?url=https://us-gov.blogspot.com/2017/02/president-donald-trumps-friday-tweet.html&text=President%20Donald%20Trump%27s%20Friday%20Tweet:%20%27Iran%20Is%20Playing%20With%20Fire%27%20%7C%20Morning%20Joe%20%7C%20MSNBC

我只是想知道是否有一种简单的方法可以防止这种情况发生在我的博客模板的html代码中。或者,如果有一个简单的脚本可供使用。

感谢。

1 个答案:

答案 0 :(得分:1)

而不是使用格式为

的当前共享网址
<a expr:href='&quot;https://twitter.com/share?url=&quot; + data:post.url + &quot;&amp;text=&quot; + data:post.title' aria-label='' class='resp-sharing-button__link' rel='nofollow' target='_blank'>Twitter</a>

使用Blogger提供的原生共享网址生成器 -

<a expr:href='&quot;https://www.blogger.com/share-post.g?blogID=&quot; + data:blog.blogId + &quot;&amp;postID=&quot; + data:post.id + &quot;&amp;target=twitter&quot;' aria-label='' class='resp-sharing-button__link' rel='nofollow' target='_blank'>Twitter</a>

这将生成表单的URL -

https://www.blogger.com/share-post.g?blogID=BLOGID&postID=POSTID&target=twitter

然后,这将自动重定向到Twitter共享窗口,其中包含自动填充帖子的标题和URL。该帖子的标题将被转义。此共享网址生成器也可用于为其他社交网络生成共享网址(又名facebookpinterestemailgoogleplus,方法是替换{{1}参数)

这样做的缺点是,您无法添加用户跟随或添加主题标签,就像您在构建Twitter共享网址时通常可以做的那样。