• 27-08-2012, 21:31:06
    #1
    Bu konuya google'dan geldiyseniz burayada bakmak isteyebilirsiniz: https://www.r10.net/showthread.php?p=1065675953

    Arkadaşlar wordpress'te yazarların sadece kendi yazdıklarını görebilmesini istiyorum fakat başaramadım

    <?php global $current_user;
          get_currentuserinfo();
    $uyeidd = ". $current_user->ID .";
    print $uyeidd;
    ?>
    Üye girişi yapan üyenin id'sini bu şekilde çekiyorum ve $uyeidd değişkenine atıyorum

    <?php  $yaziidd = the_author_ID(); ?>
    Bu şekildede yazıyı yazan üyenin id'sini çekiyorum fakat

    <?php if ($yaziidd == $uyeidd) : ?>
    Bu kod işe yaramıyor

    Acaba integer string olayları yüzünden mi dedim string'i integer'a çevirdim ($uyeidd integer yaptım) fakat $uyeidd nin türü NULL gözüküyor (ekrana basınca düzgün-doğru sayı olarak basmasına rağmen) onuda integer'a çevirdim genede olmadı

    Çalışmasını umuduğum kod buydu; (index.php)

    <?php get_header(); ?>
    	
    	<div id="contentcontainer" class="grid_9 alpha">
    
    	<div id="content">
    		
    		<?php $counter = 0; ?>
    [COLOR="Red"]	<?php global $current_user;
          get_currentuserinfo();
    $uyeidd = ". $current_user->ID .";
    print $uyeidd;
    print gettype( $uyeidd ) ;
    settype( $uyeidd, integer );
    print gettype( $uyeidd ) ;
    ?>[/COLOR]
    		<?php if (have_posts()) : ?>
    
    			<?php while (have_posts()) : the_post(); ?>
    [COLOR="Red"]<?php
            $yaziidd = the_author_ID();
    		print $yaziidd;
            print("Türü : ");
    		settype( $yaziidd, integer );
            print gettype( $yaziidd ) ; 
    ?>   <?php if ($yaziidd == $uyeidd) : ?>[/COLOR]
    				<?php $counter++; ?>
    				
    				<div class="post">
    					
    					<div class="meta grid_2 alpha">
                             
    						<ul>
    
    							<li class="auth"><?php the_author_posts_link(); ?></li> 
    							<li class="date"><?php the_time('j F Y'); ?><br /> <?php the_time('H:i'); ?></li>
    							<li class="comms"><a href="<?php comments_link(); ?>"><?php comments_number('0','1','%'); ?> <?php _e('Yorum',woothemes); ?></a></li>
    						</ul>
    		
    					</div><!--grid_2-->
    
    					<div class="postbody grid_7 omega <?php if ( $counter == 1 ) { ?>first<?php } ?>">
    						
    						<h2><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2>
    						
    						<div class="entry">
    							<p><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"></a></p>			
    						</div><!--entry-->	
    					
    					</div><!--grid_7-->
    					
    					<div class="clearfix"></div>
    					
    				</div>
                    
                   <?php endif; ?>
    			<?php endwhile; ?>	
    	
    		<?php endif; ?>
    	
    	</div><!--content-->
    
    			<div class="clearfix"></div>
    			
    			<div id="postnav">
    
    				<div class="fl"><?php next_posts_link(__('&laquo; Eski Yazılar',woothemes)); ?></div>
    				<div class="fr"><?php previous_posts_link(__('Yeni Yazılar &raquo;',woothemes)); ?></div>
    				
    				<div class="clearfix"></div>
    			
    			</div><!--postnav-->			
    	
    	</div><!--contentcontainer-->
    
    <?php get_sidebar(); ?>
    
    <?php get_footer(); ?>
    Kodu while'dan önce almayıda denedim while'ın içine almayıda denedim nerede yanlış yaptığımı yada hangi mantığı yanlış kurduğumu anlamadım
  • 27-08-2012, 22:56:00
    #2
    Bunun için ne kadar ücret vermeyi planlıyorsunuz merak ettimde
  • 27-08-2012, 23:26:20
    #3
    böyle çalışçakmı deneyin bi
    <?php get_header(); ?> 
         
        <div id="contentcontainer" class="grid_9 alpha"> 
    
        <div id="content"> 
             
    <?php global $current_user; $counter = 0;
          get_currentuserinfo();  if (have_posts()) 
    	  { 
                while (have_posts()) { 
    			the_post();
    if ($current_user->ID == the_author_ID()) { ?>
                    <?php $counter++; ?> 
                     
                    <div class="post"> 
                         
                        <div class="meta grid_2 alpha"> 
                              
                            <ul> 
    
                                <li class="auth"><?php the_author_posts_link(); ?></li>  
                                <li class="date"><?php the_time('j F Y'); ?><br /> <?php the_time('H:i'); ?></li> 
                                <li class="comms"><a href="<?php comments_link(); ?>"><?php comments_number('0','1','%'); ?> <?php _e('Yorum',woothemes); ?></a></li> 
                            </ul> 
             
                        </div><!--grid_2--> 
    
                        <div class="postbody grid_7 omega <?php if ( $counter == 1 ) { ?>first<?php } ?>"> 
                             
                            <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2> 
                             
                            <div class="entry"> 
                                <p><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"></a></p>             
                            </div><!--entry-->     
                         
                        </div><!--grid_7--> 
                         
                        <div class="clearfix"></div> 
                         
                    </div> 
                     
                   <?php }}} ?> 
         
        </div><!--content--> 
    
                <div class="clearfix"></div> 
                 
                <div id="postnav"> 
    
                    <div class="fl"><?php next_posts_link(__('&laquo; Eski Yazılar',woothemes)); ?></div> 
                    <div class="fr"><?php previous_posts_link(__('Yeni Yazılar &raquo;',woothemes)); ?></div> 
                     
                    <div class="clearfix"></div> 
                 
                </div><!--postnav-->             
         
        </div><!--contentcontainer--> 
    
    <?php get_sidebar(); ?> 
    
    <?php get_footer(); ?>
    integer string olaylarıda şöyle bişey

    mesela
    <?php
    $x=2;
    $y='2';
    if($x==$y) { echo "esitlik1 saglandi<br>\n"; } else { echo "esitlik1 saglanamadi<br>\n"; }
    if($x===$y) { echo "esitlik2 saglandi<br>\n"; } else { echo "esitlik2 saglanamadi<br>\n"; }
    exit;
    ?>

    şu scripti çaliştirin esitlik saglandi fakat esitlik 2 saglananamadi diyecektir çünkü
    if($x==$y) derken data type önemsemeden sadece değer karşılaştırması yaparsınız
    fakat
    if($x===$y) derken data type larda önemsenir

    2. eşitlik sağlanmaz çünkü $y bir string $x bir int değerdir
  • 27-08-2012, 23:32:20
    #4
    Herhangi bir ücret talep etmeyecektim merak ettim ne kadar vereceğini sadece tek satır kod bunu halleder...
    query_posts('author='.$current_user->ID);
    eğer giriş yapan kullanıcı yoksa 0 a eşitlenir ve bütün kullanıcı mesajlarını görüntüler. Onun için bir if kontrolü ile eğer 0 a eşitse hiç o id sahip olmayan bir id ye eşitleyin yada bir kullanıcı açın örneğin adı konusuz olsun bu konusuz kullanıcımızın id side 2 olsun
    $uid = $current_user->ID;
    if(!$current_user->ID){
    $uid = 2;
    }
    query_posts('author='.$uid);
    gibi
    Not: Bu kod while den önce gelmeli.
  • 27-08-2012, 23:51:39
    #5
    dreamer adlı üyeden alıntı: mesajı görüntüle
    böyle çalışçakmı deneyin bi
    Hocam c++'da integer string kontrolünde sorun çıkıyordu php'de tam olarak bilmiyorumdum teşekkür ederim fakat kod çalışmadı tüm herkesten tüm mesajları sakladı ve mesajı yazanın üye id'lerini yan yana bastı sadece


    mertdinler adlı üyeden alıntı: mesajı görüntüle
    Herhangi bir ücret talep etmeyecektim merak ettim ne kadar vereceğini sadece tek satır kod bunu halleder...
    query_posts('author='.$current_user->ID);
    eğer giriş yapan kullanıcı yoksa 0 a eşitlenir ve bütün kullanıcı mesajlarını görüntüler. Onun için bir if kontrolü ile eğer 0 a eşitse hiç o id sahip olmayan bir id ye eşitleyin yada bir kullanıcı açın örneğin adı konusuz olsun bu konusuz kullanıcımızın id side 2 olsun
    $uid = $current_user->ID;
    if(!$current_user->ID){
    $uid = 2;
    }
    query_posts('author='.$uid);
    gibi
    Not: Bu kod while den önce gelmeli.
    Türlü yollar ve eklentiler denedikten sonra kafayı yemek üzereydimki tam bugünlük pes ettiğim anda Allah gönderdi sizi heralde mucizevi bir şekilde tek kod gerçekten işi çözdü

    ama bu kodun işlevini tam olarak anlamadım madem tek satırda hallediliyor neden kaç saattir arıyorumda bulamadım onu hiç anlamadım

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 23:51:39 -->-> Daha önceki mesaj 23:39:39 --

    şimdi anladım hocam sanırım kod o kullanıcının tüm mesajlarını ekrana basıyor fakat benim isteğim tam olarak bu değil

    yazar diğer yazarların yazdığını görememeli kategorilerdede görememeli benim yapmaya çalıştığım kodu kategori gösterim sayfasına ve post gösterim sayfasınada uyarlayıp yapacaktım fakat sizin verdiğiniz kod maalesef tam olarak işi çözmedi
  • 28-08-2012, 00:22:02
    #6
    tahagg adlı üyeden alıntı: mesajı görüntüle
    Hocam c++'da integer string kontrolünde sorun çıkıyordu php'de tam olarak bilmiyorumdum teşekkür ederim fakat kod çalışmadı tüm herkesten tüm mesajları sakladı ve mesajı yazanın üye id'lerini yan yana bastı sadece




    Türlü yollar ve eklentiler denedikten sonra kafayı yemek üzereydimki tam bugünlük pes ettiğim anda Allah gönderdi sizi heralde mucizevi bir şekilde tek kod gerçekten işi çözdü

    ama bu kodun işlevini tam olarak anlamadım madem tek satırda hallediliyor neden kaç saattir arıyorumda bulamadım onu hiç anlamadım
    Arama terimlerini iyi belirlemelisiniz Halen merak ediyorumda bu işe ne kadar vermeyi düşünüyordunuz ?

    --R10.NET; Flood Engellendi -->-> Yeni yazılan 28-08-2012 mesaj 00:22:02 -->-> Daha önceki 27-08-2012 mesaj 23:52:22 --

    aynı kodu kategoriyi oluşturduğunuz yerde while den önce (büyük ihtimal archive.php) ve konu gösterimi bölümünde whileden önce (büyük ihtimal single.php) dede eklerseniz giriş yapan kullanıcı başkalarının postunu göremez
  • 28-08-2012, 11:49:28
    #7
    mertdinler adlı üyeden alıntı: mesajı görüntüle
    Arama terimlerini iyi belirlemelisiniz Halen merak ediyorumda bu işe ne kadar vermeyi düşünüyordunuz ?

    --R10.NET; Flood Engellendi -->-> Yeni yazılan 28-08-2012 mesaj 00:22:02 -->-> Daha önceki 27-08-2012 mesaj 23:52:22 --

    aynı kodu kategoriyi oluşturduğunuz yerde while den önce (büyük ihtimal archive.php) ve konu gösterimi bölümünde whileden önce (büyük ihtimal single.php) dede eklerseniz giriş yapan kullanıcı başkalarının postunu göremez
    başkalarının postunu göremiyor fakat archive.php ye koyduğumda o kategorideki kendi mesajlarını değil gene bütün kendi mesajlarını görüyor

    sanırım kod kendi mesajlarını sıralatıyor single.php'dede sanırım kendi mesajlarını içeriğiyle beraber sıralar (evet öyle yaptı)

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 11:27:31 -->-> Daha önceki mesaj 11:03:10 --

    	 global $current_user;
        get_currentuserinfo();
        $author_query = array('posts_per_page' => '-1','author' => $current_user->ID);
        $author_posts = new WP_Query($author_query);
        while($author_posts->have_posts()) : $author_posts->the_post();
    Böyle bir kod buldum

    query_posts('author='.$current_user->ID);
    ile aynı matıkta çalışıyor fakat tabi arcvhive.php'dede kullanıcının bütün mesajlarını yayınlıyor

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 11:49:28 -->-> Daha önceki mesaj 11:27:31 --

     <?php 
     global $current_user; 
          get_currentuserinfo(); 
    $uyeidd = $current_user->ID; 
     if ($uyeidd == the_author_id()): 
     $abc = "deneme";
     print $abc;
     endif?>
    bu kodu mesajın gösterildiği yerde kullanınca ekrana sadece author id yi yazıyo deneme felanda yazmıyo if neden işe yaramıyor :s

     <?php 
     global $current_user; 
          get_currentuserinfo(); 
    $uyeidd = $current_user->ID; 
    print $uyeidd;
    print the_author_id();
     if ($uyeidd == the_author_id()): 
     $abc = "deneme";
     print $abc;
     endif?>
    bu ekrana post admininse 111 yazdırıyor
    post 37. üyeninse
    13737
    37. üyeden giriş yapınca 373737 yazdırıyor

    if çalışmıyor
  • 28-08-2012, 16:36:23
    #8
    Üyeliği durduruldu
    Bu işinizi görür sanırım: http://kuaza.com/wordpress-yazilarin...ler-gorebilsin sadece single.php için ancak diğer sayfalarada kolaylıkla uyarlanabilir...