• 09-09-2017, 10:16:52
    #1
    Üyeliği durduruldu
    merhaba arkadaşlar wp sitemde üyeye ait yazılar listeleniyor.

    Örneğin içerik sağlayıcısı the_aep kullanıcısı site.net/author/the_aep yazılarını listelediğinde bu kullanıcının rolunu nasıl orada gösterebilirim? Yani içerik sağlayıcı mı, editor mu, abone mi? gibisinden.
  • 09-09-2017, 11:38:14
    #2
    Sivas58 adlı üyeden alıntı: mesajı görüntüle
    merhaba arkadaşlar wp sitemde üyeye ait yazılar listeleniyor.

    Örneğin içerik sağlayıcısı the_aep kullanıcısı site.net/author/the_aep yazılarını listelediğinde bu kullanıcının rolunu nasıl orada gösterebilirim? Yani içerik sağlayıcı mı, editor mu, abone mi? gibisinden.
    Aşağıdaki kodu kullanabilirsiniz.
    <?php
    if(isset($_GET['author_name'])) :
        $curauth = get_userdatabylogin($author_name);
    else :
        $curauth = get_userdata(intval($author));
    endif;
    ?>
    Kullanıcı Rolü:<?php echo get_user_role($curauth->ID); ?>
  • 09-09-2017, 12:05:32
    #3
    Üyeliği durduruldu
    Solhan adlı üyeden alıntı: mesajı görüntüle
    Aşağıdaki kodu kullanabilirsiniz.
    <?php
    if(isset($_GET['author_name'])) :
        $curauth = get_userdatabylogin($author_name);
    else :
        $curauth = get_userdata(intval($author));
    endif;
    ?>
    Kullanıcı Rolü:<?php echo get_user_role($curauth->ID); ?>
    Ne yazık ki çalışmadı
  • 09-09-2017, 12:09:03
    #4
    Sivas58 adlı üyeden alıntı: mesajı görüntüle
    Ne yazık ki çalışmadı
    Hangi dosyasının içerisinde çalıştırdınız? Nasıl bir hata aldınız veya hiçbirşey yazmadı mı bilgi verirseniz yardımcı olmaya çalışayım.
  • 09-09-2017, 12:32:47
    #5
    Üyeliği durduruldu
    Solhan adlı üyeden alıntı: mesajı görüntüle
    Hangi dosyasının içerisinde çalıştırdınız? Nasıl bir hata aldınız veya hiçbirşey yazmadı mı bilgi verirseniz yardımcı olmaya çalışayım.

    Temanın author.php sayfasına title kısmı altına ekledim.

    error.log

    [09-Sep-2017 09:32:23 UTC] PHP Fatal error: Call to undefined function get_user_role() in /home/...../public_html/wp-content/themes/max-magazine/author.php on line 21
  • 09-09-2017, 14:41:16
    #6
    Sivas58 adlı üyeden alıntı: mesajı görüntüle
    Temanın author.php sayfasına title kısmı altına ekledim.

    error.log

    [09-Sep-2017 09:32:23 UTC] PHP Fatal error: Call to undefined function get_user_role() in /home/...../public_html/wp-content/themes/max-magazine/author.php on line 21
    Bu kodu deneyin lütfen:

    <?php
    if(isset($_GET['author_name']))
            $curauth = get_user_by('slug', $author_name);
    else
            $curauth = get_userdata(intval($author));
    $user = new WP_User( $curauth->ID );
    $user_roles = $user->roles; 
    echo $user_roles[0];
    ?>
  • 09-09-2017, 16:27:39
    #7
    Üyeliği durduruldu
    Solhan adlı üyeden alıntı: mesajı görüntüle
    Bu kodu deneyin lütfen:

    <?php
    if(isset($_GET['author_name']))
            $curauth = get_user_by('slug', $author_name);
    else
            $curauth = get_userdata(intval($author));
    $user = new WP_User( $curauth->ID );
    $user_roles = $user->roles; 
    echo $user_roles[0];
    ?>


    Evet bu güzel oldu fakat rol isimleri ingilizce çıkıyor. Mesela subscriber, contributor, administrator böyle çıkıyor. Oysa ki ben şöyle olsun istedim Editor, Içerik Sağlayıcı, Admin ve benzeri şekilde.
  • 09-09-2017, 22:01:30
    #8
    Sivas58 adlı üyeden alıntı: mesajı görüntüle
    Evet bu güzel oldu fakat rol isimleri ingilizce çıkıyor. Mesela subscriber, contributor, administrator böyle çıkıyor. Oysa ki ben şöyle olsun istedim Editor, Içerik Sağlayıcı, Admin ve benzeri şekilde.
    Ozaman bu kod işinizi görecektir.
    <?php
    if(isset($_GET['author_name']))
            $curauth = get_user_by('slug', $author_name);
    else
            $curauth = get_userdata(intval($author));
    $user = new WP_User( $curauth->ID );
    $user_roles = $user->roles; 
    switch ($user_roles[0]) {
    	case "administrator":
    	echo 'admin';
    	break;
    	case "author":
    	echo 'yazar';
    	break;
    	case "editor":
    	echo 'editör';
    	break;
    	case "contributor":
    	echo 'içerik sağlayıcısı';
    	break;
    	case "subscriber":
    	echo 'üye';
    	default: echo "Bilinmiyor";
    	}
    ?>
    Türkçe kısımları kafanıza göre düzenlersiniz gerekirse.
    Kolay gelsin