Welcome !! Now 2008.07.25 16:21 (JST)

WebLogin 1.0

[ スニペット ]

WebLogin は、ログインフォームを挿入し、Web ユーザによるログインログアウトを可能にするスニペットです。パスワードリクエスト機能もあります。

参照ページ:特になし

このドキュメントの更新履歴

2007.11.11 ... サンプルへのリンクを追加しました

テスト環境

  • サーバ:さくらインターネット  
    • PHP 4.4.4
    • MYSQL 4.0.27
  • MODX:0.9.5
  • WebLogin 1.0

基本的な書式

[!WebLogin!]

パラメータ

loginhomeid

ログイン後に表示するページをドキュメントIDで指定します。カンマで区切って複数指定可能です。ログインユーザーは、指定されたドキュメントリストの中で、最初に見つかった自身がアクセス権限を持つドキュメントにリダイレクトされます。デフォルト「カレントドキュメント」。

logouthomeid

ログアウト語に表示するドキュメントをIDで指定します。デフォルト「カレントドキュメント」

pwdreqid

パスワードリクエストから「送信」した後に表示するドキュメントをIDで指定します。ユーザにはは、「パスワード変更のためのリンク」、及び、「新パスワード」が記載されたメールを送信します

pwdactid

ユーザがメールに記載された「パスワード変更のためのリンク」へアクセスしたとき(つまり、MODxが発行した新パスワードが有効になったとき)に、表示するドキュメントをIDで指定します。

logintext

ログインボタンに表示するテキストを指定します。デフォルト「Login」

logouttext

ログアウトするためのリンクテキストを指定します。デフォルト「logqut」

tpl

ログインフォーム用テンプレートをチャンク名またはドキュメントIDで指定します

テンプレートをカスタマイズする際の注意点

WebLogin 用のテンプレートには、以下の3つのセクションがあります。

  • ログインフォームセクション… <!-- login form section-->
  • ログアウトリンクセクション… <!-- log out hyperlink section -->
  • パスワードリマインダセクション… <!-- Password reminder form section -->

chunk.weblogin.tpl がひな形になります。参考にしてください

パスワードリクエストについて

Web ユーザによるパスワード変更の流れ

ログインフォームから「パスワードリクエスト」へのリンクをクリックすると、パスワードリクエストブロックが表示されます。ユーザはここで、メールアドレスを入力し「送信」します。

入力されたメールアドレスがデータペースにないと「そういうメールアドレスはありません」と、メッセージが表示されメールは送信されません。

入力されたメールアドレスがデータベースに見つかると、そのアドレスに「パスワード変更のためのリンク」、及び、「新パスワード」を表記したメールをユーザに送信します。

ユーザがこの「パスワード変更のためのリンク」にアクセスしない限り、MODxから発行された新パスワードは有効になりません。

従って、「パスワード変更のためのリンク」へアクセスする前に、ユーザがパスワードを思い出せば、MODxの発行した新パスワードは無視して良いことになります。

逆に言えば、MODxが発行した新パスワードを有効にするためには、「パスワード変更のためのリンク」へアクセスしなければなりません。

送信されるメールの内容

送信されるメールの内容は、「ツール」「MODx設定」>「ウェブリクエストメール」の内容になります。

問題点

上記のメールの中で、2バイト文字を利用すると、OEで受信したときに文字化けするかもしれません。OE側で、受信したメールのエンコードを「utf-8」にすると読めるようになります。

問題点

「入力情報記憶(remember me)」が機能しません

PHxを使う

「tpl」の中でPHxを利用できます。「ログアウトリンクセクション」で使うと良いでしょう。

[+phx:userinfo=`fullname`+]

ユーザーフルネームを表示します。

複数のユーザ情報を表示したい場合は、「UserInfo」スニペットを利用した方が良いかも知れません。

サンプル

△ページトップ