ああ、そうですね。「ユーザー」の部分を見落としていました
すみません。
ユーザー設定を使用するのと大差ありません。ユーザーを参照するように最初の2つの定数を変更するだけです。
// ユーザーとターゲット変数を設定します。
const user = api.getCurrentUser()
const target = user?.user_option?.external_links_in_new_tab ? "_blank" : ""
そして、他のすべては同じになります。
これがコアのように機能する場合、ユーザーが存在するかどうかを確認し、存在しない場合はサイト設定にフォールバックします。
// ユーザー、siteSettings、およびターゲット変数を設定します。
const user = api.getCurrentUser()
const siteSettings = api.container.lookup('site-settings:main');
let target = siteSettings.default_other_external_links_in_new_tab ? "_blank" : "";
if (user) { // ユーザーが存在する場合、ターゲットをユーザーオプションに基づいて設定します
target = user.user_option?.external_links_in_new_tab ? "_blank" : ""
}
// リンクが作成されるifステートメントを変更して、ターゲット変数を使用します。
if (userFields && userFields[userFieldId]) {
const url = "http://myawesomewebsite.com/user/" + userFields[userFieldId];
const link = `<a href="${url}" target="${target}">${url}</a>`;
return Ember.Object.create({ link, name: externalUserIdField.get('name') });
} else {
return null;
}