Pålitliga WordPress-handledningar, när du behöver dem som mest.
Nybörjarguide till WordPress
WPB Cup
25 miljoner+
Webbplatser som använder våra plugins
16+
År av WordPress-erfarenhet
3000+
WordPress-handledningar
av experter

Hur du får information om inloggade användare i WordPress för personliga resultat

Nyligen visade vi dig hur du skapar en personlig upplevelse för dina användare genom att låta dem spara sina favoritposter i ett personligt bibliotek. Du kan ta personliga resultat till en annan nivå genom att använda deras förnamn på platser (dvs. välkomstskärmen). Lyckligtvis gör WordPress det väldigt enkelt att hämta information om den inloggade användaren. I den här artikeln visar vi dig hur du hämtar information som rör den för närvarande inloggade användaren.

Vi kommer att använda funktionen get_currentuserinfo(). Denna kan användas var som helst i ditt tema (header, footer, sidebar, page-template etc). För att detta ska fungera måste användaren vara inloggad. Så vi kommer att behöva använda det villkorliga uttalandet is_user_logged_in(). Exempelkod:

<?php if ( is_user_logged_in() ) { ?>
    <!-- text that logged in users will see -->
<?php } else {   ?>
    <!-- here is a paragraph that is shown to anyone not logged in -->

<p>By <a href="<?php bloginfo('url'); ?>/wp-register.php">registering</a>, you can save your favorite posts for future reference.</p>
<?php } ?>

Nu för de inloggade användarna kan vi visa ett anpassat meddelande till exempel, "Hej Syed, allt finns här, precis där du hoppades att det skulle vara". Ovanstående kod kommer att se ut ungefär så här:

<?php if ( is_user_logged_in() ) { ?>
    <!-- text that logged in users will see -->

<?php global $current_user; get_currentuserinfo(); ?>

<h1>Hi <?php echo $current_user->user_firstname; ?></h1>

<p>Everything is here, right where you hoped it would be :)</p>

<?php } else {   ?>
    <!-- here is a paragraph that is shown to anyone not logged in -->

<p>By <a href="<?php bloginfo('url'); ?>/wp-register.php">registering</a>, you can save your favorite posts for future reference.</p>
<?php } ?>

Den magiska koden som vi lade till ovan är $current_user->user_firstname; vilket fungerar eftersom anropet till get_currentuserinfo() placerar den aktuella användarens information i $current_user. Du kan använda liknande metoder för att hämta annan information om användaren, såsom deras inloggning, användar-ID, e-postadress, webbplats etc.

Här är ett exempel på användning av all information:

<?php global $current_user;
      get_currentuserinfo();

      echo 'Username: ' . $current_user->user_login . "
";
      echo 'User email: ' . $current_user->user_email . "
";
      echo 'User first name: ' . $current_user->user_firstname . "
";
      echo 'User last name: ' . $current_user->user_lastname . "
";
      echo 'User display name: ' . $current_user->display_name . "
";
      echo 'User ID: ' . $current_user->ID . "
";
?>

Hoppas detta hjälper. Genom att kombinera detta med möjligheten att lägga till favoritposter kan du enkelt skapa en personlig upplevelse.

Upplysning: Vårt innehåll stöds av läsarna. Det innebär att om du klickar på några av våra länkar kan vi tjäna en provision. Se hur WPBeginner finansieras, varför det är viktigt och hur du kan stödja oss. Här är vår redaktionella process.

Det ultimata WordPress-verktyget

Få GRATIS tillgång till vår verktygslåda - en samling WordPress-relaterade produkter och resurser som alla proffs bör ha!

Läsarnas interaktioner

9 CommentsLeave a Reply

  1. Hej Syed,
    Fantastisk sida.
    Den har hjälpt mig mycket med att förstå WP och redigera min egen sida.
    Min fråga är, när jag väl har infogat ovanstående funktion i mitt barns temas functions.php, hur skulle jag skapa en kortkod så att jag sedan kan visa denna användarinformation på en generell sida?

    Är kortkoder det bästa sättet att tillåta detta att visas på vilken sida jag vill.

    Till exempel, jag har en statisk sida som jag skulle vilja visa 'Välkommen {user_name}' och deras profilbild.

  2. Jag kan inget om php. Jag vill bara visa namnet på min kund i TOP-fältets navigering, och därifrån kan han komma åt sitt konto. Hur gör jag det.

  3. Vad händer om användaren inte är inloggad. Kan WordPress fortfarande skicka ett personligt e-postmeddelande med hans namn? och om ja, vad är variabeln och hur?

Lämna ett svar

Tack för att du väljer att lämna en kommentar. Tänk på att alla kommentarer modereras enligt vår kommentarspolicy, och din e-postadress kommer INTE att publiceras. Använd INTE nyckelord i namn fältet. Låt oss ha en personlig och meningsfull konversation.