Paylaşım sitesi

Paylaşım ve Destek yazıları sitesi.

Wordpress query posts fonksiyonu kullanma

Wordpress sitenizde eklemiş olduğunuz yazıları query_posts fonksiyonu ile değişik şekillerde listeletebilirsiniz. Bu yazıda bu fonksiyonun kullanımı hakkında kodları bulacaksınız.

Kullanımı gayet kolay olan bu kod yardımı ile ufkunuzu açacak fikirler ile güzel projeler yapabilirsiniz. Bu fonksiyon yardımı ile belli bir kategoriden istediğiniz kadar yazı gösterebilirsiniz, bir etiketin yazılarını , rastgele istediğiniz kadar yazıları yada özel alanları çekebilirisniz. Gelelim kullanacağımız kodlara , aşağıdaki kod ile sitenizdeki wordpress adlı kategorinin son 10 yazısını link şeklinde listeletebilirsiniz.

<?php query_posts('category_name=wordpress&posts_per_page=10' ); 
if (have_posts()) : while (have_posts()) : the_post(); ?> 
<p><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></p>
 <?php endwhile; endif; wp_reset_query(); ?>

Sadece belli bir kategoriye ait yazıları listelemek istiyorsak aşağıdaki kodumuzu kullanıyoruz. Bu kod ile  sinema kelimesi ile etiketlenmiş  son 10 yazısı listelenecektir.

<?php query_posts('tag=sinema&posts_per_page=10' ); if (have_posts()) : while (have_posts()) : the_post(); ?> <p><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></p> <?php endwhile; endif; wp_reset_query(); ?>

Rastgele yazı göstermek için aşağıdaki kodu kullanabilirsiniz.

<?php query_posts('orderby=rand&posts_per_page=10' ); if (have_posts()) : while (have_posts()) : the_post(); ?> <p><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></p> <?php endwhile; endif; wp_reset_query(); ?>

query posts fonksionunun diğer kodları ve kullanımları  ise şöyle

query_posts( 'posts_per_page=10' );
// Gösterilecek yazı sayısı

query_posts( 'cat=1' );
// kategoriye göre yazı göstermek

query_posts( 'category_name=kategori-adi' );
// kategoriye göre yazı göstermek

query_posts( 'cat=-1' );
// kategori çıkartmak için kullanılan

query_posts( 'tag=etiket' );
// etikete göre yazı göstermek

query_posts( 'post_type=fotograflar' );
// Özel yazı biçimine göre çağırmak

query_posts( 'p=5' );
// ID si 5 olan yazıyı çağırır

query_posts( 'orderby=rand' );
// random-rastgele yazı çeker

query_posts( 'meta_key=ozelalanadi&orderby=meta_value_num' );
// özel alan - custom field alanındaki sayısal veriye göre sıralamak.

 

Wordpress rss ile başka siteden başlıkları almak

Wordpress kullanıcıları başka bir wordpress sitesinden yazıların linklerini RSS feed ile alıp kendi sitelerinde sidebarda gösterebilirler . Şöyle düşünürsek çok hit yapan bir sitenizden daha az hite sahip sitenize ziyaretçi gönderebilirsiniz. Son eklenen yazıların linkini sidebar da göstererek ziyaretçileri paylaştırabilirsiniz. Sidebara ekleyeceğiniz kod aşağıdadır. Rss feed adresini kendinize göre değiştirip kullanabilirsiniz.

<h2><?php _e('Son 10 Yazı'); ?></h2>
<?php // Get RSS Feed(s)
include_once(ABSPATH . WPINC . '/rss.php');
$rss = fetch_rss('http://www.bir6.com/feed');
$maxitems = 10;
$items = array_slice($rss->items, 0, $maxitems);
?>

<ul>
<?php if (empty($items)) echo '<li>No items</li>';
else
foreach ( $items as $item ) : ?>
<li><a href='<?php echo $item['link']; ?>'
title='<?php echo $item['title']; ?>'>
<?php echo $item['title']; ?>
</a></li>
<?php endforeach; ?>
</ul>

Yukarıdaki kod yardımı ile lastikforum sitesinden son eklenen 10 yazıyı sidebar da gösterebilirsiniz. Sadece belli bir kategoriden yazıları göstermek istiyorsanız. Yukarıdaki kodlarda http://www.bir6.com/feed şeklinde olan adresi http://www.bir6.com/cat/wordpress/feed olarak değiştirmemiz gerekecek. Ben kendi sitemin wordpress kategorisininin yazılarını çekiyorum . Feed adresinizi kendinize göre değiştirip kullanabilirsiniz.

WordPress bir kategoride arama formu yapma kodları

Wordpress sitenizde yada blogunuzda ziyaretçilerinize sadece belli bir kategori üzerinde arama yaptırmak istiyorsanız vereceğim kod tamda bu işe yarıyor. Blogunuzda yada sitenizde diyelimki müzik , video tarzı şeyler paylaşıyorsunuz ve ziyaretçilerinize müzik kategorisinde arama yaptıracaksınız . Aşağıdaki formda ben müzik kategorisi olarak 5 nolu kategoriyi seçtim siz kendi kategorinize göre düzenleyin ve sitenizin sidebar.php dosyasında uygun bir yere yapıştırın ziyaretçileriniz müziklerini bu form aracılığı ile arasınlar. Not: http://siteadresi.com/ adlı bölümede kendi sitenizin adresini yazmayı unutmayın.  

<form id="searchform" action="http://siteadresi.com/" method="get">
 <input id="s" value="Müzik ara..." value="" name="s" id="s" onfocus="this.value=''" title="Arama kelimenizi girin." />
 <input name="cat" type="hidden" value="5" />
 <input type="submit" value="<?php esc_attr_e('ara'); ?>" />
 </form>

  Aşağıdaki kod ise ziyeretçilerinize arama yapmak için kategori seçme hakkı tanıyorsunuz . Ziyaretçileriniz istedikleri kategori üzerinde arama yapabiliyorlar.

<form id="searchform" action="<?php get_option('home') ?>" method="get">
 <input id="s" value="Arama yap..." value="" name="s" id="s" onfocus="this.value=''" title="Enter the terms you wish to search for." />
 <?php wp_dropdown_categories('depth=0&orderby=name&hide_empty=1&show_option_all=Kategori seçin'); ?>
 <input type="submit" value="Ara" />
 </form>

Wordpress Spam (istenmeyen) yorum engelleme (Eklentisiz)

Wordpress sitenize çok sayıda reklam amaçlı istenmeyen yorum geliyorsa bu işi çözmek için ufak bir kod kullanacağız . Ben bu kodu uzun süredir kullanıyorum , hiç spam yorum almadım. Eklenti kullanmaya gerek kalmıyor. Temanızın içindeki comments.php dosyasını not defteri ile açın ve Yorum formunun altına ( form etiketinin içinde olması gerekli) aşağıdaki satırı ekleyin ekleyin;

<input name="onay" value="evet" type="checkbox" /> Lütfen yorumunuzu onaylayın

Sonra da ana dizininizdeki wp-comments-post.php dosyasını açın ve  en üste  (php etiketinin içine olması gerekiyor) aşağıdaki kodu yapıştırın

if($_POST[onay]!="evet"){die("Lutfen Yorum onay kutusunu isaretleyin.");}

Hepsi bu kadar; Yukarıdaki işlemde mantığımız şu , spam yorumlar otomatik yazıldığı için buradaki onay kutusunu işaretlemiyorlar ve Lütfen yorum onay kutusunu işaretleyin yazısıyla karşılaşacaklar ve yorumu gönderemeyecekler. Ben sitemde bu kodu kullanıyorum gayet başarılı . Eğer spam yorum botları bunu geçerse kod da ufak bir değişiklik yapabiliriz.

Wordpress için özel giriş paneli kodları

Wordpress kullanıcıları eğer üyelik sistemini kullanıyorlarsa bu iş için sidebarda giriş panelinin kodlarını aşağıda vereceğim . Eklenti kullanmanıza gerek kalmadan giriş paneline sahip olacaksınız . Aşağıdaki kodları temanızın sidebarında uygun bir yere yapıştırın . Yönetim paneliniz hazır.

 <h3><?php _e('Üye Paneli'); ?></h3>
 <div><?php global $user_ID, $user_identity; get_currentuserinfo(); if (!$user_ID): ?>
 <div><form name="loginform" id="loginform" action="<?php echo get_settings('siteurl'); ?>/wp-login.php" method="post">
 <ul>
 <p><input type="text" name="log" id="log" value="" size="16" tabindex="1" /> <?php _e('Username') ?> </p>
 <p><input type="password" name="pwd" id="pwd" value="" size="16" tabindex="2" /> <?php _e('Şifre') ?></p>
 <p><input type="submit" name="submit" value="<?php _e('Giriş'); ?>" tabindex="3" /></p>
 <p><input name="rememberme" type="checkbox" id="rememberme" value="forever" tabindex="4" /> <?php _e('Beni hatırla'); ?></p>
 <p><?php wp_register('', ''); ?> . <input type="hidden" name="redirect_to" value="<?php echo $_SERVER['REQUEST_URI']; ?>"/></p>
 </ul></form><p>Bazı özelliklerimizden üyelerimiz faydalanmaktadır. Lütfen üye olun yada giriş yapın.</p></div>
 <?php  else:?>
 <p>Merhaba <?php echo $user_identity; ?> Hoşgeldin</p>
 <ul>
 <li><a href="<?php echo get_settings('siteurl'); ?>/wp-admin/">Kontrol Paneli</a></li>
 <li><a href="<?php echo get_settings('siteurl'); ?>/wp-admin/post-new.php">Yazı yaz</a></li>
 <li><a href="<?php echo get_settings('siteurl'); ?>/wp-admin/profile.php">Profil</a></li>
 <li><a href="<?php echo get_settings('siteurl') . '/wp-login.php?action=logout&amp;redirect_to=' . $_SERVER['REQUEST_URI']; ?>"><?php _e('Çıkış'); ?></a></li>
 </ul><?php  endif;?>
 </div>

Wordpress belli etiketleri gösterme kodu

Wordpress kullananlar sitenizde sidebarda , footer da yada istediğiniz herhangi bir yerde sadece seçmiş olduğunuz etiketleri gösterebilirsiniz. Basit bir kod yardımı ile bu mümkün. Sayı da önemli değil 10 adet 20 adet istediğiniz kadar etiketi gösterebilirsiniz seçim size kalmış. Aşağıdaki kodun etiket id lerini değiştirip sidebar a yada kodu göstermek istediğiniz yere yapıştırın, hepsi bu kadar. Değişiklik yapmanız gereken yerler ise şöyle: smallest=12 en küçük etiketin yazı boyutu , largest=16 en büyük etiketin yazı boyutu , include=11,21,22,23,24,25 ise göstereceğimiz etiketlerin id numaraları. Siz yazı ve etiket numaralarını kendinize göre değiştirin.

 <h3>Seçilmiş Etiketler</h3>
<?php wp_tag_cloud('smallest=12&largest=16&include=21,21,22,23,24,25'); ?>