WordPress İçin Kodlama Standartları [Guide]
Kodlama standartlarına sahip olmamızın nedeni (yalnızca WordPress için değil) programcılar için tanıdık bir ortam yaratmak bir proje üzerinde çalışıyor. Özellikle WordPress, çok çeşitli ürünleri kapsar. Çekirdeğin kendisinden temalara ve eklentilere kadar bakacak çok şey var - ve karışacak çok şey var.
Herkes kodunu aynı şekilde biçimlendirirse, yorumları kullanır, aynı dokümantasyon stilini vb. Birlikte çalışmak çok daha kolay hale gelir ve yeni bir projeye katılmanın öğrenme eğrisi o kadar dik olmaz.
WordPress'teki uyumluluk ihtiyacı, kod tabanının bulunduğu durum tarafından büyütülür. WordPress katı nesne yönelimli bir yaklaşım izlemiyor ve bir MVC modeli kullanmıyor. İstisnasız bir OOP ve MVC kurallarına uyan projeler (Laravel gibi) tutarlılık ve en iyi uygulamalara sahiptir “pişmiş” yapıları nedeniyle.
WordPress ne yazık ki spagetti kodlaması, yani ne istersen yap. En iyi uygulamaların basitçe uygulanması zordur çünkü kötü kod kullanan ürünler de (yüzeyde) çalışabilir..
WordPress Kodlama Standartlarını izleyerek, WordPress'in kodlama kurallarını biraz öğrenebilir, daha fazla WordPress uyumlu ürün oluşturabilirsiniz. topluluğa değer verdiğinizi gösterin ve yüksek kalite kodunu bozduğunuzu.
Hongkiat.com hakkında daha fazlası:
- Web Geliştiricileri İçin En Kötü 10 Kabus
- 5 Sebep Neden CSS Herkesin En Zor Dili Olabilir?
- 30 Ortak Reaksiyon Programcı İşler Yanlış Giderken Sahip Oldu
Standartlar Üzerine Bazı Notlar
Standartlar doğru ve yanlış tanımlamıyor. Bir kurala katılmayabilirsiniz, örneğin, gerekmese bile diş telleri her zaman kullanılmalıdır. WordPress kodlama standartlarının amacı doğru veya yanlış olup olmadığına karar vermek değil, WordPress'te nasıl yapılması gerektiğine karar vermektir..
Standartlar tartışma için uygun değil. Standartların kullanımı, sevmediğiniz bir girintiye karşı durmak için uygun bir yer değildir. Kodlama standartlarında bir şey varsa, o zaman bunu yapın. WordPress geliştiricileri bunun için sizi sevecek! Bununla birlikte, eğer orada bir şeye katılmıyorsanız, sesinizi yükseltin ve insanlara bildirin. Her şeyi daha iyi yapmak her zaman mümkündür ancak yalnızca standartlar izin veriyorsa kodlama biçiminizi değiştirmelisiniz.
Anal kalıcılık üzerindeki tutarlılık. Projenizin son% 10'undaysanız ve sınıflar için yanlış adlandırma kurallarını kullandığınızı fark ettiyseniz, tam ortada geçiş yapmayın. Kişisel görüşüme göre, bazen doğru olan ve bazen olmayan bir şeyden ziyade sürekli yanlış olan bir şey okumayı tercih ederim. Bir seferde bir şeyleri değiştirmek için her zaman bir komut dosyası yazabilir veya sonunda kodunuzu okuyabilirsiniz..
Standartları takip etmek zor! Önceden girmeye alışsanız bile, bir çizgi yerine işlevle aynı satıra yerleştirmek, aşağıdaki satırı kullanmak oldukça kolaydır. Ancak, 100 küçük kural düşünmeniz gerektiğinde, tüm süreç biraz hataya açık hale gelir. Standartları takip etme konusundaki zorlu duruşuma rağmen, hata yapmaktan başka herkes kadar suçluyum. Günün sonunda, yanlış girinti geri dönüşü olmayan bir günah değildir. Tüm kuralları takip etmek için elinden geleni yap, zamanında her şeyi öğreneceksin.
WordPress Kodlama Standartları
Şu anda WordPress'te dört kılavuz vardır, kullanılan her ana dil için bir tane: PHP, HTML, Javascript ve CSS. Çekirdek Katılımcı El Kitabı olan daha geniş bir bilgi birikiminin bir parçasını oluştururlar. Her şeyden geçmek biraz zaman alacaktır, bu yüzden sık sık insanların yanıldığını gördüğüm dört dilden bazı snippet'leri vurguladım..
PHP
PHP, WordPress'in ana dilidir ve düzenleme için olgunlaşan oldukça gevşek yazılmış bir dildir..
Brace Stilleri
Başlangıç parantezleri her zaman satırların sonuna yerleştirilmelidir. İlgili ifadeler önceki kapanış parantez ile aynı satıra yerleştirilmelidir. Bu en iyi şekilde bir kod örneği ile gösterilebilir:
if (condition) // Bir Şey Yapın elseif (condition) // Bir Şey Yapın else // Bir Şey Yapın
Cömert Uzay Kullanımı
Sıkıştırılmış kod hayranı değilim (kötü görüşüm var) bu yüzden özellikle uygulamaktan hoşlanıyorum. Sonra boşluk bırak virgül, ve her iki tarafında mantıksal, karşılaştırma, sicim ve atama operatörleri, sonra Eğer, elseif, için, her biri için ve şalter ifadeler ve benzeri.
Boşlukların nereye eklenmemesi gerektiğini söylemek daha kolay! Boşluk eklememelisiniz sadece zaman ne zaman tiplemeleri veya referans dizileri.
İstisnai durum için oldukça kafa karıştırıcı bir istisna, dizi anahtarı bir değişkendir, Bu durumda, bir boşluk kullanın. Bu örnek şunu açıkça ortaya koymalıdır:
işlevi my_function ($ complete_array = null, $ key_1 = 4, $ key_2 = 'bar') if (null == $ complete_array) $ final_array = $ complete_array; else $ key_1 = (tam sayı) $ key_1; $ final_array [0] = 'this'; $ final_array [$ key_1] = 'is'; $ final_array [$ key_2] = 'an'; $ final_array ['last'] = 'örnek'; return $ final_array;
Adlandırma Kuralları
Özellikle farklı ortamlardan geliyorsanız, buna alışmak zor olabilir. Kısaca:
- Değişken isimleri olmalı hepsi küçük harf, alt çizgi ile ayrılmış kelimeler
- Sınıf isimleri kullanmalı büyük harfli kelimeler alt çizgi ile ayrılmış. Kısaltmalar hepsi olmalı büyük harf
- Sabitler olmalı tümü büyük harf, alt çizgi ile hecelenmiş
- Dosya isimleri olmalı hepsi küçük harf, kısa çizgilerle ayrılmış
Yoda Koşulları
Koşulları yazmak, alışkın olduğunuzdan başka bir yolla, ayrıştırma hatalarını önler. Biraz garip görünüyor ama daha iyi bir kod.
if ('Daniel' === $ name) echo 'Yazacağınız makale yazın';
HTML
HTML, onunla ilişkili pek çok kurala sahip değildir, işleri daha modüler hale getirmek için oldukça fazla şey bulabilirim. HTML yazarken bilmeniz gereken sadece beş kural var:
- Kodunuz W3C doğrulayıcısına göre doğrulanmalıdır.
- Kendiliğinden kapanabilen HTML etiketleri, eğik çizgiden önce tam olarak bir boşluk bırakmalıdır (bu kişisel olarak nefret ediyorum, ancak yalnızca bir WordPress evcil hayvan peeve değil, bir W3C özelliğidir)
- Nitelikler ve etiketlerin tümü küçük harf olmalıdır. Bunun tek istisnası, nitelik değerlerinin insan tüketimine yönelik olmasıdır, bu durumda doğal olarak yazılmalıdır..
- Tüm niteliklerin bir değeri olmalı ve alıntı yapılmalıdır (yazma
Doğru değil)
- Girinti sekmeler kullanılarak elde edilmeli ve mantıksal yapı izlenmelidir.
CSS
CSS gevşek yazılmış başka bir dildir, bu yüzden burada da yapılacak çok iş vardır. Buna rağmen, kodlayıcılarda standartlar oldukça kolay.
Seçiciler
Seçiciler gerektiği kadar kalifiye olmalı, insanca okunabilir olmalı, tümü kısa çizgilerle ayrılmış kelimelerle küçük harf olmalıdır ve özellik seçicileri çift tırnak işareti kullanmalıdır. İşte kısa bir örnek:
giriş [type = "text"], giriş [type = "password"], .name-field background: # f1f1f1;
Gayrimenkul Emri
Standartlar, burada CSS kuralları için belirli bir düzen öngörmedikleri için bazı kişisel alanlara olan ihtiyacı kabul eder. Onlar ne yap Diyelim ki anlamsal bir yapı izlemelisiniz. mantıklı. Özellikleri ilişkilerine göre gruplandır veya alfabetik olarak gruplandır, sadece onları rastgele yazma.
Rastgelelik için en büyük neden “oh Ayrıca bir marj eklemek gerekiyor” ve sonra dibe eklemek için devam. .3 saniyenizi ayırın ve kuralı mantıksal bir yere ekleyin..
- Görüntüle
- Konumlandırma
- Kutu modeli
- Renkler ve Tipografi
- Diğer
.modal profili görüntüleme: blok; konum: mutlak; Sol: 100px; En: 90px; arkaplan: # ff9900; renk: #fff;
Değer Biçimlendirme
Bu, özellikle tutarsızlıkları görmekten nefret ettiğim bir yer. Kurallara uymazsanız, bu değerden önce bazen bir boşluk görmekten daha iyidir; bazen steno kullanarak, bazen değil; bazen 0 değerinde birimler kullanıyor, bazen değil.
Değer biçimlendirme oldukça karmaşık ancak bazı pratiklerle doğal olarak geliyor. Değerlerinizi biçimlendirmek için Kodeks'teki tam kılavuza göz atın.
JavaScript
Deneyimlerime göre Javascript her yere gitmeye meyillidir. Pek çok geliştirici, önemli miktarda Javascript bilmesine rağmen, HTML, CSS ve PHP'ye sonradan yavaş yavaş öğrenildi. Yeni bir dille yeni başlıyorsanız, çok daha fazla hata yaparsınız ve bu hatalar ölümcül hatalara neden olmazsa, sizde yerleşmiş olabilirler..
Pek çok durumda standartlar bir limit veya durumu ifade eder “bir çizgi çok uzun değilse”. Bu, bir uygulayan jQuery Stil Kılavuzuna atıfta bulunur. Satırlarda 100 karakterlik limit. WordPress kılavuzu jQuery rehberine dayanmaktadır, bu yüzden bir okuma yapmak da iyi bir fikirdir..
Noktalı virgül
Bu en basit kuraldır, ancak sıklıkla göz ardı edilen kuraldır. Asla, asla, sadece kodunuz onsuz çalışacağı için noktalı virgül atlamayın. Sadece özensiz.
Hizalama
Sekmeler her zaman girinti için kullanılmalıdır. Ayrıca, bir dosyanın tamamının bir tanesinde olsa bile, bir kapama içeriğini girintilemelisiniz. Nedenini bilmiyorum ama standartlara uymadan önce insansız üst düzey kapanış beni rahatsız etti.
Kırma çizgileri
Uzun dizeleri keserken, daima bir işleçten sonra çizgiyi kes, asılı bir değişkeni bırakmayın. Bu, ilk bakışta çizginin kesildiğini ve sadece bir noktalı virgül unutmadığınızı açıkça gösterir..
Ayrıca, bir koşul uzunsa, birden çok satıra bölün ve önüne bir sekme ekleyin. Bu benim gözlerime çok tuhaf geliyor ama durumla vücut arasına kattığı ayrılık çok belirgin.
if (firstCondition () && secondCondition () && thirdCondition ()) var html = 'Bu satır' + n + 'sözcüklerinden oluşur, bu nedenle' + 'işleçten sonra' kesilmelidir;
jQuery İterasyonu
Standartlara göre jQuery yineleme (JQuery.each ())
sadece jQuery nesnelerinde kullanılmalıdır. Temel kullanmalısınız için, için / içinde, süre Javascript'te diğer koleksiyonları yinelemek için kullanılan döngüler.
Sonuç
Dikkat etmeniz ve takip etmeniz gereken çok şey var ve birisinin tüm bunları tek seferde uygulayabilmesi mümkün değil. Kodunuzu standartlara olabildiğince yakın almanız ve bunları tam olarak takip etmeniz gerekir..
bana göre tutarlılık en önemli kuraldır. Sürekli olarak yanlış bir şey yapmak, yarı yolda çalışmaktan daha iyidir. Bu, özellikle kod uygulamalarınızın işlevselliğini etkilemediği için biçimlendirme uygulamaları için geçerlidir. - daha sonra toplu olarak kolayca değiştirilebilir.
Kodlama standartlarının bir unsurundan nefret ediyor musunuz, bir şeyler eklenmesi gerektiğini düşünüyor musunuz? Yorumlarda bize bildirin!