Neden Function.php (ve bunun yerine ne yapmanız gerekiyor) kullanmanız gerekmiyor
Hiç bir şey bitirmek için Fonksiyon.php dosyanıza bir kod eklemenizi isteyen bir WordPress öğreticisi buldunuz mu? Bunu yapma! Aşağıda okuyun ve nedenini öğrenin … WordPress kullanan kişilerin üç ana gruba ayrılabileceğine inanıyorum:
Tak ve oyuncu: Deneyimli bir web sitesi tasarımcısı olmayabilecek ve hazır kullanmak için çözümler bulan WordPress hayranları. Temalar bulacaklar, yükleyecekler ve içerik yapmaya devam edebilirler.
Twoakers: Bu insanlar hemen kullanılabilecek temalar alacak ve kendi ince ayarlarını uygulayacaklar. Temalarını ayarlamak için Custom.css ve Custom_function.php dosyalarını (veya benzeri) kullanabilirler. Raftan seçeneği alacak ve ihtiyaçlarına göre (a) bir şey alana kadar onları kemirecekler ve (b) benzersiz görünecekler.
Çerçeve: Bu genellikle çok az dışarıda sunan bir tema çerçevesiyle başlayacak bir geliştiricidir – tahmin edebilirsiniz – içeriğin oturabileceği bir çerçeve. Birkaç saat veya gün sonra, gerçekten benzersiz ve özel ihtiyaçlarına veya müşterilerine uyarlanmış bir şey yapacaklar.
Tahmin etmem gerekirse, üçün en büyük kampının bir tweaker olduğunu söyleyeceğim.
Ve yüzleşelim: WordPress bir Paker Cenneti. Google aramanızdan ve işlevlerinizden daha fazlası olmadan silahlı olarak. Tek sorun, çok fazla alev çalıyor. Sitenize işlevsellik eklemek için Function.php’yi kullanmak (çeşitli nedenlerle) gerçekleşmeyi bekleyen bir kaza olabilir. Bu makalede, sebebini açıklayacağım ve size çok daha iyi bazı alternatifler sunacağım. WordPress sitenize işlevsellik ekleyin, ancak function.php dosyanızla değil. WordPress’in çalışma şekli WordPress’in çekirdeği basit prensipte yatmaktadır: tasarım ve işlevsellik (mümkünse) açıkça ayrılmalıdır.
WordPress’te PHP işlevi nerede?
PHP WordPress’te ne yaptı?
WordPress’teki PHP işlevine işlevleri nasıl eklerim?
PHP işlev dosyası her temada gerekli mi?
İlk olarak, PHP WordPress’in her yerinde bulunur, çünkü WordPress’in ana dilidir. Bu yazıda PHP’nin WordPress’te ne yaptığını tartışmıyoruz, ancak WordPress.function.php, yeni başlayanlar için PHP Öğrenme Öğreticisi dizisindeki her şeyi okuyabilirsiniz, yani WordPress Tema Dizini’nde ve Sadece tema ile ilgili. Her tema, tema klasöründe bir function.php dosyası bulunmalıdır.
Her WordPress teması için dosya işlev.php gereklidir ve tema dizininde bulunabilir. File Foili Functions.php, hangi işlevleri ve işlevleri nasıl ekleyeceğiniz hakkında daha fazla bilgi edinebilirsiniz. Peki buna göre function.php nerede? Adından tahmin edebileceğiniz gibi, Functions.php, temayla ilgili işlevleri içerir, örneğin:
Üstün görüntülerin kullanımı Alıntı Uzunluğu
Widget alanı
Bu tür bir işlev, WordPress tasarımlarının/işlevlerinin ayrılması için kuralları kanıtlayan bir istisnadır. Bir işlevsellik unsuru olmalarına rağmen, yalnızca ana temalarıyla ilgilidirler ve diğer temalara uygulandığında uygun olmayabilirler. Böylece, function.php’ye dahil edilirler ve orada kalmalıdır. Örneğin, 200 kelimelik alıntıların uzunluğu bir temada harika görünebilir, ancak başka bir temada korkunç görünebilir. Her ne kadar fonksiyonlarda gereken kod da dahil olmak üzere, teklifin uzunluğunu ayarlayarak sitenin “işlevi” ile teknik olarak oynuyor olsak da, Php yapılacak doğru şeydir.
Bu makalede etkili bir şekilde fonksiyonun kullanımının karmaşıklığına girmeyi düşünmüyorum, ancak şu anda, sitenizde birçok özel işlev temasına girecekseniz, bir yapmayı düşünmelisiniz. Temanızdaki (veya daha önce vardı, daha önce vardı bir dizini kullanarak) temanızın işlevleri arasında birkaç kuruluşu etkilemek için dizini. Bu yola daha ileri gitmek istiyorsanız, bu sorun hakkında WordPress geliştiricisi Tom McFarlin’den iyi bir okuma. Benim ana amacım şudur: Function.php bir düşman değil. Bu, tema makinesinde değerli bir sürüş tekerleğidir; En temel tasarım hariç herkes için gereklidir. Bununla birlikte, Function.php’nin kötüye kullanılması yaygındır ve durdurulmalıdır. Function.php kullanmamanız gerektiğinde, Function.php kullanmanız gerektiğinde basit cevap “Neredeyse Asla” dır. Biraz daha karmaşık olan cevap “noggin’inizi kullanın”. (Bazı temalarla ilgili katı işlevler) ne için olduğunu anlarsanız, ne için olmadığını öğrenebilmelisiniz. WordPress Site Eklentisi dizininizde kolay bir örnek bulunabilir. Eklenti (ideal olarak konuşursak) Mantıksal olarak “paket” kodu amaçlanan işlevle ayrılmıştır.
Tasarımın WordPress üzerindeki işlevselliğinin ayrılmasının çekirdeğinden en iyi örneklerden (ve daha yüksek profillerden) biri, Google Analytics’in izleme kodudur:
Ziyaretin izlenebilmesi için bu kodun sitenizin başına eklenmesi gerekir. Bu kodu eklemek için üç ana seçeneğiniz var:
Header.php dosyanıza manuel olarak ekleyin
Fonksiyonunuza Manuel Ekleyin.php (kancaları kullanarak) eklentiyi kullanın Bir veya iki seçeneği kullanırsanız, temayı değiştirirseniz izleme kodunuz kaybolur ve ziyaretçiler Google tarafından tekrar sayılmaz. (Bu, temanız tekrar güncellendiğinde de kaybolabilir.) Ancak üçüncü seçenek kullanıyorsanız (Google Analytics + WPMU Dev’e ait olanı kullanmanızı öneririm), altınsınız. Üst düzey bir anınız yoksa ve kullandığınız eklentiyi devre dışı bırakmadıkça, izleme kodu hiçbir yere gitmez.
Basit tavsiyem şudur: Şüphe varsa, eklentileri kullanın. Bir nedenden dolayı popülerdirler. Neden “ne zaman” açıklamak için function.php kullanmanız gerekmiyor, ben de oldukça açıkladım “neden:” functions.php kullanmayın çünkü temanız değiştirmek sitenizin işlevselliğini değiştirecektir, hepsi yanlış. Bununla birlikte, mümkün olduğunca çok işlevden kaçınmanın nedenlerini daha da güçlendirmek için yapmam gereken birkaç ana nokta var. Her şeyden önce, korkulan bir “beyaz ekran” var. Dürüst olmak gerekirse, WordPress ile oynarken bunu hiç deneyimlemediyseniz, yaşamadınız. Ya da en azından WordPress ile ilk oynadığımda benden çok daha dikkatlisin.
Bu aşamada, Ölümün Beyaz Ekranını tam olarak açıklığa kavuşturmak için bir ekran görüntüsüne ihtiyacımız olduğunu hissediyorum:
Evet … ‘Beyaz Ölüm Ekranı’ WordPress tamamen boş bir ekran gösteriyor. Korkutucu. Ama bu ne demek? Şimdi, İngiliz kraliçesine koymak için, birisi birinin PHP’sini yükselttiğinde birisi beyaz bir ölüm ekranı ile karşı karşıya. Başka bir deyişle, bozuldunuz. Başka bir deyişle, PHP kodundaki Fonksiyon’a girilen sözdizimi hatası.php sitenize “zarar verebilir”, böylece beyaz ekrandan başka bir şey görmezsiniz. (Bana “Ölüm” in nereye geldiğini sorma. Bildiğim kadarıyla kimse yaralanmaz.) Beyaz ölüm ekranıyla karşılaştıktan sonra, sitenizi FTP veya çevrimiçi fikirler aracılığıyla düzenlerseniz (örneğin Shiftedit) Arka uç wordPress’ten daha, eğer değilse, sitenize geri dönmekte zorluk çekeceksiniz. Ayrıca, arka uç wordpress kullandığı için benden sert bir tokat alacaksınız. Yaramaz. Ama konuya giriyorum. Demek istediğim: PHP kodunuzu eklentiye yerleştirmek, ölümün beyaz ekranının oluşmasını önleyebilir. Bunun yerine, WordPress, sitenin genel işlemini olumsuz etkilemeden rahatsız olan eklentileri devre dışı bırakabilir. İkincisi, birkaç koddan daha fazlasını girmeyi planlıyorsanız Function.php’yi kullanmak gerçekten dağınıktır; Özellikle kullandığınız temanın zaten mevcut bir işlevi varsa. Üçüncüsü ve yukarıda belirttiğim gibi, Function.php’deki Kod, özel bir temadır (temayı değiştirdiğinizde çalışmaz) ve tema güncellemesi ile üzerine yazılabilir.
Bütün bunlar iyi değil ve sizi bu işlevi ikna etmelidir.PHP, kodunuzu çoğu durumda yerleştirmek istediğiniz yer değildir. Tabii ki; Varsayılan olarak olduğu gibi orada ne olursa olsun (tema geliştiricilerinin yalnızca özel işlevsellik temaları içerdiğini varsayarak), ancak eklediğiniz yeni kodların adil bir oyun olması muhtemeldir. Ne yapıyorsun? Görünüşe göre, 3 seçeneğiniz var: çocuk temasından function.php ekleyin
WordPress Custom Fonksiyon eklentisini kullanın
Kendi eklentinizi oluşturun Bu seçeneklerin her birine bakalım: Çocuk Fonksiyonunuzun temasını kullanın. Özellikle temanızda değişiklik yapmayı planlıyorsanız. Bu şekilde, siteniz ana teması (yani ebeveyn) güncellendiğinde özel bir tasarım veya değişiklik kaybetmeyeceksiniz. Örneğin, Ana temasının stilini çocuk temasına çekmek istiyorsanız, bunu function.php dosyasında sıralamanız gerekir. Çocuğunuzun teması yoksa, bunun için bir function.php dosyası oluşturmanız gerekir.
Bir çubuk kullanmanız gerekiyorsa, çocuğun tema function.php’i kaçırmayın. Ancak, bunun önerilen bir çözüm olmadığını ve hatalara neden olabileceğini unutmayın. Daha iyi bir alternatif var … Eklentiler kullanın! Function.php için WordPress eklentisini kullanın.
WordPress eklentisi Özel işlevim Özel işlevim, temanızdan veya eklenti dosyanızdan function.php dosyasını düzenlemeden WordPress sitenize özel php kodu kolayca eklemenizi sağlayan iyi bir ücretsiz WordPress işlevselliği eklentisidir.Eklentiyi yüklemek için eklentileri açın> gösterge tablosu menünüze yeni ekleyin, “Özel İşlev My” yazma sütununa yazın, X özel işlevimi Space X-Chimp ile eklentiyi arayın ve şimdi yükleyin, ardından etkinleştirin. … yükleme … özel işlevler WordPress eklentisini etkinleştirin.Eklenti etkinleştirildikten sonra, yeni menü öğesi WordPress Ayarları menüsünde görünür.WordPress’e özel bir işlev eklemek için Ayarlar menüsünden PHP Inserter’ı seçin.
WordPress Menüsü Özel işlevim özel işlev ekranımı görüntüler. Özel PHP kodunuzu alana ekleyin, işlevi kaydet ve etkinleştirin, eklenti tema dosyalarınızı değiştirmeden ve web sitenizi yavaşlatmadan PHP kodunuzu otomatik olarak web sitenize ekleyecektir. Özel işlevler eklentisiyle WordPress’e özel işlevler ekleyin. Bu eklenti, yüklediğiniz temadan bağımsız olarak çalışır, böylece temada bir function.php dosyası olmasa bile, herhangi bir temayla kullanabilirsiniz. Bu yöntemi kullanmanın yararı, içerik dosyası içeriği.php temasını düzenlerseniz veya temayı değiştirseniz bile WordPress sitesine bu eklenti kullanan hangi kodun etkilenmeyeceğidir. Ayrıca eklentiler için de çalışır, bu nedenle temayı veya eklentiyi güncellemeniz veya değiştirseniz bile özel PHP kodunuz üzerine yazılmayacaktır. WordPress sitenize Fonksiyon.php dosyasına dokunmadan kod eklemek için bir seçenek daha var. Alternatif Güzel:
Kendi eklentinizi oluşturun, çeşitli parkların bir WordPress tweaker iseniz ve daha önce kendi eklentinizi hiç yapmadıysanız, bir tür karmaşık ve gizemli süreç içerdiğini düşünüyorsanız affedilirsiniz. Belki bir tür büyüye ihtiyaç vardır. Neyse ki, sorun bu değil. Dosyayı nasıl düzenleyeceğinizi biliyorsanız.php doğru (FTP veya çevrimiçi fikir aracılığıyla), Functions.php’ye girmeniz gereken tüm kodlar için bir eklenti oluşturmak için gereken becerilere zaten sahipsiniz. Öyleyse hadi yapalım. İlk olarak, FTP (veya barındırma paneli dosya yöneticiniz veya çevrimiçi bir fikir aracılığıyla) WordPress sitenizin kök klasörüne gidin. Oradan, eklenti dizininde gördüğünüz WP-Concent/Eklentiler: WordPress klasörü klasörü klasörüne gitmelisiniz (hayal ettiğiniz gibi) şu anda sitenize yüklü eklentidir. Kendi eklentinizi oluşturmak için yeni bir klasör yapın. Bunu tme-custom function adını vereceğim:
WordPress Custom Function eklenti klasörü (“TME” baş harflerimdir ve eklentinin adına ekledim, bu yüzden mevcut eklenti adını yanlışlıkla kullandım.) Daha sonra, eklenti klasörünüzde aynı ada sahip bir PHP dosyası oluşturun:
Last Function.php’e kod eklemek için bu WordPress Custom Fonksiyon eklentisini kullanın, aşağıdaki kodu yeni PHP dosyanıza girin: <? PHP
* Sürüm: 0.1 */ /* Kodunuz burada. */ /* Kodunuz burada. */
?>
Sadece bu! Dosyanızın depolandığından ve yeni WordPress özel işlev eklentinizin artık WordPress eklentisi listenizde görüneceğinden emin olun: yeni WordPress özel işlev eklentiniz … etkinleştirilmeye ve kullanılmaya hazır. Tabii ki, eklentiniz hiçbir şey yapmadı, ancak artık daha önce işleviniz.php dosyasında bulunan herhangi bir özel işlevi girmekte özgürsünüz ve her zamanki gibi çalışmaya devam edecekler. Daha ileri gitmek: Ortalama eklenti üzerindeki “kullanılması gerekir” eklentisini yapmak iyi ve iyi, ancak her koşulda sitenizde çalışmayı seçtiğiniz işlevleri istiyorsanız ne olur? Yeni özel eklentinizin eklenti listenizi bozmasını istemiyorsanız ne olur? Görünüşe göre, sitenizde her zaman aktif olan (ve devre dışı bırakılamayan) bir eklenti olan “zorunlu” bir eklenti yapmanız gerekiyor. Eklenti tablosunda ‘Kullanılması Gereken”yi tıklamadığınız sürece WordPress’teki eklentiler listesinde bile görünmeyeceklerdir. Eklentinizi “Kullanılmalıdır” yapmak için, WordPress sitenizin WP-Content dizininde Mu-Plugins adlı bir klasör oluşturun, ardından PHP eklenti dosyanızı (tüm klasör değil) taşıyın. Hey, acele et! Eklenti listenizden kaybolur ve kullanılması gereken yeni bölümde yeniden ortaya çıkar:
WordPress işlev eklentinizi kullanılması gereken bir eklenti olarak yapın. Eğlenceyi Function.php’ye döndürelim. Umarım, şimdi Fonksiyon.php dosyasını ne kullanmanız gerektiğini ve kullanmamalısınız. hatta çocuğunuzun temasını kullanın. Dosya Function.php. WordPress’e özel işlevler eklemek için kendi eklentinizi yapmak her zaman bir seçenektir. Başka bir şey yoksa, müşterinizin müşterinin arka ucunda görünecek bir eklenti yaparak veya en azından kodlamada aslında daha iyi hissetmenizi sağlayarak akıllı bir WordPress geliştiricisi gibi görünmenizi sağlayabilir (en azından böyle hissediyorum! ) Function.php kullanma hakkında bilmeniz gerekenler hakkında daha yararlı bilgiler için, dosya işlevleri için ana yönergelerimize bakın. Veya WordPress topluluğunu gerçekten etkilemek istiyorsanız, neden PHP’yi öğrenmiyorsunuz ve kendi eklentilerinizi ve temalarınızı kodlamaya başlamıyorsunuz? Bu eğlenceli, işlevsel ve ücretsiz! Etiket: işlev
PHP