WordPress Functions.php dosyaları için ana kılavuz

Kendi temanızı oluşturmaya başladıysanız, hatta diğer temaları ayarlamak için bir çocuk teması bile yapsaydınız, tema şablonu ve hiyerarşik dosyalar hakkında her şeyi öğreneceksiniz. Peki ya function.php tema dosyası? Fonksiyon dosyaları, temanızın ihtiyaç duyduğu tüm işlevleri yalnızca bir şablonla ilgili değil, bu nedenle sayfada yalnızca bir tür içerik veya içerik serbest bırakan bir kod değildir. veya dipnotlar. Codex WordPress şu şekilde işlevleri tanımlar: işlev dosyaları WordPress eklentileri gibi davranır, WordPress sitesine özellikler ve işlevler ekler. Hem doğuştan PHP hem de WordPress işlevlerini çağırmak ve kendi işlevlerinizi belirlemek için kullanabilirsiniz. WordPress eklentisine veya WordPress tema işlevi aracılığıyla kodu ekleyerek aynı sonuçları üretebilirsiniz.
İşlev dosyası ile eklenti dosyası arasındaki benzerliği not etmek önemlidir. Eklentiye ekleyeceğiniz aynı kod türü için işlev dosyasını kullanırsınız; Gerçekten de, isterseniz, büyük bir işlev dosyasına sahip olabilirsiniz ve sitenizde hiç eklenti yoktur. Ama bu iyi bir fikir değil. Sitenizde kullanmanız gereken birçok fonksiyonel kodunuz varsa veya temayı değiştirirseniz kodun hala çalışmasını istiyorsanız, eklentiye koymalısınız. Ancak kod temaya bağlıysa, işlev.php bunu koymak için doğru yerdir. Genel kurallar:
Function.php kullanın, içeriğinizin görüntülenme şekliyle ilgili basit işlevsellik eklemeniz gerektiğinde (IE, temanız etkinleştirilmeden çalışmaz). Bu, örneğin ek yazı tipleri eklemeyi içerebilir. İşlev daha karmaşık olduğunda veya ek işlevsellik temaya bağlı olmadığında bir eklenti yazın. Bir örnek yazı türünü kaydetmektir – gelecekte temayı değiştirirseniz yazı tipinizi kaybetmek istemezsiniz. Bu yazıda, size Function.php’nin bir miktar kullanımını getireceğim ve ona nasıl kod ekleyeceğinizi ve kodu nasıl etkinleştireceğinizi göstereceğim. Ayrıca, ana temaya işlevselliği değiştirmek veya işlev eklemek için çocuk temasında Function.php’yi nasıl kullanacağınızı da göstereceğim. İşlev dosyaları için genel kullanım, işlev dosyasının temaya bağlı kod için olduğu (yani ne olacak Temayı değiştirirseniz kaybolun), kodu eklerken çok yararlı bir örnek vardır. Bunlar şunları içerir:
Örneğin üstün resimler, gönderme biçimleri ve RSS bağlantıları için tema desteği ekleyin
WordPress’e tema çeviri dosyalarının nerede bulunduğunu söyleyin
Navigasyon menüsünün konumunu kaydedin, böylece kullanıcılar yönetici ekran menüsünden menüler ekleyebilir
Çocuğun temasını kullanarak ana temanın işlevselliğini ekleyin, silin veya değiştirin.
Bu yazıda, bunların her birini nasıl yapacağınızı göstereceğim.
Kodu işlev dosyasına ekleyin ve etkinleştirme kodu işlev dosyasına eklersiniz ve WordPress’e eklenti ile aynı şekilde etkinleştirilmesini söyleyin. Yöntemler şunları içerir:
Daha sonra tema şablonu dosyanızda aradığınız bir işlev yazın – bu, temanızdaki birçok yerde kullanmak istediğiniz bir kod bloğunuz olduğunda kullanışlıdır, ancak şablon bölümünde çalışmaz. İşlevlerinizle ilgili olarak, işlevlerinizle ilgili olarak eylem veya filtre kancası. Bu, WordPress kancayı bulduğunda bir işlev çalıştırır. WordPress’in kendisi yüzlerce kanca sağlar ve ayrıca kullanabileceğiniz temalarda ve eklentilerde de bulabilirsiniz. Unutmayın, Functions.php adresinden WordPress eklentisinden satın aldığınız veya indirdiğiniz temadaki kancadan etkinleştirmek istediğiniz bir şey yazarsanız, bunu yapmak için bir alt tema oluşturmanız gerekir. Değilse, işlev dosyanız temayı bir sonraki güncellediğinizde üzerine yazılır.
Daha sonra içeriğinize eklediğiniz kısa bir kod yapın. İşlev dosyaları aracılığıyla kısa kodlar eklemenizi tavsiye etmeyeceğim – bir eklenti kullanarak yapmak daha iyidir, bu nedenle gelecekte temayı değiştirirseniz kısa kodun içerik çıkışı kaybolmaz. Kısa kodunuza tekrar tekrar erişmenizi sağlayan başka bir site.
Bir widget yapın. Bu, bunu işlev dosyasında yapmak için kötü bir uygulamadır; Bir widget oluşturmak istiyorsanız, onun için bir eklenti yapın.
Bir eklenti yapmak için kılavuzumuzda bunun her birini nasıl yapacağınızı öğrenebilirsiniz.
Öyleyse Function.php ile nasıl çalıştığınızı ve en yaygın işlevlerden bazılarını nasıl eklediğinizi görelim. Bir işlev dosyası oluşturma temanızda bir işlev dosyası yoksa, bunu yapmanız gerekir. Ana dizin temasında yeni bir dosya oluşturun ve function.php adını verin. Dosyalara PHP açma etiketleri eklemeniz gerekir, ancak kapanış etiketlemenize gerek yoktur: Çekirdek yükleme 1C9DB3673E9A82CDFB72
İşlev dosyanız artık kodunuzu eklemeniz için hazır. Her bölümden önce büyük bir yorum bloğu ekleme eğilimindeyim, böylece kodumu tekrar kolayca bulabilirim. Bunun gibi bir şey:
Çekirdek 1c9db3673e9a82cdfb72 içerir
Bu şekilde, dosyamı taradığımda her kod bloğunu kolayca bulabilirim. İşlev için yaygın olarak kullanılan kodu ekleyin. Tema desteği ekleyin WordPress’te temanızın kullanabilmesi için tema desteğini eklemeniz gereken bazı özellikler vardır. Bu:
Gönderme Formatları – Tumblr gibi Standart, Video, Alıntılar ve bunun yanında formatlar
Küçük resim yayınlama – Üstün bir görüntü olarak da bilinir. Bunu temanızda görüntülemek istiyorsanız, şablon dosyanıza görüntülemek için bir kod eklemeniz gerekir, ancak bunlar için tema desteğini eklemediğiniz sürece yönetici ekranında mevcut olmayacaktır.
Özel Arka Plan – Ayarlamalar yoluyla arka planın görüntüsünü ve rengini ayarlamanıza izin verir (veya temanızı kullanan diğer kişiler)
Özel başlık – özel bir arka plana benzer şekilde çalışan
Otomatik Yem Bağlantısı – RSS yem için
HTML5 – Arama, yorumlar, galeri vb. İçin vb. Bu, HTML5 kullanarak temanızı kodlama yeteneğinizi etkilemez, ancak WordPressStag başlığı tarafından üretilen kodla ilgilidir – bu, SEO amaçları ve erişilebilirlik için sayfanıza başlık etiketini eklemenizi sağlar. Bunu sizin için yapan bir SEO eklentiniz varsa buna ihtiyacınız olmayacak
Örneğin, posta biçimi için tema desteği eklemek için, işlev dosyanızda add_theme_support () işlevini kullanırsınız:
Çekirdek 1c9db3673e9a82cdfb72 içerir
Tema desteğini eklediğiniz bazı özellikler ek parametrelere sahiptir; Örneğin, ona destek eklerken kullanmak istediğiniz yazı biçimini belirleyebilirsiniz:
Çekirdek 1c9db3673e9a82cdfb72 içerir
Üstün görüntüler için, ona hangi tür gönderi eklemek istediğinizi belirleyebilirsiniz:
Çekirdek 1c9db3673e9a82cdfb72 içerir
Ancak, kodunuzu daha sonra doğru kancaya eklediğiniz işleve yerleştirmediğiniz sürece, tüm bunlar işlev görmez. Tüm add_theme_support () işlevlerini, daha sonra After_seup_Theme ile ilişkilendirdiğiniz daha büyük bir işlevde ekleyebilirsiniz. Bu nedenle, mini posta görüntüleri, posta biçimleri, html5 ve otomatik besleme bağlantıları için tema desteğini eklemek istiyorsanız, bunu işlev dosyanıza ekleyin:
Çekirdek 1c9db3673e9a82cdfb72 içerir
Tema desteğini eklediğim her öğenin üzerine yorum metnini eklediğimi unutmayın, bu yüzden ben veya diğer kişiler dosyaya daha sonra geri dönerse, ne olacağını görmek kolay olacaktır. Çeviri Dosyaları Ekle Dilinizi konuşmayan kişiler sitenizde çalışma eğilimindeyse veya temanızı kullanma eğilimindeyse, tema çevirinizi hazırlamalısınız. Bu, sitenizin ziyaretçilerin gördüğü ön ucunu değil, kullanıcınızın göreceği yönetici ekranını etkilemez. Çeviri, temanız aracılığıyla yönetici ekranına eklediğiniz metinler çevrilmiş dosyalar kullanılarak çevrileceği anlamına gelir. WordPress’e, tema çevirisi dosyasının nerede kullandığını söylersiniz:
Çekirdek 1c9db3673e9a82cdfb72 içerir
Bu, tema dizinini bulmak için Get_template_directory () işlevini kullanır ve ardından dil alt dizininde wpmu-theme ile başlayan dosyaları arayın, bu nedenle yol WP-Concent/Themes/Mytheme/Diller/ WPMU-Theme ile dil için kod izledi. Bir tema çevirisi hazırlamanız gerekiyorsa, bu metin alanını yüklemekten daha fazlasını yapmalısınız – eklentileri çevirme için kapsamlı kılavuzumuz da temalar için geçerlidir ve size bilmeniz gereken her şeyi anlatır.
Gezinme menüsünü kaydedin İşlev dosyanızda yaptığınız başka bir şey, gezinme menüsü için bir konum kaydetmektir. Üçüncü taraf bir tema ile çalışmaya alışkınsanız, birçoğunun yönetici ekran menüsünde seçebileceğiniz ana gezinme onay kutusuna sahip olduğunu ve temadaki o konuma yaptığınız menüyü eklemenizi sağladığını göreceksiniz. Kullanıcıların bunu temanızda yapabilmesini istiyorsanız, NAV menüleri () Kayıt Fonksiyonu () kullanmalısınız: 1C9DB3673E9A82CDFB72 Core içerir
Bu, ana navigasyon olarak yönetici ekranında görüntülenecek bir menü konumu kaydetti ve kimlik ana. Daha sonra, Header.php dosyanızdaki menüyü görüntülemek için kimliği kullanırsınız. Yukarıdaki koddaki çeviri menüsünün adını yaptığımı unutmayın, bu nedenle temamı İngilizce dışında dilde çalışan herkes, çeviri dosyamı kullanarak kendileri için tercüme edilen “Navigasyon Ana” metnine sahip olacaktır. Bu işlevi de çeşitli gezinme menüsü konumlarını kaydetmek için de kullanabilirsiniz. Aşağıdaki kod ana menüyü ve yan bıçaklarda ek bir menü kaydetti:

Çekirdek 1c9db3673e9a82cdfb72 içerir
Bir kez daha, WP_NAV_MENU () işlevini kullanarak menüyü kenar çubuğu.php dosyanıza kodlamanız gerekir. Aradaki Elang Mata ile birlikte ilginç her şey, yukarıda verdiğim tüm işlevlerin aynı eylemle etkinleştirildiğini göreceksiniz: After_setup_theme. Bu, bir dizi ayrı işlev yazmak yerine, işlevinizdeki bir işleve her şeyi ekleyebileceğiniz ve ardından eylem kancalarını kullanarak etkinleştirebileceğiniz anlamına gelir. Bir büyük işleve sahip olmalarını istiyorsunuz: Core 1C9DB3673E9A82CDFB72
İşlevime birçok yorum ekledim, bu yüzden neler olduğunu biliyorum. Gelecekte işlevleri düzenlemem veya değiştirmem gerekirse bu kolaylaştıracaktır. Dosyalar dahil bazen işlev dosyalarınızı rahatça yönetebileceğinizden daha büyük bulacak ve ayrı olarak kaydetmek istediğiniz bir blok koduna sahip olacaksınız. Bu olursa, kod için dosya olarak adlandırılan ayrı bir dosya oluşturmalısınız, ardından dosyayı işlev dosyanızdan çağırmalısınız. Temanızda Insport adlı bir klasör oluşturun ve ayrılmak istediğiniz her kod bloğu için yeni bir PHP dosyası oluşturun. Örneğin, tema ayarlarını diğer dosyalara taşımak istersem, yukarıdaki tüm kodları tema_setup.php adlı bir dosyaya taşır ve işlev dosyamda çağırırım:
Çekirdek 1c9db3673e9a82cdfb72 içerir
Bu, Kodu İçer Dosyalardaki çağırır ve INDIN () işlevini eklediğim dosya işlevindeki yerde çalıştırır. İçerdiğim her şeyi işlev dosyasının başlangıcına koyma eğilimindeyim, böylece onu bulmam benim için kolay, bana ne yaptıklarını söylemek için bir kez daha. Ebeveynler ve çocukların teması ile çalışmak, ebeveyn ve çocuk temasıyla çalışırken çok güçlü olabilir. Çocuk temasında, üst temanın işlevini değiştirmek veya silmek için işlevinizi kullanabilir veya kendi yeni temanı ekleyebilirsiniz. Çocuk temasında işlevleri değiştirmenin veya eklemenin üç yolu vardır: Takılabilir işlevin yeni bir sürümünü oluşturun.
Üst temanın işlevini devre dışı bırakın.
Ana tema işlevini değiştirmek için önceliği kullanarak kendi işlevinizi ekleyin.
Her birini hızlı bir şekilde görelim. İyi kodlanmış bir üst tema veya bir üst tema olarak kullanılmak üzere tasarlanmış tema çerçevesi ile çalışırsanız takılabilecek işlevler, işlev dosyasında işlev olasılığı yüklenir. Takılabilecek temaları kolayca bulabilirsiniz, çünkü tema işlevin zaten orada olup olmadığını kontrol etmek için koşullu bir etiketle sarılacaktır:
Çekirdek 1c9db3673e9a82cdfb72 içerir
Çocuğun temasının işlevi ebeveynin temasından önce çalıştığından, bu, çocuk temanızda aynı adı taşıyan bir işlevi yaparsanız, WordPress’in ana temanın işlevini yerine getirmeyeceği anlamına gelir. Bu nedenle, ana temayı değiştirmek için, çocuğunuzun dosya işlev dosyasında aynı adla kendi işlevinizi yapın. Bir işlevi devre dışı bırakmak için işlevi devre dışı bırakarak, indirimli filtrenin eyleminin veya kancasının bağlantısını serbest bırakırsınız. Yani, anne temanızın init kancasından etkinleştirilen parent_function () adlı bir işlevi varsa, çocuğunuzun temasında onu devre dışı bırakırsınız:
Bu, üst işlevin tekrar çalışmayacağı anlamına gelir. Daha sonra, çocuğunuzun temasında farklı işlevsellik istiyorsanız yeni bir işlev yazabilirsiniz – aynı kancaya yapıştırın, ancak aynı adı vermeyin. Not: Üst işlevinin Add_action () işlevinde, devre dışı bırakmak istediğiniz işlevi yerine getiren bir öncelik parametresi varsa, devre dışı bıraktığınızda aynı önceliği eklemeniz gerekir. Öncelikleri bir sonraki bölümde tartışacağım. Son seçenek işlevinin önceliğini kullanmak, üzerine yazmak istediğiniz işlevden daha yüksek bir önceliğe sahip yeni bir işlev oluşturmaktır, yani işlev işlevden sonra çalışacaktır. Bunu yapmalısınız çünkü varsayılan olarak WordPress önce çocuğunuzun temasının işlevini yerine getirecektir; Sadece bir öncelik numarası ekleyerek bunu değiştirebilirsiniz. Ana temanızın, 20 önceliğe sahip bir init kancasıyla etkinleştirilen parent_function () adlı bir işlevi olduğunu varsayalım:
Çekirdek 1c9db3673e9a82cdfb72 içerir
Ona gelen işlevleri yazabilir ve daha sonra 30 gibi daha yüksek bir öncelikle init kancasına ekleyebilirsiniz: 1C9DB3673E9A82CDFB72 çekirdeğini içerir
Üst işlevin belirli bir önceliği yoksa, o zaman. İşlev dosyaları arkadaşlarınızdır Tema işlev dosyası eklentiye çok benzeyen, ancak özellikle temanız için çalışır. Böylece, yalnızca temayı daha sonra değiştirirseniz veya diğer sitelerde kullanmak istemediğiniz işlevselliği eklemek için kullanabilirsiniz. Bu yazıda hangi dosya işlevinin kullanıldığını ve bu kullanımlardan bazılarının nasıl uygulanacağını öğrendiniz. İşlev dosyanızı dikkatlice inceleyin, eklentiler yerine kullanmaktan kaçının ve bu da temanızın geliştirilmesinde size yardımcı olacaktır! Bir işlev dosyasını nasıl kullanıyorsunuz? Tamamen kaçınıyor ve eklentiyi kodluyor musunuz? Bize aşağıdaki yorumlarda anlatın. Etiket:
işlev

admin

Bir Cevap Yazın

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