2016-04-07 16 views
1

Sağlanan herhangi bir yardım için şimdiden teşekkür ederim ve soruyu gözden geçirme zamanını ayırın. Temelde sadece bir kez giriş yaptığınızda, adınızı ve avatarınızı sağ üst köşede görüyorsunuz ve adınızın üzerine geldiğinizde "Profili Düzenle" ve "Oturumu Kapat" bağlantılarının göründüğü bir Wordpress sitem var. Tek istediğim, giriş yapmadiginizda ayni yerde olmasi için bir "Giriş" baglantisidir. (Bu, kenar çubuğuna bir giris simdi koymak zorunda kalmama neden olur).Şartlı Oturum Açma Bağlantısı - Wordpress - PHP

Belirli bir kod parçasını barındıran ve kullanıcı menüsünün bulunduğu yeri bulmak için PHP dosyasını izleyebildim. Hangi kod parçasının ekleyebileceğinden emin değilim, böylece mysite.com/login/ adresine giden bir giriş bağlantısı var. İşte geçerli kod:

      <?php } 
         //user menu 
          $user_show_info = ot_get_option('user_show_info'); 
          if (is_user_logged_in() && $user_show_info =='1') { 
          $current_user = wp_get_current_user(); 
          $link = get_edit_user_link($current_user->ID); 
          ?> 
           <li class="menu-item current_us"> 
           <?php 
           echo '<a class="account_cr" href="#">'.$current_user->user_login; 
           echo get_avatar($current_user->ID, '25').'</a>'; 
           ?> 
           <ul class="sub-menu"> 
            <li class="menu-item"><a href="<?php echo $link; ?>"><?php _e('Edit Profile','cactusthemes') ?></a></li> 
            <li class="menu-item"><a href="<?php echo wp_logout_url(get_permalink()); ?>"><?php _e('Logout','cactusthemes') ?></a></li> 

İşte size ne demek istediğimi göstermek için bir resim. En oturumu kapalıysa, alt giriş yaptı.

http://6chill.com/loli.jpg

teşekkürler tekrar sağlayabileceğimiz ve daha fazla ayrıntı gerekiyorsa sadece bana bildirin ve ben bunları sağlamak için elimden geleni yapacağım herhangi bir yardım için .

Herkese cevap verdiğiniz için teşekkürler :) İstenildiği gibi, hiçbir şeyin kalmaması için daha fazla kod var.

<?php } 
         //user menu 
          $user_show_info = ot_get_option('user_show_info'); 
          if (is_user_logged_in() && $user_show_info =='1') { 
          $current_user = wp_get_current_user(); 
          $link = get_edit_user_link($current_user->ID); 
          ?> 
           <li class="menu-item current_us"> 
           <?php 
           echo '<a class="account_cr" href="#">'.$current_user->user_login; 
           echo get_avatar($current_user->ID, '25').'</a>'; 
           ?> 
           <ul class="sub-menu"> 
            <li class="menu-item"><a href="<?php echo $link; ?>"><?php _e('Edit Profile','cactusthemes') ?></a></li> 
            <li class="menu-item"><a href="<?php echo wp_logout_url(get_permalink()); ?>"><?php _e('Logout','cactusthemes') ?></a></li> 

           </ul> 
           </li> 
         <?php }?> 
         <?php //submit menu 
         if(ot_get_option('user_submit',1)) { 
          $text_bt_submit = ot_get_option('text_bt_submit'); 
          if($text_bt_submit==''){ $text_bt_submit = 'Submit Video';} 
          if(ot_get_option('only_user_submit',1)){ 
           if(is_user_logged_in()){?> 
           <li class="menu-item"><a class="" href="#" data-toggle="modal" data-target="#submitModal"><?php _e($text_bt_submit,'cactusthemes'); ?></a></li> 
          <?php } 
          } else{ 
          ?> 
           <li class="menu-item"><a class="" href="#" data-toggle="modal" data-target="#submitModal"><?php _e($text_bt_submit,'cactusthemes'); ?></a></li> 
          <?php 
          } 
         } ?> 

Umarım aradığınız şey budur. "// submit menu" yorumunu gördüğünüz yer, "Video Gönder" düğmesinin oynatıldığı yerdir. Tekrar çok teşekkürler çocuklar, harikasınız!

+0

Gönderdiğiniz kod, ** if loop ** öğesinin tamamını içermiyorsa, lütfen tüm if döngüsünü sağlayın, böylece size bir yanıt verebilirim. –

+0

Güncelleme, teşekkürler efendim – CaptainPlanet

cevap

0

bu kodu deneyin, bu size

<?php 
if (is_user_logged_in()) 
{ ?> 

    <a href="<?php echo wp_logout_url(home_url()); ?>">LOGOUT</a> 

    <!-- add another action as per your requirement--> 

<?php } else 
{ ?> 
    <a class="login" href="<?php echo site_url(); ?>/login/">LOGIN</a> 
     <! -- give link to your login page --> 
<?php } 

put başlık dosyasında bu kod yardımcı olacağına inanıyoruz.

0

Kullanıcı oturum açıp açılmadığını denetleyen if ifadesine başka bir tane eklemeniz gerekir. Oturum açılmadıysa, oturum açma sayfasına bir bağlantı çıkarırsınız. Oturum açma bağlantısı için CSS'yi veya menü öğesindeki sınıfları değiştirmeniz gerekebilir.

<?php } 

$user_show_info = ot_get_option('user_show_info'); 
if (is_user_logged_in() && $user_show_info =='1') { 
    $current_user = wp_get_current_user(); 
    $link = get_edit_user_link($current_user->ID); 
    ?> 
     <li class="menu-item current_us"> 
     <?php 
     echo '<a class="account_cr" href="#">'.$current_user->user_login; 
     echo get_avatar($current_user->ID, '25').'</a>'; 
     ?> 
     <ul class="sub-menu"> 
      <li class="menu-item"><a href="<?php echo $link; ?>"><?php _e('Edit Profile','cactusthemes') ?></a></li> 
      <li class="menu-item"><a href="<?php echo wp_logout_url(get_permalink()); ?>"><?php _e('Logout','cactusthemes') ?></a></li> 

     </ul> 
     </li> 
<?php } else { ?> 
    <li class="menu-item current_us"> 
     <a href="<?php echo wp_login_url(); ?>">Login</a> 
    </li> 

<?php } ?> 
<?php //submit menu 
if(ot_get_option('user_submit',1)) { 
    $text_bt_submit = ot_get_option('text_bt_submit'); 
    if($text_bt_submit==''){ $text_bt_submit = 'Submit Video';} 
    if(ot_get_option('only_user_submit',1)){ 
     if(is_user_logged_in()){?> 
     <li class="menu-item"><a class="" href="#" data-toggle="modal" data-target="#submitModal"><?php _e($text_bt_submit,'cactusthemes'); ?></a></li> 
    <?php } 
    } else{ 
    ?> 
     <li class="menu-item"><a class="" href="#" data-toggle="modal" data-target="#submitModal"><?php _e($text_bt_submit,'cactusthemes'); ?></a></li> 
    <?php 
    } 
} ?> 
+0

Çok teşekkür ederim. Nedenini bilmiyorum ama nedense bu ve diğer öneriler sayfayı kırıyor - her seferinde boş, beyaz bir sayfa olarak geliyor. Uygulamamın bir yolu olup olmadığından emin değilim ya da başkalarının görmesi için yeterli kodu içermiyorsam emin değilim. İleriye gittim ve dahil ettiğim bir şey olması durumunda http://pastebin.com/YHZy2wLw adresindeki PHP dosyasının tamamını ekledim. Baktığım belirli bir alanı bulmak için, sadece bu sayfayı // usermenu için arayabilirsiniz. Zaman ayırdığın için çok teşekkürler. – CaptainPlanet

+0

önceki yorumunu dikkate almayın, hala Login ı don

  • siteyi kırmadan Bu kod parçasını uygulamak başardı gizli modda check in yaparken herhangi bir giriş bağlantısını görmüyorum:/Emin değilim neden – CaptainPlanet

  • +0

    Sayfanıza bir bağlantı sağlayabilir misiniz? – Jrod