• 解決済 mituru0622

    (@mituru0622)


    バージョン
    Wordpress5.1.1
    プラグイン
    easy degital download
    simple membership
    テーマ
    degital download

    上記の仕様で有料会員制のECサイトを作成しています。
    テーマ:digital downloadのカスタマイズ画面で、ログイン・ログアウトボタンを設定できるように
    なっています。ログインボタンは表示されるのですが、ログインした後にログアウトボタンが表示されません。
    カスタマイズ画面の説明を見ていると、ログイン後にはログインボタンがダッシュボードボタンに切り替わって、ダッシュボードにアクセスするとダッシュボードボタンがログアウトボタンに切り替わるはずなのですが、ボタンが消えてしまいます。
    テーマや、プラグインのエディタはいじっていません。
    ログアウトボタンを表示させるにはどうすればいいのでしょうか。

    また、本当はダッシュボード画面経由したくありません。
    ログイン→トップ→ダッシュボード→ログアウトではなく、ログイン→商品ページ→ログアウト→トップ
    という流れにしたいのですが、こちらについてもどのように対処すればいいのかわかりません。

    easy digital downloadはテーマとの相性があるらしく、使えるテーマが限られているのでできればdigital downloadを使いたいと思っています。

    ざっくりとした質問で申し訳ないですが、よろしくお願いいたします。

    • このトピックはmituru0622が5年、 8ヶ月前に変更しました。

    ヘルプの必要なページ: [リンクを見るにはログイン]

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • こんにちは

    有効インストール数が少なくここでは回答を得にくいかもしれませんので、テーマのサポートページを利用された方がいいかもしれません。
    https://wordpress.org/support/theme/digital-download/

    ざっと見た感じでは下記のコードでできるかもしれませんが、使用したことがないテーマなのでよくわかりません。m(__)m

    子テーマの functions.php に、

    function digital_download_login_button() {
    	$class = '';
    	if( is_user_logged_in() ) {
    		$label = get_theme_mod( 'logout_label', __( 'Logout', 'digital-download' ) );
    		$link = wp_logout_url( get_permalink( $link ) );
    		$class = ' btn-logout';
    	} else {
    		$label = get_theme_mod( 'login_label', __( 'Login', 'digital-download' ) );
    		$link = get_permalink( get_theme_mod( 'login_page' ) );
    	}
    
    	if ( $label && $link ) echo '<a href="' . esc_url( $link ) . '" class="btn-login btn-primary' . esc_attr( $class ) . '">' . esc_html( $label ) . '</a>';
    }
    • この返信は5年、 8ヶ月前にishitakaが編集しました。
    トピック投稿者 mituru0622

    (@mituru0622)

    ishitaka様

    ありがとうございます!
    頂いたコードをテーマ(子テーマがなかったので)のfunction.phpに挿入したところ
    念願のログアウトボタンが表示されました!!

    ログアウトするときに表示されているページによってリダイレクト先が変わるので、
    そのあたりは自分で調べて何とかしてみます。
    本当にありがとうございます!
    助かりました!

    子テーマがなかったので

    digital_download_login_button() は親テーマ内で使用されているタグなので、親テーマの functions.php に追記する位置によっては動作しなくなる(エラーになる)場合があるので、子テーマを作成することをおすすめします。

    ログアウトするときに表示されているページによってリダイレクト先が変わるので、

    おっと失礼しました、間違えました。

    $link = wp_logout_url( get_permalink( $link ) );

    $link = wp_logout_url( get_the_permalink() );

    ですね。

    トピック投稿者 mituru0622

    (@mituru0622)

    ishitaka様

    返信が遅くなりまして申し訳ございません。
    追加の質問に対してもご回答いただきましてありがとうございます!

    まだ訂正できておりませんが、またわからないことがあればご相談すると思います。
    ありがとうございます!

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「ログアウトボタンが表示されない」には新たに返信することはできません。