Yahoo! JAPAN OpenID を省略表示する

Yahoo! JAPAN OpenID を省略表示する

Posted at September 15,2009 1:55 AM
Tag:[Customize, MovableType, Yahoo]

Movable Type の「最近のコメント」に、Yahoo! JAPAN OpenID を省略表示するカスタマイズです。

1.Yahoo OpenID と問題点

Yahoo OpenID は次のようになっています。

https://me.yahoo.co.jp/a/<34文字のパラメータ>

https://me.yahoo.co.jp/a/HoGeho6eHogeho8geHOgEHoGehOg#12345

Movable Type に、Yahoo Japan ID による認証コメントを投稿した場合、「最近のコメント」にコメント投稿者の名前には、上記の Yahoo OpenID がそのまま表示されます。正しい内容を表示しているという意味では問題はないのですが、率直に言うと、長くて見にくいです。といっても、コメンターの方が悪い訳ではありません。

ということで、表示内容を短く加工するカスタマイズを紹介します。加工前の Yahoo! JAPAN OpenID は、冒頭に挙げた例を使います。

https://me.yahoo.co.jp/a/HoGeho6eHogeho8geHOgEHoGehOg#12345

2.34文字のパラメータだけを表示

Yahoo! JAPAN OpenID の後方にある34文字のパラメータを表示するには、MTCommentAuthor タグに regex_replace タグを組み合わせます。

<mt:CommentAuthor encode_html="1" regex_replace="/https:\/\/me\.yahoo\.co\.jp\/a\/(.*)/","$1" />

加工後の表示

HoGeho6eHogeho8geHOgEHoGehOg#12345

3.「yahoo」と最後の「#xxxxx」だけを抜き出して表示

Yahoo! JAPAN OpenID の「yahoo」という文字と、最後の「#xxxxx」だけを抜き出して表示するには、先ほどと同様、MTCommentAuthor タグに regex_replace タグを組み合わせます。

<mt:CommentAuthor encode_html="1" regex_replace="/https:\/\/me\.(yahoo)\.co\.jp\/a\/.*(#.*)/","$1$2" />

加工後の表示

yahoo#12345
関連記事
トラックバックURL


コメント

いつもお世話になっております。
mt:CommentAuthorLinkの場合はどのようにしてmt:CommentAuthorの場合と同じようにYahoo OpenIDを短くできるでしょうか。
よろしくお願いいたします。

[1] Posted by Mwave : October 10, 2010 7:12 PM

>Mwaveさん
こんばんは。
ご返事遅くなってすいません。
以下の記事をエントリーしましたのでご確認ください。

Yahoo! JAPAN OpenID を省略表示する(その2)

それではよろしくお願い致します。

[2] Posted by yujiro logo : October 14, 2010 12:25 AM

yujiroさん
早速ご教示いただき、ありがとうございます。
記事を拝見させていただきます。

[3] Posted by Mwave : October 14, 2010 3:45 AM
コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字イタリックアンダーラインハイパーリンク引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)