我已经标记了超过700篇包含连字符的标签的博客帖子,这些标签在2011年突然停止工作,因为Tumblr决定(没有任何通知)禁止标签中的连字符(我猜连字符现在被阻止,因为标签中的空格(这是允许的)变成连字符。)。不幸的是,Tumblr不愿意全局重命名包含连字符的所有标签(尽管这些标签 no 不再使用→404)。
现在我想自己重命名我的标签。
我尝试使用“大量帖子编辑器”(tumblr.com/mega-editor
)来做,但是无法按标签选择帖子。我必须在发布后手动选择帖子并查看是否使用了某个标签,如果是,请删除它并添加新标签。这将是一项巨大的工作(700个标记的帖子,但总共超过1000个。)
所以我认为Tumblr API可能会帮助我。我不是程序员,但我愿意深入研究它,如果我能在这里得到一些帮助作为起点。
我想我需要以下过程:
x
的帖子(=包含连字符的标签)y
标记所有这些帖子(=不带连字符的标记)x
我会手动为每个受影响的标签启动此过程。
我看到方法(或你称之为的任何方法)/post
知道请求参数tag
:
限制对具有指定标记的帖子的响应
(我想我只能希望这适用于包含连字符的标签。)
之后,我需要一种方法来添加和删除该结果集中的标签。 /post/edit
对标签没有任何说明。我错过了什么?是否可以使用API添加/删除标签?
您是否知道如何“轻松”重命名我的代码?
API可以吗?你能给我一个起点,小费等我怎么设法做到这一点?
我不知道这是否有用,但我注意到搜索功能仍然能够找到包含连字符的标签“标记”的帖子。
示例:假设我有标记foo-bar
。它与/tagged/foo-bar
(→404)相关联。我可以找到/search/foo-bar
的帖子(但这当然不太理想,因为它也可能会找到包含(在正文中)类似于标签名称的字词的帖子。
我试图对连字符(/tagged/foo%2Dbar
)进行编码,但没有运气。
答案 0 :(得分:4)
仅供记录,因为这是一个流行的谷歌搜索:我已经做到了!你可以在http://dev.goose.im/tags/使用它。
我使用了PHP和jquery的组合,将我的jquery基于我在一两年前写过的前一个tumblr api脚本,并使用this tumblr php oauth script进行身份验证。如果有人要我提出源代码,我会很高兴。
答案 1 :(得分:1)
如果您不是程序员,您的时间对您来说有多少价值?正如他们所说,时间就是金钱。您不仅要弄清楚如何使用API,还要选择一种语言并学会在其中书写。这不是一项小任务。你可以以每小时50美元的价格成为一名自由职业者。
要回答您的问题,是的,可以使用API执行此操作。它提到“这些参数用于/ post,/ post / edit和/ post / reblog方法。”并且tags
被提及为一串逗号分隔的单词。
您要做的是使用/posts
方法获取每篇博文的列表。您需要查看“请求”部分,以确定传递给此URL的条件。您希望它尽可能通用,以获得所有帖子的完整列表。
获得帖子列表后,您需要对其进行迭代,并修改每个帖子的响应中提供的tags
参数。您需要将id
参数与/post/edit
一起使用,再次将tags
作为字符串。
您可以用于此任务的最简单的语言是PHP。您需要查看curl extension来提出请求。您需要阅读arrays,因为您将大量使用它们。您还需要查看explode,implode,str_replace(对于破折号)和foreach来迭代结果。
当你这样做时,我强烈建议你在foreach循环结束时使用break,这样它最初只影响一个帖子。首先进行测试非常重要,因为您不希望意外删除标签/帖子。 print和var_dump是帮助您调试代码的好方法。 xdebug是一个很好的扩展,它允许您在运行时逐行遍历代码。 Netbeans是一个具有良好xdebug支持的IDE。
还有一个很好的page here可以让你开始使用PHP。您需要在您的计算机上安装PHP。您不需要安装Web服务器 - 对于这个PHP-CLI(命令行),sapi已经足够了。