
bbPress; basit, hızlı, sade görünümlü, kullanışlı, eklenti çeÅŸitliliÄŸi/bolluÄŸu, SEO bakımından geliÅŸmiÅŸÂ ve GPL lisansına sahip hazır forum içerik yönetim sistemidir. WordPress ile daima entegrasyonlu çalışması daha çok wordpress kullanıcıları tarafından kullanılmasına yol açıyor. Tabiki bbPress’i, sadece siteleri wordpress olanlar kullanmıyor. bbPress’i genel olarak sadeliliÄŸi, hızlılığı sevenler ve bilgiyi kullanıcıya kısa yoldan ulaÅŸtırmaya çalışanlar tercih ediyor. bbPress ücretsiz ve içerik yönetim sistemi olduÄŸu için Google bbPress alt yapısına sahip sitelere deÄŸer veriyor. bbPress SEO bakımından tüm gözlerin üzerinde olan bir sistemdir. bbPress SEO’sunda Kalıcı BaÄŸlantı (Permalink) Yapısı çok önemli rol oynuyor. bbPress kurulumuyla beraber hazır gelen üç çeÅŸit kalıcı baÄŸlantı yapısı vardır. Bu kalıcı baÄŸlantı yapıları Yönetim Paneli >> Ayarlar bölümünde yer alıyor. AÅŸağıdaki resimde, bbPress kurulumuyla gelen üç çeÅŸit kalıcı baÄŸlantı yapılarını görebilirsiniz.

Arkadaşlar bbPress sitelerinize kalıcı bağlantı yapılarını uygulamak için şu adımları takip edin.
Options +MultiViewsBu iÅŸlemleri doÄŸru ve düzgün bir biçimde gerçekleÅŸtirdiysek seçmiÅŸ olduÄŸunuz kalıcı baÄŸlantı yapısı bbPress sitenizde baÅŸarıyla çalışacaktır. Yalnız yukarıdaki kalıcı baÄŸlantı yapıları biraz basit. Google isim tabanlı kalıcı baÄŸlantı yapılarını daha çok seviyor. Onun için birçok forum sitesi isim tabanlı kalıcı baÄŸlantı yapısını sitesine tam anlamıyla uygulayabilmek için hertürlü çabayı gösteriyor. Ama biz bunu bbPress’te basitçe yapabileceÄŸiz. Yukarıdaki resimde de görmüş olduÄŸunuz gibi bbPress sitemize isim tabanlı kalıcı baÄŸlantı yapısını uygularsak sitemizin kalıcı baÄŸlantıları ÅŸu halde olacaktır.
Forumdaki Arabalar kategorisi için kalıcı bağlantı
site.com/forums/arabalar
Forumdaki Arabalar kategori içersinde yer alan Renault başlıklı yazı için kalıcı bağlantı
site.com/topics/renault
Bizde yukarıda görmüş olduğunuz bbPress isim tabanlı kalıcı bağlantı yapısını düzenleyip, geliştireceğiz. Birçok kişinin uğraşarak yaptığı isim tabanlı kalıcı bağlantı yapısını basitçe yapacağız. Birazdan yapacağımız bbPress isim tabanlı kalıcı bağlantı yapısı aşağıdaki gibidir.
Forumdaki Arabalar kategorisi için kalıcı bağlantı
site.com/arabalar
Forumdaki Arabalar kategori içersinde yer alan Renault başlıklı yazı için kalıcı bağlantı
site.com/arabalar/renault
Şimdi yapacağımız bbPress isim tabanlı kalıcı bağlantı yapısını yukarıda gördük. Hemen sitemize uygulamaya başlayalım.
Arkadaşlar öncelikle bb-include/template-functions.php dosyasında ?> kodunu bulup hemen üstüne aşağıdaki kodları ekliyoruz.
[sourcecode language="php"]function my_get_forum_link_filter( $link , $forum_id = 0 ) {
$forum = get_forum( get_forum_id( $forum_id ));
$rewrite = bb_get_option( ‘mod_rewrite’ );
if ( $rewrite ) {
$column = ($rewrite === ‘slugs’)?(‘forum_slug’):(‘forum_id’);
$link = str_replace(‘forum/’ . $forum->$column , $forum->$column, $link);
}
return $link;
}
add_filter( ‘get_forum_link’, ‘my_get_forum_link_filter’ );
function my_get_topic_link_filter( $link, $topic_id = 0) {
$topic = get_topic( get_topic_id( $topic_id ));
$forum = get_forum( get_forum_id( $topic->forum_id ));
$rewrite = bb_get_option( ‘mod_rewrite’ );
if ( $rewrite ) {
$column = ($rewrite === ‘slugs’)?(‘forum_slug’):(‘forum_id’);
$forum_nice_uri = "forum/" . $forum->$column . "/";
$link = str_replace(bb_get_option(‘uri’), bb_get_option(‘uri’) . $forum_nice_uri, $link);
$link = str_replace(‘forum/’ . $forum->$column , $forum->$column, $link);
$link = str_replace(‘topic/’ . $topic->$column , $topic->$column, $link);
}
return $link;
}
add_filter( ‘get_topic_link’, ‘my_get_topic_link_filter’ );
function my_bb_slug_sanitize_filter( $text_slug, $text_original = ”, $length = 0 ) {
return preg_replace(‘/^(my-.*|bb-.*|rss|tags|view|profiles)$/’, ‘r-’, $text_slug);
}
add_filter( ‘bb_slug_sanitize’, ‘my_bb_slug_sanitize_filter’ );
[/sourcecode]
Yapacağımız bu adımıda gerçekleştirdikten sonra isim tabanlı kalıcı bağlantı yapısını bbPress sitemize tamamen uygulamış olacağız. Şimdi hemen .htaccess (Dosya içersinde başka kodlarda varsa aşağıdaki kodları .htaccess dosyasının en sonuna ekleyin.) dosyasına aşağıdaki kodları ekliyoruz.
[sourcecode language="php"]<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
Options +FollowSymlinks
RewriteRule ^tags/([^/]+)/page/([0-9]+)/?$ tags.php?tag=$1&page=$2 [L,QSA]
RewriteRule ^tags/([^/]+)/?$ tags.php?tag=$1 [L,QSA]
RewriteRule ^tags/?$ tags.php [L,QSA]
RewriteRule ^profile/([^/]+)/page/([0-9]+)/?$ profile.php?id=$1&page=$2 [L,QSA]
RewriteRule ^profile/([^/]+)/([^/]+)/?$ profile.php?id=$1&tab=$2 [L,QSA]
RewriteRule ^profile/([^/]+)/([^/]+)/page/([0-9]+)/?$ profile.php?id=$1&tab=$2&page=$3 [L,QSA]
RewriteRule ^profile/([^/]+)/?$ profile.php?id=$1 [L,QSA]
RewriteRule ^view/([^/]+)/page/([0-9]+)/?$ view.php?view=$1&page=$2 [L,QSA]
RewriteRule ^view/([^/]+)/?$ view.php?view=$1 [L,QSA]
RewriteRule ^rss/?$ rss.php [L,QSA]
RewriteRule ^rss/forum/([^/]+)/?$ rss.php?forum=$1 [L,QSA]
RewriteRule ^rss/topic/([^/]+)/?$ rss.php?topic=$1 [L,QSA]
RewriteRule ^rss/tags/([^/]+)/?$ rss.php?tag=$1 [L,QSA]
RewriteRule ^rss/profile/([^/]+)/?$ rss.php?profile=$1 [L,QSA]
RewriteRule ^([^.]+)/([^.]+)/page/([0-9]+)/?$ topic.php?id=$2&page=$3 [L,QSA]
RewriteRule ^([^/.]+)/([^.]+)/?$ topic.php?id=$2 [L,QSA]
RewriteRule ^([^/.]+)/page/([0-9]+)/?$ forum.php?id=$1&page=$2 [L,QSA]
RewriteRule ^([^/.]+)/?$ forum.php?id=$1 [L,QSA]
</IfModule>
[/sourcecode]
Önemli Not: Arkadaşlar uygulamayı sitenize uygularken birtakım sorunlarla karşılaştıysanız lütfen yorum olarak sorunu ve gerçekleştirdiğiniz adımları yazın. Elimden geldiğince sorunlarınızı çözümlemeye çalışacağım.
Bu yazı İbrahim Çakıcı tarafından yazılmıştır.
Çok iyi bir makale olmuş elinize sağlık.
İbrahim çok güzel yazı yazmışsın emeğine sağlık.
Teşekkürler backdoor :)
ben kalıcı bağlantı ypatım ama öbür sayfalarım 404 hatsaı verdi bende eski ayarıma dönmek zorunda kaldım ne yapmalıyım
Malesef buradan size net bir yanıt veremeyiz çünkü elde sağlam bir hata mesajı yok. Bu konuyu bilen, size zaman ayırabilecek birilerinden veya forumlardan yardım alabilirsiniz
Merhaba
Benim ana dizinimde wordpress, forum subdomainimde ise bbpress var. Ben en üstteki kalıcı bağlantısını kullanmak istiyorum. Bunun için htaccess dosyasına eklemem gereken ufak bir kod vermişsiniz. Acaba bu anadizindeki (WordPress yanında olan) htaccess dosyasınamı ekleyeceğim. Yoksa forum subdomainine bir htaccess dosyası olusturup yazacağım. Çünkü subdomainde öyle bir dosya yok.
Teşekkürler. İyi çalışmalar.
Konu hakkında uzman deÄŸilim ancak sanıyorum subdomaine ait olan klasörün htaccess’ine ekleyeceksinixz.
Tesekkurler, Dediklerini aynen yaptim ve istedigim sonucu aldim. Yalniz bbpres admin sayfama giremiyorum. Girmek istedigimde yine forumun ana sayfasi geliyor. Yukarida yazdiklarini forum.siteadi.com seklinde subdomaine uyguladim.
isim tabanlı adresin uygulanabilmesi için hostun linux olması gerektiğini duymuştum, acaba bu yönetemi windows host larada uygulayabilir miyiz?
Serverınızın tabanı ile alakalı bir durum sözkonusu. İnternette kısa bir araştırma yaparsanız detaylı bilgilere ulaşabilirsiniz.
Ellerinize SaÄŸlık…
Anlaşılır ve Yeterli olmuş.Nitekim aradağımız buldum
ellerinize sağlık süper olmus bayaa işimi gördü :) Allah razı olsun.
Güzel yazı teşekkürler.