WordPress Tırnaklar Nasıl Oluşturulur ve Ayarlanır
Alıntılar, yayınlarla ilgili isteğe bağlı metinlerdir. Çoğu zaman, bu yayınların bir özeti olarak kullanılır. Yeni bir editör kullanırsanız, tarafın yanında Alıntı adlı bir seçenek olduğunu göreceksiniz:
Gutenberg’de alıntı.Görünmezse, Gutenberg ayarlarının seçeneğini etkinleştirmeniz gerekebilir. Editörün sağ üst köşesindeki Elipsis simgesini ve ardından seçeneğini tıklayın: Gutenberg ayarları.
Ardından bir teklif arayın ve etkinleştirin: Gönderi alıntısını düzenlemek için panel nasıl etkinleştirilir.
Temanızın nasıl yapılandırıldığına bağlı olarak, yayınınızı blogda, arama sonuçlarını vb. Görüntülerken bir teklif görünecektir. Örneğin, blogumuzda, tüm yayınlarımızın ilgili alıntılarla nasıl sunulduğunu görebilirsiniz: Alıntılarıyla Nelio blogunda gönderin.
Şimdi, bu alıntıyı yazmak her zaman zorunlu mu? Değilse, WordPress ne yapar? Hiç bir şey gösteriyor mu göstermiyor mu? Bu soruları cevaplayacağız ve alıntıyı ayarlamak için WordPress tarafından bize verilen seçeneklere daha yakından bakacağız. WordPress’in WordPress alıntısının bir gönderim teklifini almak için iki işlevi vardır: get_the_excerpt ve the_excerpt. Her ikisi de WP-Accesugeses/Post-Template.php’de tanımlanır ve kaynak koduna bakarsanız ,_excerpt’in yapıldığı her şeyin Get_the_Excerpt (the_excerpt ile filtreledikten sonra) yankı sonuçları olduğunu göreceksiniz. Yani, temel olarak, WordPress’in nasıl çalıştığını öğrenmek için anlamanız gereken tek şeyin Get_the_Excerpt işlevi olduğunu söyleyebiliriz.
Gördüğünüz gibi, get_the_excerpt çok basit: function get_the_excerpt ($ post = null) {// … $ post = get_post ($ post); if (boş ($ post)) {return ‘; } // … return applate_filters (‘get_the_excerpt’, $ post-> post_excerpt, $ post); } Temel olarak, bu bir gönderi içerir (ayarlamazsanız, WordPress döngüsünde bulunan gönderiyi kullanır) ve Post_Excerpt özniteliğini geri yükler. Yani bir alıntı yok gibi görünüyor, yani WordPress sonunda hiçbir şey göstermeyecek, değil mi? O kadar hızlı değil dostum. Bu işlevin aslında post_excerpt değerini doğrudan döndürmediğini unutmayın. Bunun yerine, yeni bir filtre kullanarak filtreledi: get_the_excerpt. Dolayısıyla, filtre ile ilgili eylemler varsa, sonuç değişme potansiyeline sahiptir ve artık boş bir ip haline gelmez … ve gerçekten de burada olan budur! Belirli yayınlar için bir teklif yazmazsak, ön uçta göreceğimiz şey budur:
WordPress tarafından üretilen otomatik tırnak. Yazımızın ilk kelimeleri WordPress tarafından üretilen bir alıntı olacak. WordPress kaynak kodunda hızlı bir arama yaparsak, wp_trim_excerpt işlevi, varsayılan olarak get_the_excerpt filtresi ile ilgili yalnızca bir eylem olduğunu göreceğiz. Özellikle, WP-IninCludes/Varsayılan-Filters.php’de WP_TRIM_EXCERPT adlı işlevin bağlı olduğunu görüyoruz. WordPress belgelerine göre, WP_TRIM_Excerpt, en fazla 55 kelimeye sahip bir teklif üretmekten sorumludur ve gerekirse elipsis eklenir. Ve bu anahtardır: işlev, bir alıntı yapmanın “gerekli” olmasını varsayar (genel olarak, kullanıcıların editörde teklif yazmadığını söylemekle eşdeğerdir). Bunu kaynak kodu işlevinde görebilirsiniz: işlev wp_trim_excerpt ($ text = ”, $ post = null) {$ raw_excerpt = $ text; if (” == $ text) {$ post = get_post ($ post); $ text = get_the_content (”, false, $ yazı); // […] »Gönderi içeriğini kullanarak alıntı oluşturur} return} Appl_filters (‘wp_trim_excerpt’, $ text, $ raw_excerpt); } Görmek? Alıntı yoksa ($ metin boş bir dize), geçerli gönderme içeriğini alın ($ Post’tan get_the_content) ve bir teklif üretmek için kullanın.
Şu andan itibaren, WordPress’in bir kaynak kodu nasıl ürettiğini kazmaya ve bulmaya devam edebilirsiniz. Ancak, bence fikri aldınız, bu yüzden belgelere tekrar bakalım, çünkü bu konuyu açıklıyor:
Gerekirse elipsis eklenerek en fazla 55 kelimeyi geri yükleyin. Limit 55 kelime Exkerpt_Length filtreleri kullanılarak eklentiler/temalar tarafından değiştirilebilir. String ‘[…]’ Exkerpt_more filtreleri kullanılarak eklentiler/temalar tarafından değiştirilebilir. Dokümantasyon WP_TRIM_EXCERPT Şimdi, WordPress tarafından yazınız için üretilen otomatik alıntıyı tam olarak ayarlamak için bilinmesi gereken her şeyi biliyorsunuz. Otomatik Tırnaklar Nasıl Ayarlanır Otomatik alıntıları ayarlamak için bugünün gönderisi boyunca gördüğümüz filtreleri nasıl kullanabileceğimiz bazı örneklere bakalım. Bu arada, bu değişikliği web sitenize eklemek için, bir eklenti yapmanız gerekebileceğini unutmayın. Teklifimizde kaç kelimeyi istediğimizi seçmek için bir Excerpt_Length filtremiz olduğunu gördük, bu yüzden kullanalım: işlev nelio_100_word_word_word) {if (is_admin ()) {dönüş $ uzunluk; } dönüş 100; } add_filter (‘Excerpt_Length’, ‘nelio_100_word_word_excerpts’, 99); İşlevimizde yaptığımız ilk şeyin ön uçta olduğumuzdan emin olmak olduğunu unutmayın. Gösterge tablosundaysak (IS_ADMIN), teklifimizle hiçbir şey yapmamalıyız. “Güvenli bir ortamda” olduğumuzdan emin olduktan sonra, sadece büyülü numaramızı geri yüklememiz gerekiyor. Benim durumumda: 100 kelime.
b) Bu otomatik ekstrakttan sonra görünen metnin nasıl değiştirileceği de çok kolaydır çünkü bunun için bir filtre olduğunu gördük: işlev nelio_clickable_read_more ($ more) {if (is_admin ()) {return $ daha fazla; } dönüş sprintf (‘ Bana daha fazlasını söyle! ‘, esc_url (get_the_permalink ()); } add_filter (‘Excerpt_more’, ‘nelio_clickable_read_more’, 99); Bu durumda, yaptığımız tek şey “Bana daha fazlasını söyle!” Bir özetten sonra ve kullanıcının tıklayabilmesi için bir bağlantı yapın. c) Alıntı uzunluğunun nasıl sınırlandırılacağı, WP_TRIM_Words işlevi, WordPress tarafından kullanılan son alıntıyı değiştirmek için kullanabileceğimiz aynı ada sahip bir filtreye sahiptir. Öyleyse kullanalım: işlev nelio_140_char_excerpts ($ excerpt, $ raw_excerpt) {if (is_admin ()) {return $ excerpt; } if (”! == $ RAW_EXCERPT) {Return $ Excerpt; } dönüş mb_substr ($ excerpt, 0, 140); } add_filter (‘wp_trim_excerpt’, ‘nelio_140_char_excerpts’, 99, 2); WP_TRIM_Words Filtresi otomatik alıntılar için geçerlidir ve kullanıcı tarafından belirlenir. Örneğimde, yalnızca otomatik olarak üretilen alıntıları değiştirmekle ilgileniyorum, bu yüzden yeni koşullar eklemem gerekiyor. Hatırlarsanız, wp_trim_words yalnızca orijinal teklif boşsa otomatik bir teklif üretir, bu nedenle yalnızca istenen sonuçları almak için kontrol etmeniz gerekir.
Öte yandan, klasik substr fonksiyonu yerine MB_SUBSTR kullanarak bana dikkat edin. Nedenini merak ediyorsanız, sebep basit: blogunuza İngilizce dışında dilde yazıyorsanız, büyük olasılıkla çok baytlık bir karakter kullanacaksınız ve çok baytlı dizeyi bir substr ile kısaltacaksınız. Bu konuda daha fazla bilgi için PHP belgelerini okuyun. d) İlk içerik paragrafı ve sonuncusu ile bir teklif nasıl alınır, gönderinizin ilk paragrafını kullanarak bir teklifin doğru şekilde nasıl yapılacağına bir örnek. Bu sefer bir açıklama yok, bu yüzden yaptığım şeylere dikkat edin: nelio_first_paragraph_excerpts ($ excerpt, $ raw_excerpt) {if (is_admin ()) {return $ excerpt; } if (”! == $ RAW_EXCERPT) {Return $ Excerpt; } $ content = appling_filters (‘the_content’, get_the_concent ()); Dönüş substr ($ content, 0, strpos ($ content, ‘
‘) + 4); } add_filter (‘wp_trim_excerpt’, ‘nelio_firest_paragraph_excerpts’, 99, 2); Kısacası … WordPress’in büyük gücü genişletilebilirliğinde yatmaktadır. Bugün WordPress’in bir gönderim teklifinin nasıl ürettiğini ve nihai sonuçları ihtiyaçlarınıza göre ayarlamak için sunulan tüm filtreler ve işlevleri ayrıntılı olarak gördük. Umarım bugünkü gönderiyi beğenirsiniz. WordPress’in avantajlarını bilmesi için arkadaşlarınızla paylaşın! Aaron yükü ile Üstün Görüntü Unplash.