chapoi
1
ユーザープロフィールにカスタマイズ可能なリンクを追加するための小さなコンポーネント。
表示場所…
-
展開されたユーザープロフィール
-
ユーザーカード
設定
profile custom link field を空欄にした場合、ユーザー名を使用してデフォルト設定され、この例では
http://github.com/charlie
に移動します。
カスタムのユーザー入力フィールドを使用したい場合は、その値をユーザーフィールドの正確な名前に設定する必要があります。例:
-
ユーザーフィールドを作成する
-
設定をユーザーフィールド名に設定する
-
ユーザーにフィールドに入力させる
/u/[username]/preferences/profile
これで http://github.com/MyRealGithubName に移動するようになります。
より高度な実装については、Multiple Custom Profile Links component をご覧ください。
「いいね!」 23
mattdm
(Matthew Miller)
2
「nofollow」は追加されますか? Akismetで送信されますか?
これは間違いなくスパマーによって使用されるでしょう!
「いいね!」 1
Firepup650
(Firepup Sixfifty)
3
ちょっとした指摘ですが、http://github.com/ ではなく https://github.com/ ですよね?
また、https ではなく http の GitHub を推奨する特別な理由があるのでしょうか?
「いいね!」 4
chapoi
4
はい、タイポでした。ありがとうございます。URL構造を再発明しているわけではありません 
全くありません。
「いいね!」 4
Julian2
(Julian R)
5
@chapoi さん、このコンポーネントを見つけられてとても嬉しいです。フォーラムに追加しました、ありがとうございます!「複数リンク」バージョンに切り替えるかもしれません。
簡単なメモですが、「プロフィールカスタムリンクアイコン」フィールドの下の説明文に余分な「the」があります 
ユーザーフィールドのフィールドタイプをもう1つ追加するのではなく、これのためにコンポーネントを追加する必要がある特定の理由がありますか?
よろしく
「いいね!」 2
chapoi
7
質問の意図がよくわかりません。ユーザーフィールドはすべて自動的にプロフィールやユーザーカードに表示されるわけではありません。
「いいね!」 2
Julian2
(Julian R)
8
チャーリーさん、
分かりにくくてすみません。ユーザーフィールドに、テキストだけでなくリンクを許可するフィールドタイプがあると素晴らしいのですが。
それとも、私たちがユーザーフィールドを全く間違って利用しているのでしょうか?現在、以下のように利用しています。
リンクがクリック可能になる代わりに、コピー&ペーストしなければなりません。
「いいね!」 1
chapoi
9
承知いたしました、ありがとうございます!
ええ、おっしゃる通りですね。ご提案いただいた件について検討させていただきます。おそらく、そうしなかった理由があるのだと思いますが、現時点ではわかりません。
「いいね!」 2
chapoi
11
確認しましたが、必要な変更は私のデザイナーのスキル(バックエンドのデータベース関連の作業)をはるかに超えています。そのため、プラグインを使用する必要があると思われます。
検討できる選択肢としては、機能リクエスト を出して、より多くの関心が寄せられるかどうかを確認することです。
よろしくお願いします!
「いいね!」 2
このソリューションは素晴らしいので、改善にご協力いただければ幸いです。当社のプロフィールリンクは「https://www.domain.com/user/[USER-ID]/」の形式です。末尾のスラッシュが当社のソリューションを台無しにしています。URL書き換えを追加することはできますが、より良い解決策は、コードをより適応性の高いものにすることです。機能する実際のサイトへのリンクが欲しいです!
プラグインをテーマに変換しようとしましたが、そのCONVERT Discourse機能は機能していないようです。
機能を追加するようにアップデートしてもらえますか?
import Component from "@glimmer/component";
import { tracked } from "@glimmer/tracking";
import { service } from "@ember/service";
export default class ProfileCustomLink extends Component {
@service site;
@tracked customLinkUrl;
@tracked customLinkFieldId;
@tracked showCustomLink = false;
@tracked user = this.args.model.username;
@tracked userFields = this.args.model.user_fields;
constructor() {
super(...arguments);
if (settings.profile_custom_link_field) {
const siteUserFields = this.site.user_fields;
if (!siteUserFields) {
return;
}
const customLinkField = siteUserFields.filterBy(
"name",
settings.profile_custom_link_field
)[0];
if (!customLinkField) {
return;
}
this.customLinkFieldId = this.userFields[customLinkField.id];
if (!this.customLinkFieldId) {
return;
} else {
this.showCustomLink = true;
if (settings.profile_custom_link_prefix.includes("[CUSTOM-LINK-FIELD-ID]")) {
const url = settings.profile_custom_link_prefix.replace("[CUSTOM-LINK-FIELD-ID]", this.customLinkFieldId);
this.customLinkUrl = url;
} else {
const url = settings.profile_custom_link_prefix + this.customLinkFieldId;
this.customLinkUrl = url;
}
}
} else {
const url = settings.profile_custom_link_prefix + this.user;
this.customLinkUrl = url;
this.showCustomLink = true;
}
}
}
@Julian2 ここに機能リクエストを投稿しました。このトピックに関するあなたの投稿には気づきませんでした。
「いいね!」 2
RGJ
(Richard - Communiteq)
16
このコンポーネントは v2025.11 で動作を停止したようです
[THEME 2 'Custom Profile Link'] 非推奨通知: array.filterBy は非推奨の Ember ネイティブ配列拡張機能です。ネイティブ配列メソッドまたは TrackedArray を使用してください。 [Discourse 3.6.0.beta1-dev 以降非推奨] [deprecation id: discourse.native-array-extensions.filterBy]
「いいね!」 1
chapoi
18
私は2025.12を使用していますが、まだ動作しているようです。それは単なる非推奨の警告であり、エラーではないため、問題なく動作するはずです。
どのような状況が発生しているか、詳しく教えていただけますか?
「いいね!」 1
RGJ
(Richard - Communiteq)
19
実際に、実際の問題はユーザーエラーによって引き起こされたことが判明しました。
「いいね!」 3