0

クリックするとログインと登録フォームが表示されるjQueryでslideDown効果を作成したカスタムWordpressテーマで作業しています。ユーザーがログインまたは登録するときにこのページを離れず、最初にスライドする div が上にスライドし、ボタンのテキストがログインしているユーザーの名前に変わるエクスペリエンスを作成しようとしています。

LOGIN をクリックした瞬間、div が上にスライドしますが、システムがログインしているユーザーを認識していないようです。

 <script type="text/javascript">
    $(document).ready(function(){

    $(".btn-slide").click(function(){
    $("#slide-panel").slideToggle("slow");

   });

 });
 </script>
 <script type="text/javascript">    
    $('.error').hide();  
        $(".button").click(function() {
      // validate and process form here
        var name = $("input#log").val();  
            if (name == "") {  
              $("label#error").show();  
              $("input#log").focus();  
              return false;  
            }

        var dataString = $("#wp_login_form").serialize();
        //alert (dataString);return false;  

        $.ajax({
            type: "POST",
            url: "<?php echo "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; ?>",  
            data: dataString,
            success: function() {
                $("#slide-panel").slideToggle("slow");
                $(".slide").html("Hello");
            }
        });
        return false;
    });
 </script>

 <?php wp_head(); ?>

 </head>

 <body <?php body_class(); ?>>

 <div id="slide-panel"><!--SLIDE PANEL STARTS-->
    <div class="loginform">
        <div class="loginformdetails equalheight"><h2>Member Login</h2>
            <div class="formrow">
                <label class="error" id="error">Please complete the entire form.</label>
            </div>
            <?php 
            global $user_ID;

            if($_POST){
            //We shall SQL escape all inputs
            $username = $wpdb->escape($_REQUEST['log']);
            $password = $wpdb->escape($_REQUEST['pwd']);
            $remember = $wpdb->escape($_REQUEST['rememberme']);

            if($remember) $remember = "true";
            else $remember = "false";
            $login_data = array();
            $login_data['user_login'] = $username;
            $login_data['user_password'] = $password;
            $login_data['remember'] = $remember;
            $user_verify = wp_signon( $login_data, false ); 

            if ( is_wp_error($user_verify) ) {
                echo $user_verify->get_error_message();  
                exit();
                } else {    
                            echo "<script type='text/javascript'>window.location='". get_bloginfo('url') ."'</script>";
                            $user_info = get_userdata($user_ID);
                            ?>
                            <div class="loginform">
                                <h2>Control Panel</h2><ul>
                                <li><a href="<?php echo get_option('home'); ?>/wp-admin/">Dashboard</a></li> |
                                <li><a href="<?php echo wp_logout_url( get_bloginfo('url') ); ?>" title="Logout">Logout</a></li></ul>
                            </div><!--loginform ends-->
                            <?php exit();
                        }
                } else {
                ?> 
                    <form id="wp_login_form" action="" method="post">
                    <div class="formrow">
                        <div class="formLabel"><label for="log">Email  </label></div>
                        <div class="forminput"><input type="text" name="log" id="log" value="<?php echo wp_specialchars(stripslashes($user_login), 1) ?>" size="25" /></div>
                    </div>
                    <div class="formrow">
                        <div class="formLabel"><label for="pwd">Password  </label></div>
                        <div class="forminput"><input type="password" name="pwd" id="pwd" size="25" /></div>
                    </div>
                    <div class="formrow lowercase">
                        <label for="rememberme">
                        <input name="rememberme" id="rememberme" type="checkbox" checked="checked" value="forever" /> Remember me</label>
                    </div>
                    <div class="formrow">
                        <div class="formLabel"><input type="submit" name="submit" value="Login" class="button" /></div>
                    </div>
                    <div class="formrow">
                        <div class="forminput lowercase"><a href="<?php echo get_option('home'); ?>/wp-login.php?action=lostpassword">Forgot password?</a></div>
                    </div>    
                    </form>
                    <?php } ?>
        </div>
    </div><!--loginform ends-->
4

2 に答える 2

0

このプラグインを使用することをお勧めします: http://wordpress.org/extend/plugins/simplemodal-login/

それはあなたの問題を解決し、2 つのスタイルを持っています。チェックしてみてください。

于 2013-02-26T07:04:31.833 に答える