[解決済み] サイドバーにログインフォームを設置

2013 年 3 月 14 日

ホーム フォーラム 使い方全般 [解決済み] サイドバーにログインフォームを設置

このトピックには6件の返信が含まれ、2人の参加者がいます。4 年、 7 ヶ月前 takamaer さんが最後の更新を行いました。

7件の投稿を表示中 - 1 - 7件目 (全7件中)
  • 投稿者
    投稿
  • #52396

    takamaer
    参加者

    サイドバーにログインフォームを設置しようと考えております。

    ログアウト状態だとフォームが表示され、ログイン状態の場合はアカウント名等を表示させようと思っております。

    phpの知識がまだ浅いため自信がありません。以下のコードで問題ないでしょうか。

    //////////////////////////////////

    <?php if(usces_is_login()) : ?>

    <div class=”loginWrap”>

    <div class=”sLoginForm”>

    <p>こんにちは、 <?php if(usces_is_login()){echo usces_the_member_name().’ 様’;} ?></p>

    <p> >>“>会員情報の閲覧</p>

    <p> >><?php echo usces_loginout(); ?></p>

    </div>

    </div>

    <?php else : ?>

    <div class=”loginWrap”>

    <div class=”loginTitle”></div>

    <div class=”sLoginForm”>

    <div class=”error_message”><?php usces_error_message(); ?></div>

    <div class=”loginbox”>

    <form name=”loginform” id=”loginform” action=”<?php echo apply_filters(‘usces_filter_login_form_action’, USCES_MEMBER_URL); ?>” method=”post”>

    <p>

    <label>

    <?php _e(‘e-mail adress’, ‘usces’); ?>

    <input type=”text” name=”loginmail” id=”loginmail” class=”loginmail” value=”<?php echo esc_attr(usces_remembername(‘return’)); ?>” size=”20″ />

    </label>

    </p>

    <p>

    <label>

    <?php _e(‘password’, ‘usces’); ?>

    <input type=”password” name=”loginpass” id=”loginpass” class=”loginpass” size=”20″ />

    </label>

    </p>

    <p class=”forgetmenot”>

    <label>

    <input name=”rememberme” type=”checkbox” id=”rememberme” value=”forever” /> <?php _e(‘memorize login information’, ‘usces’); ?>

    </label>

    </p>

    <p class=”submit”>

    <?php usces_login_button(); ?>

    </p>

    <?php do_action(‘usces_action_login_page_inform’); ?>

    </form>

    <p id=”nav”>

    ” title=”<?php _e(‘Did you forget your password?’, ‘usces’); ?>”>

    <?php _e(‘パスワードをお忘れの方はこちら’, ‘usces’); ?>

    </p>

    <p id=”nav”>

    <?php if ( ! usces_is_login() ) : ?>

    ” title=”<?php _e(‘New enrollment for membership.’, ‘usces’); ?>”>

    <?php _e(‘New enrollment for membership.’, ‘usces’); ?>

    <?php endif; ?>

    </p>

    </div>

    </div>

    </div>

    <?php endif ; ?>

    //////////////////////////////////

    よろしくお願いします。

    #66312

    komokomo
    参加者

    テーマは何をお使いですか?

    ウィジェットに対応していないのでしょうか?

    外観→ウィジェットの設定でログインフォームを設置できます。

    #66313

    takamaer
    参加者

    >>komokomo 様

    お早い返事ありがとうございます。

    当方、管理者権限を持っていないのでウィジェット設定等ができない身でございます。

    権限を持っている方へウィジェットの操作を依頼したところ恐らく特別な理由など無いと思いますが断られてしまいました。

    よって今回のような手打ちでの実装をすることとなりました。

    wordpress自体の扱いも日が浅く、テーマが何かもイマイチ把握できていない次第です。

    ご面倒な内容で申し訳ございません。

    #66314

    komokomo
    参加者

    ???

    ウィジェットは触れなくてファイルは触れるのですね・・・

    提示したコードが正しければphp以前の問題だと思います。

    welcart本体は入手できると思いますので

    フォルダwidgetsのusces_login.phpを参照して頂くのが一番簡単かと思います。

    26行目辺りから59行目辺りまで参照してください。

    最後の

    echo apply_filters('usces_filter_login_widget', $loginbox, $args, $instance);

    echo $loginbox;
    に変更してください。

    これでログインフォームは表示されます。

    #66315

    takamaer
    参加者

    >>komokomo 様

    FTPのIDやパスは頂いているため、ファイルはFTP上から編集しております。

    また、フォーム自体の実装には成功しております。

    ログイン前とログイン後で異なる表示をさせるコードは以上ので問題は無いか、といった質問になります。

    わかりづらく申し訳ございません。

    以前似たようなphpコードを記述してサーバーを落としてしまった事例があり、今回のコードで動作させても大丈夫なのか不安で投稿させていただいた次第です。

    お返事お待ちしております。

    #66316

    komokomo
    参加者

    >>フォーム自体の実装には成功しております

    実装されているのなら試しては?

    >>ログイン前とログイン後で異なる表示をさせるコードは以上ので問題は無いか

    特に問題はないと思います。

    問題ないと思いますがチラホラ間違えや不要なものはあります。

    お教えしたusces_login.phpで十分対応できます。

    自作した関数が不安なのでしたらusces_login.phpで良いと思うのですが・・・

    #66317

    takamaer
    参加者

    >>komokomo 様

    お返事ありがとうございます。

    フォームの方はkomokomo様のを参考にした結果、無事実装出来ました。

    私の理解が追いつかずお手数をおかけしたことお詫び申し上げます。

    このたびはありがとうございます。

7件の投稿を表示中 - 1 - 7件目 (全7件中)

このトピックに返信するにはログインが必要です。