【发布时间】:2016-09-19 14:24:07
【问题描述】:
在我的网站上,我通过以下方式生成 Pinterest“pin”按钮:
<a href="https://www.pinterest.com/pin/create/button/?url=http%3A%2F%2Fwww.example.com%2Fblog%2Fphotography-website-redesign%2F&description=Photography+Website+Redesign" onclick="__gaTracker('send', 'event', 'outbound-article', 'https://www.pinterest.com/pin/create/button/?url=http%3A%2F%2Fwww.example.com%2Fblog%2Fphotography-website-redesign%2F&description=Photography+Website+Redesign', '');" data-pin-do="buttonPin" data-pin-count="beside"><img src="//assets.pinterest.com/images/pidgets/pinit_fg_en_rect_gray_20.png" /></a>
在head 中加载以下脚本:
<script type="text/javascript" async src="//assets.pinterest.com/js/pinit.js"></script>
问题:
在这种情况下(以及其他一些类似的情况),当单击它时,它会错误地提供 Pin 此 url:
https://example.com/blog/st-louis-aiga-website-interactive-chair/
附加说明:
1. 并非所有博客条目都有这种错误行为。许多其他帖子“固定”到正确的条目。
2. 该网站已通过 Pinterest 验证。
3. 这个站点有一些我认为可能导致问题的 htaccess 重定向。我已经调整/测试并且不相信它们是一个因素,但值得一提的是:它将“/blog/”网址重定向为没有“/blog/”。此外,它重定向到强制https 和非www。示例:
http:www.//example.com/blog/st-louis-aiga-website-interactive-chair/
将重定向到
https://example.com/st-louis-aiga-website-interactive-chair/
更新:
问题仍然存在,但我在此处查看开发人员代码时花费了大量时间尝试不同的选项。
而且,事实证明,即使图像是正确的,描述也是错误的。
有什么提示/建议吗?
编辑/更新 1:
根据@Paolo 的回答,我实际上尝试了不同的格式,但结果相同。
这是不同格式的图钉,结果相同:
<a href="https://www.pinterest.com/pin/create/button/"
data-pin-do="buttonPin"
data-pin-media="https%3A%2F%2Fexample.com%2Fwp-content%2Fuploads%2Fhip-photography-web-design.jpg"
data-pin-url="https%3A%2F%2Fexample.com%2Fphotography-website-redesign%2F"
data-pin-description="Photography+Website+Redesign"
data-pin-count="beside">
<img src="//assets.pinterest.com/images/pidgets/pinit_fg_en_rect_gray_20.png" />
</a>
注意想知道是不是URL编码有问题,所以不加URL编码试了一下,行为不一样,但结果是正确的。
编辑/更新 2:
我决定尝试 buttonBookmark,但我发现 某些图像有不正确的行为。
正确获取所有图片,但部分图片描述正确,部分图片描述不正确。
这是图钉(带有匿名 URL):
<a href="https://www.pinterest.com/pin/create/button/"
data-pin-do="buttonBookmark"
data-pin-url="http://www.example.com/blog/photography-website-redesign"
data-pin-description="Photography Website Redesign"
data-pin-count="beside">
<img src="//assets.pinterest.com/images/pidgets/pinit_fg_en_rect_gray_20.png" />
</a>
我也用完全相同的混合错误描述尝试了此图钉:
<a href="https://www.pinterest.com/pin/create/button/"
data-pin-do="buttonBookmark"
data-pin-count="beside">
<img src="//assets.pinterest.com/images/pidgets/pinit_fg_en_rect_gray_20.png" />
</a>
【问题讨论】:
-
嗨,凯尔。我是负责 Pinterest 的 Pin It 按钮的工程师。保罗的回答是正确的;我要补充一点,我不确定您的点击处理程序是否会触发,因为 pinit.js 会删除您的原始链接并将其替换为它生成的链接。我唯一的其他建议是您尝试使用 Widget Builder 生成的确切代码,此处:developers.pinterest.com/tools/widget-builder 如果仍然失败,请直接通过 Pinterest Widgets GitHub 存储库与我联系,此处:github.com/pinterest/widgets
-
@KentBrewster - 我在此处添加了信息,并直接在 GitHub 存储库上与您联系。如果/何时您对我有任何反馈,请告知。谢谢。
-
@cale_b 用更多提示更新了答案...
标签: javascript pinterest