Wordpress'te Yazıdaki Yazar Kutusunda Yazarları Sınırlamak

Wordpress'te Yazıdaki Yazar Kutusunda Yazarları Sınırlamak

Wordpress ile yaptığınız bir sitede eğer çoklu yazarlar kullanıyorsanız bir yazar tanıtım alanında bazı kısıtlamalar yapmak isteyebilirsiniz.

Wordpress ile yaptığınız bir sitede eğer çoklu yazarlar kullanıyorsanız bir yazar tanıtım alanı kullanıyor olabilirsiniz. Genelde bu kısımda yazıların altında eğer kişi admin (yönetici) ise yazar kutusunun görünmesini istemeyebilirsiniz. Eklenti kullanmadan nasıl yapıldığını anlatacağım, çünkü bunu daha pratik eklentiyle yapmanızı sağlayan seçenekler var.

Genelde yazı içeriği şu şekilde bir kodla gösterilir:

<?php the_content(); ?>

Yazar kutusunu bu içerikten hemen sonra göstermek çoğunlukla tercih edilen bir şey. Bu yüzden hemen sonraki satıra aşağıdaki kodu ekleyerek yazara ait bilgileri gösterebilirsiniz:

<div class="author-info">
	<div class="author-avatar">
		<?php echo get_avatar( get_the_author_meta( 'user_email' ), apply_filters( 'dw_starter_author_bio_avatar_size', 72 ) ); ?>
	</div>
	<div class="author-description">
		<h4><?php printf( __( '%s', 'dw-focus' ), esc_html( get_the_author() ) ); ?></h4>
			<?php the_author_meta( 'description' ); ?>
		<a class="author-link" href="<?php echo esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ); ?>" rel="author">
			<?php printf( __( 'Yazarın Diğer Makaleleri<span class="meta-nav">&rarr;</span>', 'dw-focus' ), esc_html( get_the_author() ) ); ?>
		</a>
	</div>
</div>

Yukarıda gördüğünüz kodlar mevcut bir temanın yazar kutusu için kullandığı kodlar. Burada yazarın resmi, ismi ve yazarın diğer yazılarına giden bir link mevcut. Oldukça sade.

Bizim yapmak istediğimiz şu: Biz admin kullanıcısının eklediği yazıların altında bu kutunun görünmesini istemiyoruz. Bu yüzden küçük bir müdahale yapacağız.

Önce kullanıcılar kısmına gidip Admin kullanıcısının ID no'sunu öğrenelim. Ben baktığımda 2 olduğunu görüyorum. Bu durumda yukarıdaki kodların başına 2 numaralı yazar dışındaki herkesi göster diye kodlarımızı gireceğiz.

<?php if(get_the_author_meta( 'ID' ) != 2 ){?>

	<div class="author-info">
		<div class="author-avatar">
			<?php echo get_avatar( get_the_author_meta( 'user_email' ), apply_filters( 'dw_starter_author_bio_avatar_size', 72 ) ); ?>
		</div>
		<div class="author-description">
			<h4><?php printf( __( '%s', 'dw-focus' ), esc_html( get_the_author() ) ); ?></h4>
				<?php the_author_meta( 'description' ); ?>
			<a class="author-link" href="<?php echo esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ); ?>" rel="author">
				<?php printf( __( 'Yazarın Diğer Makaleleri<span class="meta-nav">&rarr;</span>', 'dw-focus' ), esc_html( get_the_author() ) ); ?>
			</a>
		</div>
	</div>
	
<?php } ?>

Şimdi artık admin tarafından yayınlanan içeriklerde en altta yazar kutusu görünmeyecek.

Ancak admin kullanıcısı birden fazla ise bu kez kodlarımızda küçük bir değişiklik yapmalıyız. Bu kişilerin de ID'leri 2, 21, 22 olsun.

<?php if(!in_array(get_the_author_meta( 'ID' ), [2,21,22])){?>

	<div class="author-info">
		<div class="author-avatar">
			<?php echo get_avatar( get_the_author_meta( 'user_email' ), apply_filters( 'dw_starter_author_bio_avatar_size', 72 ) ); ?>
			
		</div>
		<div class="author-description">
			<h4><?php printf( __( '%s', 'dw-focus' ), esc_html( get_the_author() ) ); ?></h4>
			<?php the_author_meta( 'description' ); ?>
			<a class="author-link" href="<?php echo esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ); ?>" rel="author">
				<?php printf( __( 'Yazarın Diğer Makaleleri <span class="meta-nav">&rarr;</span>', 'dw-focus' ), esc_html( get_the_author() ) ); ?>
			</a>
		</div>
	</div>

<?php } ?>

Eklentilerin çok olduğu bir durumda çok ihtiyaç duymayabilirsiniz, ancak tema geliştirirken veya özel düzenlemeler yaparken lazım olabilir.

Şahbil Uygur
non zero!
Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

Yukarı Git