Is there a query to bulk move many topics from one category to another? I want to consolidate many categories into one category and would like to make the move quickly and all at once, and also not bump the topics.
Bonus: also want to tag topics first with a category-equivalent tag before moving them.
Grateful for any queries or recipes. Many thanks! I’d even write it up as a howto topic if it’s good.
「いいね!」 7
tshenry
(Taylor)
2022 年 4 月 4 日午後 10:52
34
このトピックを整理し、OPで質問を解決するための現在の最良のオプションを追加しました。不足しているものや問題に気づいた場合は、お気軽にご返信ください。
大量の変更を加える前に、念のためバックアップを取ってください…
UIでのトピックの一括タグ付け/移動:
小さなカテゴリやトピックのサブセットの場合、一括選択ツールで十分な場合があります(この投稿の最後にある通知に関する注を参照)。
すべてのトピックをあるカテゴリから別のカテゴリに移動する
まず、サイトのコンテナに入ります:
cd /var/discourse
./launcher enter app
tshenry:
次のRakeタスクを使用してカテゴリIDを見つけます:
rake categories:list
最初の値は開始カテゴリID、2番目の値は宛先カテゴリIDです。
rake categories:move_topics[15,6]
カテゴリ内のすべてのトピックに一括でタグを付ける:
まず、サイトのコンテナに入ります:
cd /var/discourse
./launcher enter app
tshenry:
テンプレート: rake tags:bulk_tag_category["<tag>|<tag>",<category_id>]
これは、カテゴリをタグに変換しようとする場合に特に役立ちます。
まず、次のRakeタスクを使用して関連するカテゴリIDを見つけます。
rake categories:list
指定したカテゴリのすべてのトピックにタグを付けます。この例では、IDが6のカテゴリのすべてのトピックに「support」タグを付けます。 これは各トピックの他のすべてのタグを削除します。
rake tags:bulk_tag_category["support",6]
指定したカテゴリのすべてのトピックに追加します。この例では、IDが6のカテゴリのすべてのトピックに「support」タグを追加しますが、既存のタグは保持されます。
rake tags:bulk_tag_category["support",6,true]
これらの方法がどのような通知をトリガーするかは100%確信がありませんが、懸念があり、通知が送信されないことを絶対に確認したい場合は、作業中に次の設定を確認することをお勧めします:
disable_category_edit_notifications
disable_tags_edit_notifications
「いいね!」 15
@tshenry 素晴らしい!本当に助かりました。ありがとうございます!
「いいね!」 4
tobiaseigen
(Tobias Eigen)
クローズされました:
2023 年 10 月 14 日午前 8:39
36
このトピックは、最後の返信から30日後に自動的にクローズされました。新しい返信は許可されていません。