Geliştiriciler için WordPress Kodları
WordPress

Kendi Temasını Yapmak İsteyenler İçin WordPress Kodları

Sürekli kullandığım ve güncel olarak tuttuğum WordPress kod arşivimi paylaşıyorum. WordPress tema yaparken WordPress kodlarını sıkça kullanırız. Bu kodlar zamandan tasarruf etmenizi sağlar. Bazı WordPress kodlarını tek tek yazmak hem deneyim hem zaman gerektireceği için bu arşiv tam size göre.

Geliştiriciler için WordPress Kodları

WordPress Kod Arşivi

WordPress sıfırdan tema yapımına yeni başlayanlar için WordPress kodları ne işe yarar? nerelerde kullanıldığına hep beraber bakalım.

Siteniz kod eklemeyi bilmiyorsanız WordPress Siteye Kod Nasıl Eklenir? yazısını tıklayarak hemen öğrenebilirsiniz.

Style.css Tanımlaması

Eğer yaptığınız tema klasörünün içerisinde style.css dosyası yoksa ve “Ana tema eksik. Lütfen “xxx” kök temasını yükleyin.” hatası alıryorsanız yapmanız gereken şey aşağıdaki gibi bir style.css dosyası oluşturup tema klasörüne atmanız yeterlidir.

/* Theme Name: Tema Adı
Theme URI: Kişisel Blog Teması
Author: Buğra YAZAR
Author URI: wbugrayazar.com.tr
Description: Tema Açıklaması
Version: 1.0 */

Title (Sayfa Başlığı)

<title><?php wp_title( '-', true, 'right' ); ?><?php bloginfo('name'); ?></title> 

Sayfaları Listeleme

<?php wp_list_pages('title_li='); ?>

Temel WordPress Kodları

WordPress tema yapımında kullanılan WordPress kodları ile başlayalım.

<?php wp_head(); ?>

wp_head ve wp_footer

<head> … </head> etiketleri arasındaki kodları çağırmaya yarar.
</head>” etiketinden önce kullanılması gerekir.

<?php wp_footer(); ?>

Sayfanızın altındaki wp_footer fonksiyonunun içeriğini yazdırır.
</body>” etiketinden önce kullanılması gerekir.

Tema adresi :

Bu fonksiyon direkt olarak tema klasörünün url’sini almanızı sağlar.

<?php bloginfo('template_url'); ?>/

Blog adı

<?php bloginfo('name'); ?>

Ana dizin url adresi

<?php bloginfo('url'); ?> 

RSS adresi

<?php bloginfo("rss2_url"); ?>

Karakter kodlaması

<?php bloginfo("charset"); ?>

Blog açıklaması

<?php bloginfo("description"); ?>

Blog adresi

<?php bloginfo("url"); ?>

Stil dosyası adresi

<?php bloginfo("stylesheet_url"); ?>

WordPress versiyonu

<?php bloginfo("version"); ?>

Dosya Bağlantıları

WordPress’te oluşturduğunuz şablon dosyaları için include kullanmanıza gerek yok. Hazır fonksiyonlar ile header, footer, sidebar gibi bölümleri istediğiniz yere ekleyebilirsiniz.

header.php

<?php get_header(''); ?>

sidebar.php

<?php get_sidebar(''); ?>

footer.php

<?php get_footer(''); ?>

searchform.php

<?php get_search_form($echo); ?>

Listeleme Fonksiyonları

Bu listeleme fonksiyonları özelleştirebilirsiniz. Bunun için başlıkların yanına o fonksiyona ait codex sayfalarını da ekliyorum.

Kategorileri listeleme : (Codex)

<?php wp_list_cats($args); ?>

Sayfaları Listeleme : (Codex)

<?php wp_list_pages($args); ?>

Arşivleri Listeleme : (Codex)

<?php wp_get_archives($args) ?>

Yazarları Listeleme : (Codex)

<?php wp_list_authors($args); ?>

Takvim : (Codex)

<?php get_calendar(''); ?>

Özel menüyü listeler

<?php wp_nav_menu(); ?> 

Single.php (İç sayfa)

Döngü başlangıcı ve bitişi arasında yer alacak olan kodlar iç sayfa içerisinde o yazıya ait bilgilerin listeleneceği alandır.

Döngü başlangıcı :

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

Döngü bitişi :

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

Yazı ID

<?php the_ID(); ?>

Yazı başlığı

<?php the_title("); ?>

Yazı adresi

<?php the_permalink(") ?>

Yazı kategorisi

<?php the_category(", ") ?>

Yazı Etiketi

<?php the_tags( '', ', ', ''); ?>

Yazı tarihi

<?php the_time("F j Y"); ?> 

 Yazı Saati

 <?php the_time("H:i:s"); ?>

Yazı içeriğini yazdırır

<?php the_content(); ?>

Yazı özetini yazdırır

<?php the_excerpt(); ?> 

Yorum Şablonu : (comments.php)

<?php comments_template(''); ?>

Yazı düzenleme linki

<?php edit_post_link(''); ?>

Yorum Sayısı 

<?php comments_number('Yorum Yok', '1 Yorum ', '% Yorum' );?>

Yazı okunma sayısı : (WP-PostViews eklentisi gerekir)

<?php if(function_exists("the_views")) { the_views(); } ?>

Yazar adı

<?php the_author(''); ?>

Yazar açıklaması

<?php the_author_description(''); ?>

Yazar adı ve soyadı

<?php the_author_firstname('') . " " . the_author_lastname("); ?>

Yazar sayfası adresi

<?php the_author_link('');?>

Yazar web sitesi

<?php the_author_url(''); ?>

Yazar mail adresi

<?php the_author_email('');?>

Sonraki yazı linki

<?php next_post_link('') ?>

Önceki yazı linki

<?php previous_post_link('') ?>

Öne çıkarılmış görsel (Thumbnail)

Eklenecek kodlar ;

functions.php

Önce çıkarılan görsel kullanmanız için öncelikle function.php dosyanıza aşağıdaki kodu eklemeniz gerekiyor. Bu dosya yok ise tema klasörünün içerisine function.php dosyası oluşturabilirsiniz.

add_theme_support( "post-thumbnails" );

Thumbnail Çekme Kodu

<?php the_post_thumbnail('full', array('class' => 'img-responsive','alt')); ?>

Faydalı WordPress kodları

Bileşen Tanımlama

 <?php if ( function_exists('register_sidebar') ) { register_sidebar(array( 'name' => 'Sağ Bölüm', 'before_widget' => ' ', 'after_widget' => '', 'before_title' => '', 'after_title' => '', )); } ?>

Bileşenin Gösterilmesi

<?php if ( function_exists('dynamic_sidebar') && dynamic_sidebar() ) : else :?> <?php endif; ?>

Popüler Yazıları Listeleme

<?php
// WordPress popüler yazıları listeleme kodu
query_posts(array('meta_key' => 'views', 'orderby' => 'meta_value_num'));
while ( have_posts() ) : the_post();
//Listeleme iskeleti. Yani Listelemek istediğiniz html parça
endwhile;
wp_reset_query();
?>

Rastgele Yazıları Listeleme

Aşağıdaki koddaki showposts=5 yerine istediğiniz rakamı yazabilirsiniz. 10 tane göstermek için showposts=10 olmalı gibi.

<?php 
// sorgu koşulu belirlenir
query_posts('showposts=5&orderby=rand');
while ( have_posts() ) : the_post();
//Listeleme iskeleti
endwhile;
wp_reset_query();
?>

WordPress Arama Formu Kullanımı 

<form method="get" id="searchform" action="<?php bloginfo('url'); ?>">
<input class="searchbg" type="text" name="s" id="s" onfocus="if (this.value == 'Ara ...') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Ara ...';}" />
<input class="button" type="button" value="" />
</form>

Yorum Yapanın Yazar Linkini Kaldırma / Yorumlardaki Site Linklerini Kaldırma:

Her ne kadar WordPress sitenize yapılan yorumlardaki gravatar profilleri yorum yapan kişinin ismini o kişinin sitesine nofollow olarak linklese de, yani SEO konusunda sorun olmasa bile bazı durumlarda yapılan WordPress yorumlardaki linkleri kaldırmak için aşağıdaki kodu kullanabilirsiniz.

Alttaki kodu functions.php dosyanıza eklediğinizde ise sitenizin genelinde yorumlardaki site linklerini tamamen iptal edebilirsiniz.

<?php
/**
* Yorumlardaki site bağlantı Link adreslerini kaldırma kodu 
/* bugrayazar.com */
* 
* @return string $author
*/
function wpse218025_remove_comment_author_link( $return, $author, $comment_ID ) {
return $author;
}
add_filter( 'get_comment_author_link', 'wpse218025_remove_comment_author_link', 10, 3 );
?>

Bu Yazı 10.10.2019 tarihinde güncellenmiştir. Yeni kodlar ve fonksiyonlar eklenmiştir.

Yazı Güncelleme Tarihi

Yazıya eklememi istediğiniz WordPress kodlarını yorum olarak yazabilirsiniz.