5

ハイフンを含むタグで 700 以上のブログ投稿にタグを付けましたが、これらのタグは 2011 年に突然機能しなくなりました。これは、Tumblr がタグ内のハイフンを禁止することを (予告なしに) 決定したためです (タグ内のスペースが許可されているため、ハイフンは現在ブロックされていると思います)。 ) ハイフンに変更されます。) 残念ながら、Tumblr はハイフンを含むすべてのタグをグローバルに名前変更するつもりはありません (ただし、これらのタグはもう使用されていません → 404)。

今、自分のタグの名前を自分で変更したいと考えています。

「一括投稿エディタ」( )でやってみましたがtumblr.com/mega-editor、タグによる投稿の選択ができません。投稿ごとに手動で投稿を選択し、特定のタグが使用されているかどうかを確認し、使用されている場合は削除して、代わりに新しいタグを追加する必要があります。これは膨大な作業になります (タグ付けされた投稿は 700 件ですが、合計で 1000 件を超えます)。

そこで、Tumblr APIが役立つのではないかと考えました。私はプログラマーではありませんが、出発点としてここで助けを得ることができれば、喜んで掘り下げます。

次のプロセスが必要だと思います。

  1. でタグ付けされたすべての投稿を選択x(= ハイフンを含むタグ)
  2. これらすべての投稿にyタグを付ける (= ハイフンなしのタグ)
  3. xこれらすべての投稿のタグを削除してください

影響を受けるタグごとにこのプロセスを手動で開始します。


メソッド(またはあなたがそれを呼び出すもの)/postがリクエストパラメーターを知っていることがわかりますtag

指定したタグが付いた投稿への応答を制限します

(これがハイフンを含むタグでも機能することを願うしかないと思います。)

その後、その結果セットにタグを追加および削除する方法が必要になります。/post/editタグについては何も言いません。私は何か見落としてますか?APIでタグの追加・削除はできないの?


タグの名前を「簡単に」変更する方法を知っていますか?

APIで可能ですか?どうすればそれを行うことができるか、出発点、ヒントなどを教えていただけますか?


これが役立つかどうかはわかりませんが、ハイフンを含むタグで「タグ付けされた」投稿を検索機能で見つけることができることに気付きました。

例: タグがあるとしましょうfoo-bar/tagged/foo-bar(→404)と連動しています。で投稿を見つけることができます/search/foo-bar(ただし、これはもちろん理想的ではありません。これは、(本文に) タグ名に類似/等しい単語を含む投稿も検索される可能性があるためです)。

ハイフン ( ) をエンコードしようとしまし/tagged/foo%2Dbarたが、うまくいきませんでした。

4

2 に答える 2

4

これはよく使われている Google 検索なので、記録として残しておきます。http://dev.goose.im/tags/で使用できます。

PHP と jquery の組み合わせを使用し、1 年か 2 年前に書いた以前の tumblr api スクリプトに基づいて jquery を作成し、この tumblr php oauth スクリプトを認証に使用しました。誰かが私にソース コードを公開してほしいと思ったら、私は喜んでそうします。

于 2013-10-24T23:12:52.077 に答える
1

あなたがプログラマーでない場合、あなたの時間はどれくらいの価値がありますか? 彼らが言うように、時は金なりです。API の使い方を理解するだけでなく、言語を選択し、その言語での記述を学ぶ必要があります。それは簡単な仕事ではありません。1 時間分の仕事に対して 50 ドルでフリーランサーを雇うことができます。

あなたの質問に答えるには、はい、API を使用してこれを行うことができます。「これらのパラメーターは、/post、/post/edit、および /post/reblog メソッドに使用されます」と記載されています。カンマでtags区切られた単語の文字列として記述されます。

あなたがしたいことは、/postsメソッドを使用してすべてのブログ投稿のリストを取得することです。「リクエスト」セクションを見て、この URL に渡す基準を見つけます。すべての投稿の完全なリストを取得するには、できるだけ一般的なものにする必要があります。

投稿のリストを取得したら、それを繰り返し処理しtags、各投稿の応答で提供されるパラメーターを変更します。idパラメータを とともに使用することをお勧めします。/post/editこれtagsも文字列として使用されます。

このタスクに使用できる最も単純な言語は PHP です。リクエストを作成するには、curl 拡張機能を確認する必要があります。配列を頻繁に使用するため、配列について読みたいと思うでしょう。また、 explodeimplodestr_replace (ダッシュ用)、および結果を反復処理するためのforeachも確認する必要があります。

これを行うときは、foreach ループの最後でbreakを使用することを強くお勧めします。これにより、最初は 1 つの投稿にのみ影響します。タグ/投稿を誤って消去したくないため、最初にテストすることが重要です。printvar_dumpは、コードのデバッグに役立つ良い方法です。xdebugは、実行時にコードを 1 行ずつステップ実行できる優れた拡張機能です。Netbeansは、優れた xdebug サポートを持つ IDE です。

ここには、PHP を始めるのに役立つページもあります。マシンに PHP をインストールする必要があります。Web サーバーをインストールする必要はありません。この PHP-CLI (コマンド ライン) では、sapi で十分です。

于 2012-11-20T05:05:03.490 に答える