WordPress Code: Menambahkan Loop Random pada Halaman Archive

Halaman Archive pada WordPress adalah termasuk halaman Category, Tags, Monthly Archive, Yearly Archive, dan Author. Menurut pengamatan mas Jarot Syahputro, biasanya halaman Archive Yearly, Monthly, serta Latest Posts sangat berpotensi menampilkan posting yang sama dengan urutan yang sama. Ini bisa mengundang penilaian duplicate content oleh Google.

Salah satu cara agar halaman-halaman tersebut bisa berbeda satu dengan yang lain, maka langkah-langkah randomisasi bisa dijadikan sebuah teknik untuk menghindari internal duplicate pages pada web yang bemesin WordPress.

Berdasarkan ide beliau tersebut , maka berikut langsung saja saya jabarkan kodenya untuk segera bisa diimplementasikan.

Sebagai pembuka, marilah kita bersama-sama mengenali, bagian mana sih yang disebut sebagai WordPress Loop itu? Jika, Anda punya waktu luang dan mata yang sehat untuk melihat, maka segerelah buka template Anda, lalu bukalah salah satu file misalnya archive.php atau category.php

Cobalah cari potongan kode berikut:

<?php if(have_posts()) : while(have_posts()) : the_post(); ?>
 
<!-- Semua Kode yang berada di bagian ini termasuk ke dalam 
Wordpres Loop  -->
 
<?php endwhile; ?>
<?php endif; ?>

Nah, itulah yang namanya WordPress Loop. Beberapa template tidak menyertakan <?php if(have_posts()) ?> dan <?php endif; ?>, sehingga Loop ditutup pada tag <?php endwhile; ?>

Kode berikut ditambahkan pada baris baru setelah WordPress Loop yang normal

<?php query_posts(array('orderby' => 'rand', 'showposts' => 5)); ?>
<?php if(have_posts()) : while(have_posts()) : the_post(); ?>
 
<div class="post-area">
	<h2 class="entry-title"><a href="<?php the_permalink(); ?>" rel="bookmark" title="Permalink to <?php the_title(); ?>"><?php the_title(); ?></a></h2>
 
	<div class="entry-content">
		<?php the_excerpt(); ?>
	</div>
</div><!--.entry-->
 
<?php endwhile; ?>
<?php endif; ?>	
<?php wp_reset_query(); ?>

Perlu diperhatikan bahwa tag HTML yang tertulis di atas harus disesuaikan dengan tag HTML yang ada pada masing-masing template WordPress. Yang harus sama adalah bagian

<?php query_posts(array('orderby' => 'rand', 'showposts' => 5)); ?>
<?php if(have_posts()) : while(have_posts()) : the_post(); ?>

dan

<?php endwhile; ?>
<?php endif; ?>	
<?php wp_reset_query(); ?>

Untuk nilai showposts bisa disesuaikan selera. Di atas tertulis ‘showposts’=>5, berarti loop tersebut akan menampilkan jumlah posts sebanyak 5 buah.

Selamat mencoba…