表題のとおり、サインインしている人には「編集リンク」。サインインしてなかったら「会員登録」などの振り分けして表示させるMTタグというのが用意されています。
MTIfLoggedIn というもの。
参考:MTIfLoggedIn | テンプレートタグリファレンス
しかしながら、何故か使い方がネットで検索しても全然でてきません。テンプレートタグリファレンスの説明文を読んでも、私には理解できませんでした。試しに色々試行錯誤してみても思う通りに動いてくれない。
挙動としては、出てくるソースを見ると style="display: none;" をどちらにも付与していることから、JSでdisplay:noneを消去して見えるようにするという感じなのでしょうが、いかんせん使い方の説明がないので上手く動いてくれませんでした。
なので僕は代替策として、jsでサインインしているかをチェックさせて、表示させるようにしてみました。
mt.jsを読み込ませているページで、サインインしていない人への注意文を表示させたい箇所に以下のようなスクリプトを埋め込みます。
content = '' の箇所は適宜変更してください。
<div id="signin_check"></div> <script type="text/javascript"> /* <![CDATA[ */ function signInCheck(u) { var el = document.getElementById('signin_check'); var content = ''; if (!el) return; u = mtGetUser(); if (!(u && u.name)) { content = '<p>「<$mt:getVar name="displayName"$>」さんをフォローするには<a href="javascript:void(0)" onclick="return mtSignInOnClick(\'register_induction\')">サインイン</a>してください。</p>'; content += '<p>アカウントがない場合は、<a href="/mt/mt-cp.cgi?__mode=register&blog_id=1">会員登録</a>してください。</p>'; } el.innerHTML = content; } signInCheck(); /* ]]> */ </script>