【发布时间】:2013-02-23 00:34:23
【问题描述】:
自昨天 Pinterest 更新其网站以来,我的 Pinterest 的“Pin it”按钮停止正常工作,即旋转轮永远在弹出窗口中运行。
我的代码——过去可以正常工作——是:
<a data-pin-config="beside" href="//pinterest.com/pin/create/button/?url=<?=urlencode($url)?>&media=<?=urlencode($image_url) ?>&description=The picture I just pinned!" data-pin-do="buttonPin" >
<img src="//assets.pinterest.com/images/pidgets/pin_it_button.png" />
</a>
我还在 </body> 结束标记之前添加了 Pinterest js。
有趣的是,当我访问 Pinterest 的网站并尝试通过 URL 访问 Add Pin 时,我得到:
“哎呀!无效的网址”
我的 $url 是指传递几个参数的 php 页面,即
http://www.mywebsite.com/img.php?img_id=photo (999).jpg&album=...&page=...
更新 #1: 我注意到,当发布的 URL 不包含任何括号时,直接或通过按钮在 Pinterest 上发布没有问题。尽管 URL 都在 php 中进行了 urlencoded,即 ( 和 ) 分别编码为 %28 和 %29 ,这应该处理括号,但它似乎不起作用。浏览器仍然显示括号,尽管我意识到它正在解释 url 编码的 %28 和 %29 代码。
更新 #2: 收到 Pinterest 的回复说
"有时,如果网站阻止亚马逊 IP,我们会看到这种行为。 确保您没有阻止亚马逊 IP 或将我们的用户代理列入白名单:
Pinterest/0.1 +http://pinterest.com/
很遗憾,我们没有专门的 IP 组可供您将其列入白名单,因为我们的 IP 会随着时间而变化。"
根据 Pinterest 的回复,我进行了研究,并提出了以下相关链接:
-
http://wordpress.org/support/topic/note-when-entering-user-agent-whitelist
"Pinterest 必须作为推荐人或代理列入白名单,这样它才能看到图片 - 如果没有,它只会看到重定向到 HTML 页面(因此“不是有效图片”)。 尝试将 pinterest 和 pinterest.com 加入您的用户代理白名单"
问题:
这对任何人都有效吗?
修改 .htaccess 或 robots.txt 以实现此目的的最佳方法是什么?
我也面临与 Tumblr 相同的问题。我已经验证没有括号,共享按钮可以正常工作。如果没有其他方法,我应该从 URI 中删除所有括号吗?
【问题讨论】: