Share
  • Share this post on Delicious
  • StumbleUpon this post
  • Share this post on Digg
  • Tweet about this post
  • Share this post on Mixx
  • Share this post on Technorati
  • Share this post on Facebook
  • Share this post on NewsVine
  • Share this post on Reddit
  • Share this post on Google
  • Share this post on LinkedIn

Sayfaya link verme ve kategorileri gizleme

wordpress

BaÅŸka bir blogun header kısmını düzenlerken büyük bir sorunla karşılaÅŸtım. Yeni tasarımda page kısımları sayfanın en üstündeydi. Bu sayfaları, blog yöneticisi sadece sidebar kısmında göstermek istiyordu. DoÄŸal olarak, bu yukarıdaki pageleri gizlemem gerekiyordu. Bu sorunu ufak bir kod yardımıyla çözdüm. Aslında kolay olan bu iÅŸlemi çoÄŸu yerde eklenti yardımıyla çözmeye kalkışıyorlar. Bu da db’inizide yeni tablolar anlamına geliyor ve sitenizin hızı gün geçtikçe yavaÅŸlıyor. İstediÄŸininiz kategoriyi yada page’i saklamak istiyorsanız  exclude= id kodunu sayfanızda gerekli yere koymanız yeterli olacaktır.  =id yazan yeri istediÄŸiniz gibi düzenleyip, birden fazla yazı ya da kategoriyi gizleyebilirsiniz (3,4,5) gibi

EÄŸer page’leri gizlemek istiyorsanız., temanızda 

Kategorileri gizlemek istiyorsanız,   wp_list_categories kısımlarında düzenleme yapmanız yeterli olacaktır.

Örnek kod:

wp_list_pages(‘sort_column=menu_order&depth=1&title_li=&exclude=2,4,6′

 

Bu sorunu çözdükten sonra  sayfanın üst kısmı tamamen boş kaldı ve buraya Home ve subdomain linklerini koymam gerekiyordu.  Normal link ekler gibi ekleme şansım olmadı. Çünkü  pagelerin durduğu kısmın kod yapısı şu şekildeydi:

 

id=”base”>
<div id=”menu”>
<ul><?php
$options = get_option(‘widget_pages’);
$exclude = empty($options['exclude'] ) ? ” : $options['exclude'];
wp_list_pages(‘sort_column=menu_order&depth=1&title_li=&exclude=’.$exclude);
?>
</ul>
</div>

 

Bu kısımda Home linkini bir türlü ekleyemedin ve sorunu  şu şekilde çözdüm:

<div id=”menu”>
<ul><?php
function gdm_add_link_home($content) {
$homeItem = “<li class=’page_item”;
if (is_home())
$homeItem .= ” current_page_item’”;
else
$homeItem .= “‘”;
$homeItem .= “><a href=’” . get_bloginfo(‘url’) . “‘ title=’Home’>Home</a></li>”;
$pos = strpos($content, ‘<ul>’);
if ($pos === false) {
return $homeItem . $content;
} else {
$preContent = substr($content, 0, $pos + 4);
$postContent = substr($content, $pos + 4);
return $preContent . $homeItem . $postContent;
}
}

add_filter(‘wp_list_pages’, ‘gdm_add_link_home’);
$options = get_option(‘widget_pages’);
$exclude = empty($options['exclude'] ) ? ” : $options['exclude'];
wp_list_pages(‘sort_column=menu_order&depth=1&title_li=&exclude=2150,2153,3493,3483,2151,2154,6036′.$exclude);

?>
</ul>
</div>

Eğer temanızda buna benzer bir kod düzeni varsa siz de bu şekilde home linkini görüntüleyebilirsiniz.

 

İkinci sorun ise Home kısmının yanında subdomaine link vermekti. Gördüğünüz kod yapısı içinde klasik link verme işlemini her yapmaya çalışımda hatayla karşılaştım. Bunun başka bir yolu varsa da ben bulamadım. Aklıma bir cinlik geldi ve bakın sorunu nasıl çözdüm:

<?php /*
Name: theme adı
*/
?>
<meta HTTP-EQUIV=Refresh CONTENT=0;URL=url></meta>

 

Bu kodu  boş bir notepad dosyasına yapıştırın. Url kısmını ve theme adı yazan yerleri istediniz biçimde düzenledikten sonra dosyanıza bir isim vererek ve uzantısını php olarak kayıt edin. Bu oluşturduğunuz php dosyasını ftp yardımıyla sunucunuzdaki temanızın içine atın. WordPressin admin paneline giriş yapıp yeni bir sayfa oluşturun. Başlık kısmına gözükecek ismi yazın. Metin editörüne birşey yazmadan yan taraftaki  Template seçeneğinden sunucunuza yüklediğiniz dosyayı seçin. Hepsi bu kadar. Artık linkiniz sayfanızda görüntülenecek. Bu arada content değerini arttırarak yönlenme süresini değiştirip değişik amaçlarla da kullanabilirsiniz.

Bu yazı 2.7.1 için yazılmıştır.

Template

Benzer Yazılar:

Windows Serverda permalink ayarı
Template siteleri
Tema deÄŸiÅŸikliÄŸi

Etiketler: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

*

Şu HTML etiketlerini ve özelliklerini kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>