Locations プラグイン 🌍

さて、私が取り組んでいるプロトタイプ作業の一部を少しだけお見せします。

今後、スポンサーシップのレベルに関わらず、現在の支援者および直近の支援者に対して、一定期間この機能への早期アクセスを提供する予定です。

今後は、個人スポンサーや小規模コミュニティ向けに月額7ドル、ビジネス向けに月額40ドルから、一部の新機能への早期アクセスを提供していく予定です。

「いいね!」 5

現在のスポンサー様へ向けた早期アクセスへの招待が、刚刚送信されました。まもなく過去のスポンサー様にも対象を拡大し、このアクセス権は一定期間維持されますが、その後は最低限のスポンサーシップを維持することが必要となります。

スポンサーリストは毎日見直されていますので、Locations の最新機能をご利用になりたい場合や、私の活動を支援したいとお考えの場合は、ぜひスポンサーになってください

機能は個別に判断の上、一定の猶予期間を置いてパブリックリポジトリへ移行されます。

「いいね!」 3

素晴らしい自動ユーザー位置特定機能の実装を直ちに行いました。これには、Maxmind の適切な設定が含まれます。これは新しいインスタンスでの作業でした。

新しい app.yml は優れていて簡潔ですが、もはや Maxmind の ENV 変数に関するコメントを含んでいません。

これを自信の持てない自己ホスティングのシステム管理者にもっとアクセスしやすくする必要があるなら、明確な説明が必要かもしれません。そして、彼らをこのトピックに案内する必要があります。


また、小さな UX の問題について

サイドバーに(私にとっては)不要な地図へのリンクが表示されますが、これはどの設定でも制御されていません。私は以下のように非表示にしました。

// ユーザーの地図リンクを非表示にする
.sidebar-sections li[data-list-item-name="users map"] {
    display: none;
}

もしかすると、この機能と(設定で制御される)トピック地図リンクの両方を廃止する時が来たかもしれません。管理者が望む場合、これらは標準の UI を通じて簡単に追加できるようになりました。

「いいね!」 1

現在、管理者がサイドバーに追加するリンクは翻訳できません。そのため、ユーザーが異なるインターフェース言語を好むコミュニティの場合、プラグインがリンクをサイドバーに追加する際に、複数の言語に翻訳して表示するオプションを提供します。

「いいね!」 2

カテゴリ内のトピックの位置情報を許可できないことに気づきました。

変更を保存するオプションが表示されません :thinking:(バージョン 2026.5.0-latest です)

「いいね!」 1

これで修正されました。

この修正は、リポジトリの早期アクセス版と公開版の両方にデプロイされ、多数の互換性修正も同時に行われます。

それに伴い、バージョン間の差異を拡大しました。

十分な権限を持つスポンサー向けに公開されている早期アクセス版には、現在の Locations の公開版にはない以下の機能が含まれています。

タイトル 説明
ユーザーマップの地球儀 ユーザーマップにインタラクティブな 3D 地球儀ビューを追加します。位置に基づいたアバターの配置、ドラッグ/タッチによる回転、ズーム、リセット、検索フォーカス、ユーザーカードのクリック、常時オンでのバンプマッピングに対応します。
地球儀のスクリーンセーバー ヘッダーの下に回転する 3D 地球儀とユーザーのアバターを表示する、オプションの実験的なアイドル時のスクリーンセーバーです。
強化されたユーザーマップフィルター ユーザーマップに結果数の制限、検索タイプ、検索語句、グループフィルタリングのコントロールを追加します。
近隣トピックフィルター 現在ユーザーの位置からの距離に基づいた、実験的な近隣トピックリストフィルターを追加します。
IP ベースのユーザー位置照会 IP データからユーザーの位置を自動的に推定・保存します。トリガーモード、粒度、クールダウン、GeoNames による解決、既存データのスキップ動作、デバッグログなどの設定が可能です。

このため、維持されている公開版は若干機能制限がかけられました。スポンサーの皆様が十分な恩恵を受けられるよう、これは必要な措置です。

これらの追加機能を希望される場合は、スポンサーになる ことを検討してください。早期アクセスを含む月次プランを選択してください。適切なティアでスポンサーになれば、24 時間以内に早期アクセス版へのアクセスが可能になります。

「いいね!」 3

@merefield さん、迅速な対応ありがとうございます :+1:

「いいね!」 1

最新の Discourse バージョンで非推奨通知に偶然出会いました:

[PLUGIN discourse-locations] 非推奨通知:model:composer に対して api.modifyClass を使用することは非推奨です。代わりに addModelFieldaddModelAccessor/addModelGetter/addModelSetteraddModelMethodaddModelSaveProperty および addModelCallback API を使用してください。[Discourse 2026.8 以降で非推奨] [非推奨ID: discourse.modify-class-model]

想像上の友人に相談してみましたが、私の初歩的なプログラミングスキルではどうにもできないようです… :see_no_evil_monkey:

「いいね!」 1

FYI:

[Admin Notice] Plugin 'discourse-locations' contains code which needs updating. (id:discourse.modify-class-model)

私も同じ問題に遭遇しています:

この問題は @cvx の貢献により解決されました :folded_hands:(実際には5日前のことです! :sweat_smile:

最近のPR

PR 主な目的 作成者
#168 セキュリティ警告を解消するため、RubyおよびJavaScriptの依存関係をアップデート。 angusmcleod
#169 非推奨のComposer `modifyClass` の使用を現代的なモデル拡張APIに置き換え。 cvx
#171 Composerのlocation-defaultテストを拡張し、カテゴリ切り替え時のロケーション同期を修正。 merefield
#172 プラグインのリンティングおよび開発ツールを現在のDiscourseプラグインスケルトンと同期。 merefield
#173 use-after-freeの脆弱性を修正するため、Rubyの `json` ジェムを2.21.1から2.21.2にアップグレード。 dependabot
#174 location-searchのエラー処理を復元し、空のジオコーディングリクエストを防ぐとともに、マップの安全策と回帰テストカバレッジを改善。 merefield

@angus および @cvx のご貢献に感謝いたします。

この変更は、無料プラグインとスポンサー限定の早期アクセスプラグインの両方に適用されました。

さらに、Chatbot を通じてユーザーロケーションについて議論できるようにするコードは、スポンサー限定リポジトリの追加機能性をさらに強化するため、Locations Early Accessに移行されました。

「いいね!」 5

本日、いくつかの非機能面での改善をアーリーアクセスからメインプラグインにバックポートしました:

「いいね!」 2

ブックマークメモプラグインと同様に、Locations の構成を再構築しました。これにより、プロスポンサーかどうかに関わらず、このプラグインを使用するにはベースプラグインが常に必要になります。

これはメンテナンス作業を効率化するために必要でした。また、以前「アーリーアクセス」と呼ばれていたバージョンを、スポンサー向けの正式なプレミアム拡張機能として位置づけることにもなります。

アプリの app.yml ファイル内の旧アーリーアクセス版のクローンコマンドを、以下のものに置き換えてください。ベースプラグインを最初に来るようにしてください:

  git clone https://github.com/merefield/discourse-locations.git
  git clone https://YOUR_GITHUB_USERNAME:YOUR_TOKEN@github.com/merefield/discourse-locations-pro-ext.git

その後、通常どおり Discourse を再構築してください。既存のロケーションデータは保持されますので、手動での移行は不要です。

リポジトリの名前変更後も、アクセスは継続されるはずです。アクセスやインストールに関する問題が発生した場合は、メッセージを送ってください。喜んでお手伝いいたします。

継続的なサポートに感謝いたします!

「いいね!」 1

以前、ワークアラウンドとして追加されたものですが、それ以降PM CSSは通常のトピックに近くなってきたため、これを削除し、PMユーザーの場所ラベルの整列を元に戻します。すばらしいですね:

「いいね!」 1

カスタムロケーションを保存する方法はありますか?例えば、多くの人が利用する山奥の小屋があるとします。その場所は名前ではなく座標で特定されるため、簡単に検索することができません。緯度/経度の座標にカスタム名を付けて保存できる機能があれば、非常に便利だと思います。

「いいね!」 1

はい。座標(Coords)だけをトピックに保存できます。

以下の点にご注意ください:

入力フィールドをオフにすると、ジオロケーションプロバイダーにその場所の登録がある限り、汎用検索を使用できます:

「いいね!」 1