2017-06-22 135 views
1

第2個帖子在2天內lol。 我想知道是否有人可以幫忙。我想下面的代碼修改,這樣,如果客戶沒有登錄,文本顯示「登錄/註冊」,如果他們登錄,顯示「我的帳戶」顯示不同的信息登錄和註銷用戶

<div id="myaccount"> 
    <a href="wordpress/my-account"><img class="bottom" src="wp- 
content/themes/mt_theme/images/my_account_hover.png" alt="My 
Account"/> 
<img class="top" src="wp-content/themes/my_theme/images/my_account.png" 
alt="My Account"/> 
     <p class="icotext">My Account</p> 
    </a> 
</div> 

CSS:

#myaccount{ 
    position: relative; 
    margin: 0 auto; 
} 
#myaccount img { 
    position:absolute; 
    left:900px; 
    top: -20px; 
    Height: 50px !important; 
    width: 50px !important; 
} 
a:hover img.top { 
    opacity:0; 
} 
.icotext{ 
    position: absolute; 
    left: 890px; 
    top: 28px; 
    color: #000000 
} 
a:hover .icotext{ 
    font-weight: bold; 
    left: 888px; 
} 

我見過的

<?php 
if (is_user_logged_in()) { 
    echo 'Welcome, registered user!'; 
} else { 
    echo 'Welcome, visitor!'; 
} 
?> 

但是喜歡,我不知道該如何在同一個地方的回聲「」把我的文字是目前並添​​加相同的效果。

回答

0

可能這將有助於

<?php 
if (is_user_logged_in()) { 
    echo '<p class="icotext">'.'Welcome, registered user!'.'</p>'; 
} else { 
    echo '<p class="icotext">'.'Welcome, visitor!'.'</p>'; 
} 
?> 
0

我不是PHP大師,但你把代碼嵌入在標記本身。就像下面的代碼塊一樣,這樣你可以有條件地顯示你想要的東西。

<?php if(conditions): ?> 
... HTML CODE ... 
<?php endif; ?> 
0

您可以確定用戶是否已登錄或不在以前的代碼中,然後再插入正確的文本。例如:

<?php 
$loginText = ""; 
if (is_user_logged_in()) { 
    $loginText = "My Account"; 
} else { 
    $loginText = "Login/Register"; 
} 
?> 

<div id="myaccount"> 
    <a href="wordpress/my-account"><img class="bottom" src="wp- 
content/themes/mt_theme/images/my_account_hover.png" alt="My 
Account"/> 
<img class="top" src="wp-content/themes/my_theme/images/my_account.png" 
alt="My Account"/> 
     <p class="icotext"><?= $loginText ?></p> 
    </a> 
</div> 

<?= ?>語法可讓您在需要的位置插入變量。

+0

我現在不在我的電腦裏,但是當我下班回家時,我會試試這個,可以肯定的看到這個選項的邏輯。手指交叉:-) – PaulMcF87

+0

@ PaulMcF87,你能夠得到它的工作? –

2

撰寫您這樣的代碼:

<div id="myaccount"> 
    <a href="wordpress/my-account"><img class="bottom" src="wp- 
content/themes/mt_theme/images/my_account_hover.png" alt="My 
Account"/> 
<img class="top" src="wp-content/themes/my_theme/images/my_account.png" 
alt="My Account"/> 
     <p class="icotext"> 
<?php 
if (is_user_logged_in()) { 
    echo 'Welcome, registered user!'; 
} else { 
    echo 'Welcome, visitor!'; 
} 
?> 
     </p> 
    </a> 
</div> 

或者你可以寫這樣的代碼:

<p class="icotext"><?php echo (is_user_logged_in()?'Your online':'Hi visitor') ?></p> 
0
<div id="myaccount"> 
    <a href="wordpress/my-account"><img class="bottom" src="wp- 
content/themes/mt_theme/images/my_account_hover.png" alt="My 
Account"/> 
<img class="top" src="wp-content/themes/my_theme/images/my_account.png" 
alt="My Account"/> 
     <p class="icotext"> 
     <?php 
      if (is_user_logged_in()) { 
      echo 'login/register'; 
      } else { 
      echo 'My Account'; 
      } 
     ?> 
     </p> 
    </a> 
</div> 
0

首先檢查或不用戶登錄的情況。要做到這一點,你可以

設置會話登錄和檢查Session_Login布爾

現在來檢查的情況下它運行

if($SESSION_LOGIN){ 
     echo "<p class = "icotext">"."Welcome , registered user"."</p>"; 
    }else{ 
     echo "<p class = "icotext">"."Welcome ,visitor"."</p>"; 
    } 

確保首先啓動會議。

0

您應該在您的html文件中創建一個代碼塊,它會根據用戶的當前狀態(登錄/退出)返回當前消息。那麼,這不是解決這個「問題」的最好方法,但這是wordpress的方式。我們舉一個例子:

<?php 
    if(isset($_SESSION['user_token'])){ 
?> 

<div id="myaccount"> 
<a href="wordpress/my-account"><img class="bottom" src="wp- 
    content/themes/mt_theme/images/my_account_hover.png" alt="My 
     Account"/> 
<img class="top" src="wp-content/themes/my_theme/images/my_account.png" 
alt="My Account"/> 
    <p class="icotext">My Account</p> 
</a> 
</div> 

<?php } else { echo "Logged out user message here"; } ?> 

這是您的案例中最好的方法,因爲您使用的是wordpress。