
Çoğu zaman ihtiyaç duyduğumuz özellikleri kendi sitemize uygulamak için kolay yolu tercih eder ve eklenti kurarak istediklerimizi yapmaya çalışırız. Ama biz farkında olmasak bile çok basit şeyleri yapmak için bile kullandığımız eklentiler, sitemizin açılmasını geciktirdiği gibi aklımızda düşündüğümüz, yapmak istediğimiz tasarımı da tam anlamıyla yapabilen, uyumlu eklentiyi bulmak için harcadığımız zaman da cabasıdır.
Bu tür uğraşlarla zaman geçirmek yerine web den arayarak istediğinizi bulabilmeniz mümkün. Sonuçta bu tür kaynak kodlarını sadece mintik.com sitesi paylaşmıyor ve türlü türlü kodlama örneklerine erişebilir hatta bu kodları kurcalayarak kendiniz de birşeyler öğrenebilirsiniz.
Evet başlıyoruz şimdi. Burada paylaşacağımız kodları sitenizin herhangi bir bölümüne yerleştirebilirsiniz sidebar, anasayfa bölümleri gibi yerlere yada footer bölümüne. Şu anda kendim için hazırlamaya çalıştığım bir bir wordpress temasında bu kodları farklı yerlerde kullanıyorum. Mesela anasayfada bir kaç tane kategori bölümü var ve bu bölümlerin her birine kategori id ile farklı kategoriye ait resimli yazıları çekmek için kullanıyorum. En son yayınlanmış konuları da sidebar bölümünde yine aynı kodla ama farklı css kodlarıyla çekiyorum. Yani kısacası sizin oldukça işinize yarayacaktır. Hemen hemen her yerde kullanılabilir. İsterseniz sidebar bölümüne eklentisiz bir kategoriden id ile son yazıları çekin isterseniz de anasayfaya yeni kategori bölümü oluşturup son konuları fotoğraflarıyla birlikte çekin karar size kalmış ama kullanmazsanız bile arşivinizde bir köşede bulunsun bir gün mutlaka lazım olur.
Kategori Id Öğrenme
Yönetim paneli > Yazılar > Kategoriler linkindeki herhangi bir kategorinin yanına mouseyi getirip düzenle yazısının üstünde tuttuğunuzda tarayıcı ekranının alt kısmında link gözükür. Bu linkte yazan tag_ID2& yazısındaki 2 rakamı sizin kategori id si oluyor. Örnek olarak ekran görüntüsü alıp id bölümünün üstüne kırmızı bant çektim oradan bakabilirsiniz.

Paylaşacağımız php kodlarını yerleştireceğiniz yer oldukça önemlidir. Aksi halde döngüler farklı css çerçeveler içinde tekrar edebilir ve ortaya çok saçma görüntüler çıkabilir. Kodların tamamının konuları çekeceğiniz div in içinde olması gerekiyor. Ana div in içine ekleyeceğiniz diğer div leride php kodların içine eklemeniz gerekiyor. Örnek olması için ben ul ve li kullanarak kodları ekledim siz de ona göre bir ayar çekersiniz.
<ul class ""> <?php if ( have_posts() ) : ?> <?php while ( have_posts() ) : the_post(); ?> <?php endwhile; ?> <?php endif; ?> <?php wp_reset_query(); ?> <?php $paged=g et_query_var( 'paged') ? get_query_var( 'paged') : 1; $args=a rray( 'post_type'=> 'post','cat'=> 2,'posts_per_page' => 5, 'paged' => $paged); // Buradaki 2 ('cat'=>2) rakamı sizin kategorinizin id sidir. $loop = new WP_Query( $args );?> <?php while ( $loop->have_posts() ) : $loop->the_post(); ?> <li> <?php $thumbnail_id=g et_post_thumbnail_id(); $thumbnail_url=w p_get_attachment_image_src( $thumbnail_id, 'thumbnail-size', true ); $thumbnail_meta=g et_post_meta( $thumbnail_id, '_wp_attachement_image_alt', true ); ?> <img src="<?php echo $thumbnail_url[0]; ?>" alt="<?php echo $thumbnail_meta; ?> " class="resim-stil"> <h2> <a class="baslik" href="<?php the_permalink(); ?>"><?php the_title(); ?></a> </h2> </li> <?php endwhile; ?> <?php wp_reset_query(); ?> </ul>
Bunları kendinize göre düzenleyebilirsiniz.
- ‘cat’=> 2 yazan yerdeki 2 rakamı bizim konuları çekeceğimiz listenin id sidir.
- ‘posts_per_page’ => 5 yazan yerdeki 5 rakamı da 5 tane konu çekileceğini gösterir.
Css ve html tasarımında ul ve li kullanımı şu şekildedir.
<ul> Genel çerçeve
<li> iç çerçeve
</li>
</ul>
Buradaki dış çerçeve döngünün içinde olduğu çerçevedir. Eğer kodları ul dışına atarsanız bu sefer genel çerçeve içinde tekrar etmesi gereken yazılar genel çerçevenin dışında tekrar eder. Paylaştığımız kodda li etiketleri kodun içinde gömülü olduğundan li etiketleri belirlediğiniz rakam kadar döngüye girer ve yazılar listelenir.
Örneği daha önceden 2 yazı çekmek için kullanmıştım. Sonuç bu resimdeki gibi oldu.

Resimlerin çıkmasını istemiyorsanız şu kodu kullanın:
<ul class ""> <?php if ( have_posts() ) : ?> <?php while ( have_posts() ) : the_post(); ?> <?php endwhile; ?> <?php endif; ?> <?php wp_reset_query(); ?> <?php $paged=g et_query_var( 'paged') ? get_query_var( 'paged') : 1; $args=a rray( 'post_type'=> 'post','cat'=> 2,'posts_per_page' => 5, 'paged' => $paged); // Buradaki 2 ('cat'=>2) rakamı sizin kategorinizin id sidir. $loop = new WP_Query( $args );?> <?php while ( $loop->have_posts() ) : $loop->the_post(); ?> <li> <h2> <a class="baslik" href="<?php the_permalink(); ?>"><?php the_title(); ?></a> </h2> </li> <?php endwhile; ?> <?php wp_reset_query(); ?> </ul>
Başlıkların çıkmasını istemiyorsanız sadece resimler çıksın yeter diyorsanız da şu kodu kullanın:
<ul class ""> <?php if ( have_posts() ) : ?> <?php while ( have_posts() ) : the_post(); ?> <?php endwhile; ?> <?php endif; ?> <?php wp_reset_query(); ?> <?php $paged=g et_query_var( 'paged') ? get_query_var( 'paged') : 1; $args=a rray( 'post_type'=> 'post','cat'=> 2,'posts_per_page' => 5, 'paged' => $paged); // Buradaki 2 ('cat'=>2) rakamı sizin kategorinizin id sidir. $loop = new WP_Query( $args );?> <?php while ( $loop->have_posts() ) : $loop->the_post(); ?> <li> <?php $thumbnail_id=g et_post_thumbnail_id(); $thumbnail_url=w p_get_attachment_image_src( $thumbnail_id, 'thumbnail-size', true ); $thumbnail_meta=g et_post_meta( $thumbnail_id, '_wp_attachement_image_alt', true ); ?> <img src="<?php echo $thumbnail_url[0]; ?>" alt="<?php echo $thumbnail_meta; ?> " class="resim-stil"> </li> <?php endwhile; ?> <?php wp_reset_query(); ?> </ul>
Hiçbir şey çıkmasın diyorsanız da boş bırakın gitsin.
Başlığın altında makalenin giriş kısmı yazmıyor. Başlığın hemen altındaki bölüme şu kodu eklerseniz ve temanızın function.php dosyası the_excerpt destekliyorsa başlıktan sonra makalenizin bir bölümü çıkar.
<?php the_excerpt(); ?>
The_excerpt makalenin giriş bölümünü çağırmaya yarayan fonksiyonun ismidir. Olur da hata verirse yada konu yazısı başlığın altında çıkmazsa function.php dosyasına the_excerpt tanımlamanız gerekiyor. Bunu yapmak için de aşağıdaki kodu function.php dosyasında uygun bir yere yapıştırın.
function get_excerpt_by_id($post_id){ $the_post = get_post($post_id); $the_excerpt = $the_post->post_content; $excerpt_length = 35; //bu kaç karakterin çıkacağını gösterir $the_excerpt = strip_tags(strip_shortcodes($the_excerpt)); $words = explode(' ', $the_excerpt, $excerpt_length + 1); if(count($words) > $excerpt_length) : array_pop($words); array_push($words, '…'); $the_excerpt = implode(' ', $words); endif; $the_excerpt = '<p>' . $the_excerpt . '</p>'; return $the_excerpt; }
$excerpt_length = 35; satırındaki 35 rakamı kaç karakter çıkacağını gösterir. tema düzenine göre uygun rakamı girmeniz gerekiyor.