İlk içerik ağırlıklı WordPress sitemizi başlattığımızda, blog gönderisi başlıklarının bir sorun olacağını hiç düşünmemiştik. Uzun başlıklarımızdan bazıları güzel düzenimizi bozuyordu, diğerleri ise mobil cihazlarda dağınık görünüyordu.
Birden fazla WordPress sitesini yönetme ve web sitesi sahiplerine yardım etme yıllarımız boyunca, gönderi başlıklarını budamanın, kitlenizin dikkatini çeken tutarlı, rafine bir görünüm sağladığını keşfettik.
Bu rehberde, WordPress blog başlıklarınızı PHP ile otomatik olarak kısaltmak için etkili teknikler paylaşacağız, böylece her şeyin keskin görünmesine yardımcı olacağız.

Neden WordPress'te PHP ile Gönderi Başlıklarını Kesmelisiniz?
PHP ile WordPress'te gönderi başlıklarını kesmek, gönderi başlıklarınızın uzunluğu ve web sitenizde nasıl görüntülendiği üzerinde size daha fazla kontrol sağlar.
Örneğin, ana sayfanızdaki uzun gönderi başlıklarını kesmek isteyebilirsiniz, böylece WordPress blogunuzun tasarımını bozmazlar.

Bunu yapmak ayrıca blogunuzu görsel olarak hoş tutmaya ve okuyucularınız için gezinmeyi kolaylaştırmaya yardımcı olur.
Not: Amacınız daha kısa başlıklar kullanarak blog yazılarınızı SEO için optimize etmekse, kısaltma gerekli olmayabilir. Bunun yerine, bir WordPress SEO eklentisi kısa, etkili SEO başlık etiketleri oluşturmayı basitleştirebilir.
Arama sonuç sayfaları için özel SEO başlıkları oluşturmanıza olanak tanırken, sitenizdeki ziyaretçileriniz için daha uzun gönderi başlıklarını korumanıza olanak tanıdığı için All in One SEO (AIOSEO) öneririz.
Daha fazla ayrıntı için, AIOSEO'yu doğru şekilde nasıl kuracağınıza ilişkin nihai kılavuzumuza bakın.
Şimdi, PHP kullanarak sitenizdeki WordPress gönderi başlıklarını kırpmanın iki yolunu inceleyelim:
- Yöntem 1: WordPress Fonksiyonu ile WordPress Gönderi Başlıklarını Kısaltma
- Yöntem 2: WordPress Tema Dosyalarını Değiştirerek WordPress Gönderi Başlıklarını PHP ile Kısaltma
Yöntem 1: WordPress Fonksiyonu ile WordPress Gönderi Başlıklarını Kısaltma
WordPress gönderi başlıklarını WordPress'te kesmenin en kolay yolu, WordPress dosyalarınıza PHP kodu eklemektir. Bunu daha önce yapmadıysanız, WordPress'e kod kopyalayıp yapıştırma hakkındaki rehberimize göz atın.
Birçok öğretici, kodu doğrudan temanızın functions.php dosyasına eklemenizi söyleyecektir. Ancak, herhangi bir hata hatalara neden olabilir veya sitenizi bozabilir.
Bu nedenle, bunun yerine ücretsiz WPCode eklentisini kullanmanızı öneririz. Tema dosyalarını doğrudan değiştirmeden WordPress sitenize özel kod eklemeyi ve yönetmeyi kolaylaştıran kullanışlı bir araçtır.
WPBeginner'da özel kod parçacıklarımızı eklemek ve yönetmek için eklentiyi kullanıyoruz. Daha fazla bilgi edinmek için WPCode hakkındaki tam incelememize göz atabilirsiniz.
Öncelikle, WPCode ücretsiz eklentisini yükleyip etkinleştirmeniz gerekir. Bu konuda yardıma ihtiyacınız varsa, lütfen WordPress eklentisi nasıl kurulur hakkındaki adım adım kılavuzumuza bakın.
Etkinleştirdikten sonra, yönetici kenar çubuğunuzdan Kod Parçacıkları » + Parçacık Ekle'yi seçin. Ardından, ‘Özel Kodunuzu Ekleyin (Yeni Parçacık)’ seçeneğinin üzerine fareyle gelin ve ardından görünen ‘Özel Parçacık Ekle’ düğmesine tıklayın.

Bu, parçacık için bir başlık yazabileceğiniz ve ardından kodu ekleyebileceğiniz yeni bir sayfa açacaktır.
Aşağıdaki kodu WPCode'daki Kod Önizleme bölmesine yapıştırmanız yeterlidir.
function max_title_length( $title ) {
$max = 35;
if( strlen( $title ) > $max ) {
return substr( $title, 0, $max ). " …";
} else {
return $title;
}
}
add_filter( 'the_title', 'max_title_length');
Kodu ekledikten sonra böyle görünmelidir.

Bu kod, WordPress gönderi döngünüz içinde çalışacak ve blog gönderi başlıklarınızı 35 karaktere indirecektir. Başlığınızın uzunluğunu değiştirmek için, $max değişkenini tercih ettiğiniz başlık uzunluğuna ayarlamanız yeterlidir.
Yardıma ihtiyacınız olursa, WordPress'e özel kod ekleme hakkındaki makalemize göz atın.
Ardından, Kod Türü açılır menüsünden ‘PHP Parçacığı’nı seçmeniz gerekir.
Son olarak, Etkin ayarı açmanız ve ardından 'Kod Parçasını Kaydet' düğmesine tıklayarak kod parçasını kaydetmeniz gerekecektir.

Kod parçacığı artık aktif olduğundan, blog gönderisi başlıklarınız WordPress web sitenizde göründüğü her yerde kısaltılacaktır.
Aşağıdaki ekran görüntüsünde gösterildiği gibi, başlık 35 karakterde durur ve sonunda elips '...' ile devam eder.

Yöntem 2: WordPress Tema Dosyalarını Değiştirerek WordPress Gönderi Başlıklarını PHP ile Kısaltma
WordPress gönderi başlıklarını kesmenin bir diğer yolu da kodu doğrudan WordPress tema dosyalarınıza eklemektir.
Bu yöntem, başlıklarınızın nerede kısaltılacağı konusunda size daha fazla kontrol sağlar. Örneğin, başlıkları yalnızca ana sayfanızda kesmek isteyebilir, ancak blog gönderisinde tam uzunlukta başlığı görüntülemek isteyebilirsiniz.
⚠️ Profesyonel İpucu: 2. Yöntem ile devam etmeden önce, temanızı güncellemenin özel değişiklikleri üzerine yazabileceğini unutmayın.
Özelleştirmelerinizi kaybetmeden sitenizi güncel tutmak için, WordPress temanızı özelleştirmeleri kaybetmeden nasıl güncelleyeceğiniz hakkındaki rehberimize göz atın.
Bunu yapmak için, blog gönderisi başlıklarınızı kesmek istediğiniz yere PHP kodunu doğrudan WordPress tema dosyalarına eklemeniz gerekecektir.
Örneğin, başlık uzunluğunu site genelinde değiştirmek için mevcut the_title etiketini WordPress gönderi döngünüzdeki ile değiştirmek üzere aşağıdaki kod parçasını index.php dosyanıza ekleyebilirsiniz:
<a href="<?php the_permalink() ?>">
<?php
$thetitle = $post->post_title; /* or you can use get_the_title() */
$getlength = strlen($thetitle);
$thelength = 25;
echo substr($thetitle, 0, $thelength);
if ($getlength > $thelength) echo "...";
?>
</a>
Bu kod, gönderi başlığının uzunluğunu 25 karaktere ayarlar. Başlığın uzunluğu 25 karakterden fazlaysa, başlığı 25 karakterden sonra keser ve sonuna üç nokta '…' ekler.
Web siteniz için karakter uzunluğunu değiştirmek üzere, $thelength değişkenini tercih ettiğiniz karakter sayısına değiştirmeniz yeterlidir.
Kodu ekleyip dosyanızı kaydettikten sonra, onu WordPress barındırma hesabınızdaki tema dizininize yüklemeniz gerekir.
Bunu bir FTP istemcisi kullanarak veya WordPress barındırma kontrol panelinizdeki dosya yöneticisi aracını kullanarak yapabilirsiniz. Daha önce FTP kullanmadıysanız, WordPress'e dosya yüklemek için FTP kullanma hakkındaki rehberimize göz atın.
Kod eklendikten sonra, gönderi başlıklarınız belirlediğiniz karakter sayısına indirilecektir.
Umarız bu makale, PHP kullanarak WordPress gönderi başlıklarını nasıl kırpacağınızı öğrenmenize yardımcı olmuştur. Ayrıca, harika bir blog yazısının nasıl yazılacağına dair rehberimize ve WordPress için en iyi içerik pazarlama araçları ve eklentileri hakkındaki uzman seçimlerimize de göz atmak isteyebilirsiniz.
Bu makaleyi beğendiyseniz, lütfen WordPress video eğitimleri için YouTube Kanalımıza abone olun. Bizi ayrıca Twitter ve Facebook'ta da bulabilirsiniz.

kzain
Bu uzun başlıkları temizlemek için harika bir çözüm!
Özellikle akılda kalıcı başlıklarla, bazen işler biraz kontrolden çıkabilir. Bu özel fonksiyonun uygulanması basit görünüyor, ancak PHP kısmı için bir arkadaşımdan yardım almam gerekebilir.
Achintha
Merhaba Kelimeleri sınırlamak için bir wordpress fonksiyonu var. Onu kullanmak daha iyi.
http://codex.wordpress.org/Function_Reference/wp_trim_words
dustinporchia
Bu harika!….Teşekkürler wpbeginner!
adm_mnz
mb_substr kullanırsanız, kodlama için bir parametre vardır.
http://php.net/manual/en/function.mb-substr.php
Junaid
Harika! Bir müşteri projesi için arıyordum
Marco
previous_post_link(); fonksiyonundaki bağlantı başlığının nasıl kesilebileceğini bilen var mı?
teşekkürler
Gözat
Teşekkürler, bu mükemmel çalıştı! Sadece bunu yapmak için bir eklenti kullanmak istemedim ve kodunuzun başlıkları düzgün bir şekilde kısalttığını görmek beni mutlu etti.
Tekrar teşekkürler!
Joey Figaro
Merhaba – bunu yazdığınız için teşekkürler! Bunu başarmak için başka bir örnekle karşılaştım ve çok daha basit görünüyordu, bu yüzden sizinle paylaşacağım ve ne düşündüğünüzü göreceğim.
functions.php:
function new_excerpt_length($length) { return 100; } add_filter(‘excerpt_length’, ‘new_excerpt_length’);
Yayın Kadrosu
Bunlar tamamen farklı iki kavramdır…. Önerdiğiniz, gönderi özetleri içindir, bahsettiğimiz ise Gönderi Başlıkları içindir.
Yönetici
Joey Figaro
Wow, that’s embarrassing.
Lena
Merhaba!
Bu, İngilizce dışındaki dilleri kullanırsanız çalışmaz. İsveççe başlığım berbat görünüyor çünkü kod, varsayılan kodla karşılaştırıldığında å ä ve ö karakterlerini çevirmiyor. Ne yapmam gerektiğine dair herhangi bir öneriniz var mı? Bu harika bir hile ve bunu kullanmak istiyorum.
Saygılarımla Lillan
Yayın Kadrosu
Hmm… bu ciddi bir sorun gibi görünüyor. Dilin PHP aracılığıyla belirtilip belirtilemeyeceğini merak ediyorum, böylece İngilizce yerine o dildeki karakterleri sayar.
Yönetici
Alex
You might wanna try to specify a different charset, check Latin1 or utf8 i think they contain those chars as well.. I had some similar issues recently since my first language is german
Yayın Kadrosu
Thank you for helping out Alex
Ben Kulbertis
Trackback için teşekkürler!
Yayın Kadrosu
We appreciate your work for the community. Thanks for the nice snippet
Yönetici
Navjot Singh
Bir Öneri, bu tür kodlar index.php yerine functions.php'ye dahil edilmelidir. Kodu istediğiniz sayfaya, ister ana sayfa ister başka bir sayfa olsun, kısıtlamak için koşullu etiketleri kullanabilirsiniz.
Yayın Kadrosu
Bu sadece belirli alanlar içindir… Ama evet, özelleştirilebilir ve functions.php'ye yerleştirilebilir.
Yönetici
Thomas Scholz
strlen() kullanmayın. mb_strlen() veya strlen(utf8_decode($str)) kullanın, aksi takdirde çok baytlı bir karakterin içindeki dizeyi kesme riskiniz vardır. Aynı durum mb_substr() için de geçerlidir.
Oh, and an ellipsis is one character: …
snipsley
Teşekkürler!! mb_strlen() ve mb_substr kodlamamla ilgili sorunumu çözdü. Saatlerdir bunu arıyordum!
Lena Backstedt
Çok teşekkürler!
mb_strlen() İsveç dili için de çalışıyor gibi görünüyor (şimdilik görebildiğim kadarıyla)