1

管理者が wp-admin サイトで 2 段階の方法で資格情報を入力できるように、端末のようなエミュレーションを許可するライブラリが既に存在するかどうか誰かが知っていますか?

まず、ユーザー名を入力し、Enter キーを押し、パスワードを入力できるはずです。入力の有効性に基づいて、メッセージが表示され、リダイレクトが発生するはずです。

この点で、特定の端末スタイルをエミュレートする特定のjQueryライブラリを認識していますが、上記のニーズを達成する実用的なコードがあることを知りませんでした。経験が浅すぎて、プラグインが必要な機能を備えていることに気付かないかもしれません。あるいは、私の欲求を達成するための非常に異なる方法があり、誰かが私を助けてくれるかもしれません。

いずれにせよ、私を正しい方向に向けてくれてありがとう。

追加情報

私の目的は、ログイン ページを作成することだけです。ログイン プロセス後の wordpress 管理全体ではありません。これはグロテスクでしょう。このログイン画面がどのように機能し、どのように動作するかの非常に良い例は、このデモにあります。

4

2 に答える 2

0

実際、ログインのような端末だけが必要な場合(管理ではなく)、非常に簡単に実行できます

  1. 緑色のテキストで黒いページを作成する必要があります - login_init アクションを使用して標準の wp-login フォームを書き直すか、たとえば 'login' という名前の新しいページを作成してから、テンプレート フォルダーに page-login.php を作成します。
  2. のような標準のログインフォームをそこに置きます。

    <form name="loginform" id="loginform" action="" method="post">
    <p id="user">
        <label for="user_login">Username<br />
        <textarea type="text" name="log" id="user_login" class="input" value="" cols="80" tabindex="10" ></textarea></label>
    </p>
    <p id="password">
        <label for="user_pass">Password<br />
        <textarea type="password" name="pwd" id="user_pass" class="input" value="" cols="80" tabindex="20" ></textarea></label>
    </p>
    <p id="submit">
        <button name="wp-submit" id="wp-submit" class="button-primary" tabindex="100" >Login</button>
    </p>
    

    入力の代わりにテキストエリアを使用するだけです.ターミナルでは、タイプ=送信せずにテキストとボタンの行を増やすことができるため、入力をクリックしてもフォームは起動されません

  3. CSS または JavaScript を使用して、#user 以外のすべてのフィールドを非表示にします (JavaScript の非表示の方がアクセシビリティに優れています)。

  4. ラベルを緑のテキストにスタイル設定し、テキスト領域を黒の背景、境界線なし、緑のテキストにスタイル設定します。

  5. ユーザーが存在するかどうかをテストしたい場合は、パスワードをテストする前に、一部の端末のように (お勧めしません。セキュリティをダウングレードします)、パスワードが $_POST にないかどうかをテストし、ユーザー名のみを確認できます。ユーザーがEnterをクリックしたときにhttp://codex.wordpress.org/Function_Reference/username_exists関数を使用します(たとえば、ajaxを使用した非同期的な方法の方がよいでしょう)。

  6. 前回のチェックに問題がない場合 (ユーザーが存在する場合)、最初のテキストエリアを読み取り専用にし、#password のみを表示します。

  7. Enter をクリックした後、http://codex.wordpress.org/Function_Reference/user_pass_ok を確認、OK の場合は /wp-admin にリダイレクトします (wp_login.php への投稿を使用して資格情報を送信するだけです)。そうでない場合は、フォームを再度表示します (たとえば、事前に入力されたユーザーと ++ に設定された $counter を使用し、$counter >= 3 の場合、ユーザーをホームページに送信します。

于 2012-10-11T17:28:31.303 に答える