Bu makaleyi yazmanın arka planı tipiktir: Yorumlarımı ayrı bir stille vurgulamaya karar verdim... Neyse ki birkaç gündür style.php'yi parçalıyorum ve CSS sözdiziminin temel kurallarını biliyorum. Ve tabi ki bu masum fikir hafif bir utanca, bir çözüm arayışına dönüştü... Sonunda her şey yolunda gitti. Şimdi size kendi yorumlarımı süslemek için hangi sihirli geçişleri kullandığımı anlatmak istiyorum.
Aşağıda açıklanan tüm manipülasyonların amacı, yorumlarınızı ve okuyuculara yanıtlarınızı vurgulamaktır. Eğer stillerde aşırıya kaçmazsanız oldukça şık görünecektir. Elbette bu hayati bir gereklilik değil. Yorumlarınızı görüntülemeye karar veren herkes bunu takma adla yapabilecektir. Ancak birçok blogcu için güzellik fikri de önemlidir.
Ayrıca yazarın cevaplarının birçok büyük ve iyi düşünülmüş sitede (örneğin smashingmagazine) nasıl formatlandığına dikkat ederseniz onlar için ayrı bir stil göreceğiz. Açıkçası bu, kullanılabilirliğin iyileştirilmesine yardımcı olacaktır.
Oldukça derin bir iç içe geçme derecesine sahip ağaç benzeri yorumlara izin verilen bloglardaki yazar yorumları için ayrı bir stil kullanmak özellikle önemlidir. Basitçe söylemek gerekirse, kullanıcının yorumlara yanıt verebileceği, yanıtlara yanıt verebileceği vb. yer.
Halihazırda kullanımda olan yorum stillerine bakalım
Bir bakıma sondan başlayarak önerdiğime şaşırmayın. Ancak WordPress temalarını düzenleme konusunda kendini tam olarak rahat hissetmeyen kullanıcılar için bu, en görsel ve açık yoldur.
Bu nedenle, blogunuzda yorum içeren bir gönderi seçin. Elbette burada sizin cevaplarınıza da ihtiyacımız var. Böyle bir sayfayı açtıktan sonra üzerine sağ tıklayın ve “Sayfa kodunu görüntüle” seçeneğini seçin (Google Chrome ve Firefox tarayıcılarında kesinlikle böyle bir seçenek vardır).
Bir kod sayfası gördüğünüzde korkmayın. Aslında burada karmaşık veya gizli hiçbir şey yok. Sayfayı aşağı doğru kaydırdığınızda, önce gönderiyle ilgili genel bilgilerin, ardından biçimlendirmeli metnin görüntülendiğini fark edeceksiniz. Son olarak yorumlarla ilgili kodu aşağıda bulabilirsiniz. Basitçe Ctrl+F yazıp görüntülenen pencereye girebilirsiniz. yorum listesi ve Enter tuşuna basın - hemen aranan kelimenin parlak bir şekilde vurgulanacağı istediğiniz satıra "atılacaksınız".
Şimdi yorum stillerimizin nasıl işaretlendiğine bakalım. Açıklık getirmek gerekirse, kod benim temamdan. Elbette sizinki biraz farklı görünebilir ve yapılandırılmış olabilir, ancak kodun ayrı ayrı bölümlerinin ana anlamı açık olmalıdır:
YORUM METNİ
- id = "li-yorum-">
$derinlik,"maks_derinlik" => $args["maks_derinlik"]))); ?>
- , Çünkü WordPress, iç içe geçmiş yorumların işaretlenmesine göre otomatik olarak kapanış etiketleri oluşturacaktır.
Bu işlev, yayınlandıktan sonra yorumlar oluşturulduğunda çağrılacak ve gerekli düzenlemeleri yapmanıza olanak tanıyacaktır. İşin püf noktası, ihtiyacımız olan her şeyi standart ve oldukça sınırlı ayarları kullanarak yapmamızdır. wp_list_comments()
Şimdi eski yöntemlere geri dönelim - wp_list_comments ile birlikte bir foreach döngüsü koyacağız
Bu kullanım, şablonun WordPress'in eski sürümleriyle geriye dönük olarak uyumlu olmasını sağlayacaktır.
Artık bir yorum döngüsünü nasıl kuracağımızı bildiğimize göre, onu ihtiyaçlarımıza uyacak şekilde değiştirelim ve bazı harika hileler uygulayalım.
Sayfa sayfa yorumları uygulama
Sitedeki içeriğin yüzlerce yorum çekebileceğini kimse önceden bilemez. Demek istediğim, hepimiz süperstarız ve başarı beklenmedik bir şekilde gelebilir. Yüzlerce yorum içeren bir gönderiyi izlemek ve geri sarmak inanılmaz derecede uzun olabilir. Genel olarak dikey kaydırmadan kesinlikle korkmuyoruz (yatay kaydırmanın aksine), ancak her şeyin sınırları olmalıdır. 60 yorum içeren tipik bir gönderinin yüksekliği 20 bin piksele kadar çıkabilir!
İşleri düzenli tutmanın harika bir yolu, yorum akışınızı sayfalara ayırmak ve bunları sayfa sayfa görüntülemektir.
Sayfalandırmayı etkinleştirdikten sonra, "Önce" ve "Sonra" bağlantılarını görüntülemek için comments.php dosyanıza işlevler eklemeyi unutmayın.
Bu bağlantılar otomatik olarak görünecek ve sayfa başına belirtilen yorum sayısı aşıldığında yorum sayfasını kesecektir. Bu sayıdan daha az yorum olması durumunda bağlantılar görüntülenmeyecektir.
Ve burada bir sorun var. İçeriğin sayfa sayfa yorumlarla kopyalanmasıyla ilgili iyi bilinen SEO sorunu ortaya çıkıyor. Bunun nedeni, her yorum sayfası için aynı URL'lerin oluşturulmasıdır.
- https://yoursite.com/ghost-dad-rocked/
- https://yoursite.com/ghost-dad-rocked/comments-page-1/
- https://yoursite.com/ghost-dad-rocked/comments-page-2/
- https://yoursite.com/ghost-dad-rocked/comments-page-3/
Sadece bu sayfalardaki yorumların farklı olacağı açıktır. Genel tabloyu daha da kötüleştiren şey, her yorumun yayınlanma zamanı ile kendine özgü bir bağlantısının olması ve bu da birçok kopyanın eklenmesine neden oluyor. Bu nedenle, arama botu aynı içeriği çok sayıda farklı bağlantı altında bulacaktır.
Tekrarlamayı önlemek için birkaç çözüm vardır:
- Sayfa yorumlarını kullanmayın
- Her gönderi için standart URL'ler oluşturmak amacıyla meta etiketleri kullanın
- Eklentiyi kullan
Siteniz çok popülerse veya öyle olacaksa elbette kanonik URL'leri kullanmak daha iyidir. Eğer hararetli tartışmalar planlanmamışsa, sayfalara ayırmadan geleneksel yorum sayfalarını kullanmak daha kolaydır.
Sayfalandırılmış Yorumlar için SEO daha da radikal bir yaklaşım benimser; gönderinin içeriğini yorum sayfalarından kaldırır ve yerine bir alıntı veya gönderinin kısaltılmış bir versiyonunu koyar.
İç içe yorumları uygulama
İç içe geçmiş ağaç yorumları, ziyaretçilerin seçilen mevcut bir yoruma yanıt yazmasına olanak tanıyarak zengin bir tartışma diyalogu oluşturur. Ayarlarda bu özelliği etkinleştirdikten sonra, her yorumun yanında belirli bir yorum hakkında konuşmanıza olanak tanıyan bir "Yanıtla" bağlantısı görünecektir.
Bu ihtimal ortaya çıkmadan önce, seçilen yazara, yorum metninde ismini ve @ işaretini kullanarak “@Vasya yanılıyorsun!” gibi bir cevap verme tarzı vardı. Bazı dönüşümlerle bu yöntem İnternet'teki birçok uygulamada kök saldı ve örneğin Twitter'da hala yaşıyor. Ve WordPress'in modern sürümlerinde böyle bir sözün kullanılmasına gerek yoktur.
Şimdi sadece uygun “Yanıtla” bağlantısını tıklayıp konuşmanız yeterli. Yorum metni onaylandıktan sonra hakkında yazıldığı yorumun hemen altında görünecektir.
Şablonunuz bu tür yorum yapmayı desteklemiyorsa eklemenin kolay bir yolu vardır:
- Teoride zaten bir alışkanlık haline gelmesi gereken dosyaların yedek kopyalarını oluşturuyoruz
- Ayarlarda iç içe yorumları etkinleştirin Seçenekler→Tartışma Ayarları→Ağaç Yorumlarına İzin Ver
- Aşağıdaki kodu wp_head()'den hemen önce head.php dosyasına ekleyin
- Comments.php'ye kapanış etiketinin hemen öncesine ekleyin
- Bunu kontrol edelim
- Yorum formunun ekte olup olmadığını kontrol ediyoruz id = "yanıtla" özelliğiyle
- Yorum formunun hemen öncesine yorum iptal bağlantısı ekleyin
- Comments.php'de eski döngüyü güncellenmiş döngüyle değiştiriyoruz
Hepsi bu kadar :) Geleneksel olarak, bunu ihtiyaçlarınıza uyacak şekilde özelleştirmenin ve yeniden yapmanın trilyonlarca farklı yolu vardır, ancak sanırım fikri anladınız. Tek yapmanız gereken iç içe geçmiş yorumların stillerini ayarlamayı unutmayın
Yorum listesi li.derinlik-1() .yorum listesi li.derinlik-2() .commentlist li.derinlik-3()
Yorumları, geri pingleri ve geri izlemeleri ayırıyoruz
Gönderinize verilen yanıtları görüntülerken karışıklığı azaltmanın etkili bir yolu, yorumları ve ping'leri ayrı ayrı görüntülemektir. Bu sadece tartışmaların akışını kesintiye uğratmayacak, aynı zamanda yorumlara daha fazla dikkatin odaklanmasını da sağlayacaktır.
Bu en eski hilelerden biridir ve bunu uygulamanın birçok yolu vardır; burada wp_list_comments() parametrelerini kullanan basit bir bölme örneği verilmiştir:
Yorumlar
Geri Pingler/Geri İzlemeler
Ancak bu kodun bir dezavantajı vardır; hiçbir yorum veya ping olmasa bile başlıklar görüntülenecektir. Biraz geliştirilmiş bir sürümü kullanmak daha iyi olurdu:
Yorumlar
Geri İzlemeler/Geri Pingler
Geri pingler görüntülendiğinde, etrafında bağlantı veren siteden alınmış bir metin parçası bulunan bir bağlantı görüntülenir. Bu snippet farklı boyutlarda olabilir ve kontrol edilmesi zordur çünkü... Orada nelerin sergileneceği önceden bilinmiyor. Neyse ki, yalnızca düzenli bir bağlantı listesi görüntüleyerek bu metnin görünümünü temizleyebilirsiniz. Bunu yapmak için Function.php dosyasına eklemeniz gerekir.
function cleanPings($yorum, $args, $derinlik) ( $GLOBALS["yorum"] = $yorum; echo "
- ".comment_author_link()."
";}Daha sonra gerekli geri çağırma parametresini yorum işlevi çağrısına ekleyin
Geri pingleri ve geri izlemeleri yok etme
İnsanların sitenize bağlanmasını engelleyemezsiniz, ancak geri izlemeleri ve geri pingleri bu sitelerde görüntülememeyi seçebilirsiniz. Başlangıçta, İnternet'teki diğer pek çok şey gibi, geri bildirimler de iyi amaçlar için icat edildi; yani birisinin sizinle bağlantı kurduğunu bildirmek. Ve şimdi bazı insanlar bunları kullanmaya ve geri çekmeye devam ediyor. Ancak geri izleme teknolojisi, yoğun spam nedeniyle kendisini tamamen gözden düşürdü, bu nedenle bunları devre dışı bırakmak daha iyi olacaktır.
Yönetici panelinden pinglerin görüntülenmesini devre dışı bırakın
Bunu yapmak için Tartışma ayarlarında seçeneğin işaretini kaldırın. Diğer bloglardan gelen bildirimlere izin ver. Bu, geri ping ve geri izleme işlevlerini tamamen devre dışı bırakır, ancak ayrı olarak seçilen bir giriş için bu özelliği ayarlardan etkinleştirebilirsiniz.
Yorumlardan ping'leri hariç tutma
wp_list_comments() işlevi için parametreyi kullanıyoruz, yalnızca yorumların görüntülenmesine izin veriyoruz
wp-trackback.php'yi silin
Bu çok basit ve etkili bir yoldur - wp-trackback.php dosyasını fiziksel olarak silme WordPress kök dizininden. Bu kesinlikle güvenli bir yöntemdir, ancak dosya WordPress yükseltmesinden sonra geri yüklenir ve tekrar silinmesi gerekir.
Eklentileri kullanmayı devre dışı bırak
Bu bir eklenti kullanılarak yapılabilir
Eklentinin kendisi çok basittir ve tek bir dosyadan oluşur, dolayısıyla içeriği kolayca kopyalanıp işlevler.php dosyasına yapıştırılabilir.
Sınıf DisableTrackbacks ( function DisableTrackbacks() (add_action("pings_open", array(&$this, "pings_open"));) function pings_open($open) (return ("1" == get_query_var("tb")) ? YANLIŞ : $open;)) add_action("plugins_loaded", create_function("", "global $DisableTrackbacks; $DisableTrackbacks = new DisableTrackbacks();"));
DisableTrackbacks işlevi yerleştirildikten sonra tüm geri izlemeleri yok eder. Ancak geri pingler devam ediyor.
Yorumları doğrudan veritabanından kontrol ediyoruz
WordPress, bir gönderinin yoruma açık olup olmadığını kontrol etmenin çeşitli yollarını sunar. Yönetici panelinde, sitenin tamamında gelecekteki gönderilere yorum bırakılmasını tamamen yasaklayabilirsiniz. Ayrıca editördeki tek bir girişte Tartışma bloğunda yorumların ona açık olup olmayacağını seçebilirsiniz.
Ancak bu yöntemlerin hemen üstünde, tüm eski yorumları belirli bir süre sonra gizlemenize ve denetlemeye göndermenize olanak tanıyan bir eklenti vardır. Ve herhangi bir eklenti olmadan, veritabanına yapılan basit sorgularla yorum yapmayı etkinleştirebilir veya devre dışı bırakabilirsiniz.
Tüm kullanıcılar için ping'lere genel olarak izin ver
GÜNCELLEME wp_posts SET ping_status = "açık";
Tüm kullanıcılar için ping'leri küresel olarak yasakla
GÜNCELLEME wp_posts SET ping_status = "kapalı";
Belirli bir yayın tarihine kadar ping'leri küresel olarak yasakla
GÜNCELLEME wp_posts SET ping_status = "kapalı" WHERE post_date< "2009-09-09" AND post_status = "publish";
Bu tür talepler periyodik temizliğe izin verir. İşte küresel izin veya yorum yasaklama taleplerine bir örnek
GÜNCELLEME wp_posts SET comment_status = "açık", ping_status = "açık" WHERE comment_status = "kapalı" VE post_status = "yayınla";
PHP'deki yorumlar HTML'de kullanılan yorumlara benzer. PHP sözdiziminde yorumlar her zaman özel bir karakter dizisiyle başlar ve bu özel karakterler arasında görünen tüm metinler yorumlayıcı tarafından dikkate alınmaz.
HTML'de yorumun asıl amacı, sitenizin kaynak kodunu görüntüleyebilecek geliştiricilere not görevi görmektir. PHP yorumları ziyaretçilere gösterilmeyecekleri için farklıdır. PHP yorumlarını görüntülemenin tek yolu dosyayı düzenlemek için açmaktır. Bu, PHP yorumlarının yalnızca PHP programcıları için yararlı olmasını sağlar.HTML'de yorumların nasıl yapıldığını unuttuysanız veya bilmiyorsanız aşağıdaki örneğe bakın.
PHP yorum sözdizimi: tek satırlı yorum
Html'de yalnızca bir tür yorum bulunurken, PHP'de iki tür yorum bulunur. Tartışacağımız ilk tür tek satırlık yorumdur. Yani tercümana, yorumların sağındaki bu satırda olup biten her şeyi görmezden gelmesini söyleyen bir yorum. Bu yorumu kullanmak için "//" veya "#" karakterlerini kullanın; sağdaki tüm metinler PHP yorumlayıcısı tarafından göz ardı edilecektir.
Psst...PHP yorumlarımı göremiyorsun!"; // echo "hiçbir şey"; // echo "Benim adım Humperdinkle!"; # echo "Ben de hiçbir şey yapmıyorum"; ?>
Sonuç:
Selam Dünya! Psst...PHP yorumlarımı göremiyorsun!
Echo komutlarımızdan birçoğunun, onları özel yorum karakterleri kullanarak yorumladığımız için işlenmediğine dikkat edin. Bu tür yorum genellikle karmaşık ve kafa karıştırıcı kodu hızlı bir şekilde yazmak veya bir PHP kodu satırını geçici olarak kaldırmak (hata ayıklamak için) için kullanılır.
PHP yorum sözdizimi: çok satırlı yorum
HTML yorumları gibi, PHP'deki çok satırlı yorumlar da büyük kod bloklarına yorum yapmak veya birden çok satıra yorum yazmak için kullanılabilir. PHP'de çok satırlı açıklamalar "/*" ile başlar ve "*/" ile biter. Bu karakterler arasındaki herhangi bir şey göz ardı edilecektir.
Sonuç.
Aslında sadece takma adınızı içeren yorumları bulmamız gerekiyor (örneğin, bu blogda Katyaru takma adı altında yazıp yanıt veriyorum). Ve şu şekilde başlayan gerekli satırın hemen üstünde:
Teşekkür ederim, harika bir siteniz var!