MTAppCreateLink

画面名(ユーザーダッシュボード/ダッシュボード)から対応する管理画面の URL 文字列を生成して返す静的メソッド。該当しない場合は空文字を返す。MTAppUserMenuWidget のメニュー URL 生成などに使う。

指定した画面名に対応する管理画面の URL 文字列を生成して返す静的メソッドです。ダッシュボードへのリンクを作りたいときなどに使います(MTAppUserMenuWidget のメニュー項目の URL 生成などで利用します)。

構文

const url = $.MTAppCreateLink(options);

静的メソッド($.MTAppCreateLink)です。戻り値の URL 文字列を受け取って使います。

パラメータ

options {Object} — 以下のプロパティを持ちます。

プロパティ既定値説明
titlestring''生成対象の画面名。'ユーザーダッシュボード' または 'ダッシュボード'(必須)
blog_idnumber0'ダッシュボード' の URL に付与するサイト/ブログ ID
idnumber0予約(現状未使用)

戻り値

{string} — 生成した URL。title がいずれにも該当しない場合は空文字('')。

使用例

// ユーザーダッシュボード(サイト横断)の URL
const userUrl = $.MTAppCreateLink({ title: 'ユーザーダッシュボード' });
// → "<CMSスクリプト>?__mode=dashboard"

// 特定サイトのダッシュボードの URL
const siteUrl = $.MTAppCreateLink({ title: 'ダッシュボード', blog_id: 2 });
// → "<CMSスクリプト>?__mode=dashboard&blog_id=2"

user.js での記述例

user.js(「デザイン → user.js を編集」)に書く場合は、mtappVars.screen_id で画面を判定して呼び出します。

(function ($) {
    if (typeof mtappVars !== 'object') return;
    if (mtappVars.screen_id === 'edit-entry') {
        const userUrl = $.MTAppCreateLink({ title: 'ユーザーダッシュボード' });
    }
})(jQuery);

補足

  • URL の先頭は Movable Type の CMS スクリプト URI(CMSScriptURI、例 /cms/mt/mt.cgi)になります。
  • title画面名の文字列で振り分けます。'ユーザーダッシュボード' / 'ダッシュボード' 以外を渡すと空文字を返します。
  • このメソッド自体は URL 文字列を返すだけで、画面遷移や DOM の操作は行いません。MTAppUserMenuWidget などにリンク先として渡して使います。

関連

  • MTAppUserMenuWidget — トップバーにメニュー/ウィジェットを追加する(メニュー項目の URL に本メソッドの戻り値を使える)。