从昨天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的网站并尝试通过网址Add Pin
时,我得到:
“哎呀!网址无效”
我的$ url指的是传递几个参数的php页面,即
http://www.mywebsite.com/img.php?img_id=photo (999).jpg&album=...&page=...
更新#1:我注意到,当发布的网址不包含任何括号时,直接在Pinterest或通过按钮发布都没有问题。尽管这些URL都是在php中进行urlencoded编写的,即(和)分别编码为%28和%29,这应该是括号,但它似乎不起作用。浏览器仍显示括号,但我发现它正在解释编码的%28和%29代码。
更新#2:收到Pinterest的回复
“如果网站阻止亚马逊IP,有时我们会看到此行为。 确保您没有阻止Amazon 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中删除所有括号吗?
答案 0 :(得分:1)
问题解决了!
不是导致无法固定(或在Tumblr上共享)的括号,而是URL中的空格(在我的情况下是括号前的空格)。虽然空格是URL编码(+),但Pinterest将其视为无效URL。
我从图片文件名中删除了所有空格,这也意味着来自URL,因为URL将图片文件名作为参数传递。
这解决了Pinterest和Tumblr按钮的问题。