it-swarm.com.de

Unterschiedlicher Fußzeilen-Shortcode für angemeldete Benutzer anzeigen

Ich habe einen Shortcode, der einen Inhaltsblock anzeigt. Gibt es eine Möglichkeit, verschiedene HTML-Dateien anzuzeigen, je nachdem, ob der Benutzer angemeldet ist oder nicht? Unten ist, was ich bisher habe.

function footer_shortcode(){
    $siteURL = site_url();
    $logoutURL = wp_logout_url(home_url());

    echo '
        <div class="signin_container"> 
            <h4 class="signin_footer_head">Log In To My Account</h4>
            <a href="'.$siteURL.'/login/">Log In</a>
            <a href="'.$siteURL.'/register/">Sign Up</a>
        </div>
    ';  
}

add_shortcode('footerShortcode', 'footer_shortcode');
1
Jon

Sie können ein bedingtes Tag verwenden, um zu überprüfen, ob der Benutzer angemeldet ist. Bedingungen sind in W sehr häufig. Ich würde vorschlagen, dass Sie diese Seite lesen.

Hier ist ein Beispiel.

function footer_shortcode(){
    if (is_user_logged_in()){
        echo '
            // Logged In Content
        ';
    }else{
        echo '
            // Logged Out Content
        ';
    }       
}

add_shortcode('footerShortcode', 'footer_shortcode');
1
RiddleMeThis

Sie suchen nach is_user_logged_in()

Siehe: https://developer.wordpress.org/reference/functions/is_user_logged_in/

Beispiel:

function footer_shortcode(){
    $siteURL = site_url();
    $logoutURL = wp_logout_url(home_url());

   if(is_user_logged_in()) { // user is logged in
      echo '
        <div class="signin_container"> 
            <h4 class="signin_footer_head">Account Info</h4>
        </div>
    '; 
   }

   else { //user is not logged in
      echo '
        <div class="signin_container"> 
            <h4 class="signin_footer_head">Log In To My Account</h4>
            <a href="'.$siteURL.'/login/">Log In</a>
            <a href="'.$siteURL.'/register/">Sign Up</a>
        </div>
    '; 
   } 
}

add_shortcode('footerShortcode', 'footer_shortcode');

Edit: Ich sehe RiddleMeThis schlug mich bis zum Anschlag

1
Liam Stewart