WordPress yapısı. WordPress’in iç işleyişini anlamak

Bu yazıda WordPress tema dosyalarının hangi adlara sahip olduğu ve her birinin sitede hangi sayfayı görüntülemekten sorumlu olduğu hakkında konuşacağız. Bu çok önemli, gerekli ve aynı zamanda anlaşılması çok basit bir bilgidir. WordPress ile çalışan herkesin bunlara sahip olması gerekir. Aşağıda WordPress tema dosyalarının yapısının ve bunların bağlanma sırasının (hiyerarşi) tam bir açıklaması bulunmaktadır.

Tema dosyalarının hiyerarşisinden “WordPress’te Koşullu Etiketler” yazısında bahsetmiştim. Aşağıda da aynı şey var, yalnızca daha ayrıntılı ve daha net.

Tema dosyası bağlantıları (teori)

Hiyerarşi, bu durumda sıralı kontrol, birden fazla dosya adının sitede bir sayfayı görüntülemek için uygun olduğunu gösterir. Hangi dosyanın kullanılacağının kontrolü tek tek yapılır. Onlar. dosyaların bir listesi vardır, her birinin fiziksel varlığı sırayla kontrol edilir, mevcut bir dosya bulunur bulunmaz kontrol durdurulur ve bulunan dosya şablon olarak kullanılır.

Örneğin, eklenti etiketi ve 25 kimliğiyle "Eklentiler" kategorisinin sayfasına gidiyoruz - http://example.com/category/plugins. Ardından, bu sayfanın kodunu oluşturmak için WordPress aşağıdaki dosyaların varlığını tek tek kontrol edecektir (kontrol mevcut ilk dosyada duracaktır):

  • kategori-plugins.php
  • kategori-25.php
  • kategori.php
  • arşiv.php
  • index.php

Tüm sayfa türlerinin ve dosyalarının tam şeması şöyle görünür:

Başka bir diyagram, belki daha açıktır (eski):

Sayfa türleri ve dosya adları

Aşağıda sayfaların ve bunlardan sorumlu tema dosyalarının bir listesi bulunmaktadır. Bu bölümde biraz daha yüksek olan tema dosyası hiyerarşisinin bir resmi açıklanmaktadır.

Aşağıda site sayfası ve ilgili PHP dosyalarının listesi bulunmaktadır. Bu tür dosyalar temanın kök klasöründe bulunmalıdır.

Gönderiler

Sayfa (kayıt sayfası)

  • (any_name).php (bir sayfa şablonu kullanırken)
  • sayfa-(post_label).php
  • sayfa-(post_ID).php
  • sayfa.php
  • tekil.php
  • index.php

Kayıt (kayıt sonrası)

  • tek post-(post_label).php
  • tek-post.php
  • tek.php
  • tekil.php
  • index.php

Özel gönderi türü

  • (any_name).php (şablon destekli ağaç türü için. WP 4.7'den beri)
  • single-(post_type)-(post_label).php
  • single-(post_type).php
  • tek.php
  • tekil.php
  • index.php

Ek

  • (start_MIME_type).php
  • (end_MIME_type).php
  • (start_MIME_type)-(end_MIME_type).php
  • ek.php
  • single-attachment-(attachment_label).php (tek bir görüntü için şablon belirtmenize olanak tanır)
  • single-attachment.php (attachment.php ile aynı)
  • tek.php
  • tekil.php
  • index.php

MIME türünün başlangıcı ve bitişi ile, MIME türünün / ile ayrılmış ilk ve son bölümünü kastediyoruz. Örneğin, bir metin dosyasının MIME türü “text/plain”dir; bu, dosyanın text.php , ardından plain.php ve ardından text-plain.php açısından kontrol edileceği anlamına gelir.

Arşivler

404 sayfa

  • 404.php
  • index.php

Arama sayfası

  • arama.php
  • index.php

Ana sayfa

  • ön sayfa.php
  • (ana sayfa seçiliyse kalıcı sayfaların mantığı)
  • home.php
  • index.php

Blog sayfası

Blog sayfası, ana sayfa kalıcı bir sayfa olarak ayarlandığında görünür

  • home.php
  • index.php

Gömmeler

REST API aracılığıyla bir kayıt istendiğinde yerleştirme şablonları kullanılır. Yerleştirmeler sürüm 4.5'te ortaya çıktı ve yayınlarınızı diğer kişilerin sitelerine yerleştirmenize olanak tanıyor. Bkz. get_post_embed_url()

  • embed-(post-type)-(post_format).php
  • embed-(post-type).php
  • embed.php

Yalnızca yerleştirme içeriğini değiştirmek için temada embed-content.php dosyasını oluşturabilir ve orada HTML'yi tanımlayabilirsiniz. Orijinal HTML, /wp-includes/theme-compat/embed-content.php motor dosyasındadır.

Nasıl çalışır

wp-includes/template-loader.php çekirdek dosyası tüm mantıktan sorumludur: hangi dosyanın dahil edileceği. Baktığınızda her şey onda anlatılıyor. Ancak bu aktivite pek ilgi çekici değil, bu yüzden yazacağım.

Öncelikle.şablon-loader.php, WordPress ortamının tamamı yüklendikten sonra bağlanır. wp-load.php dosyası işlendikten ve ana istek işlendikten sonra wp() işlevi. Onlar. şablon-loader.php, PHP betiğinin en sonuna bağlanır...

Başta Template_redirect kancası tetiklenir. Bu kancada bazı kontroller yapabilir ve gerekirse başka bir URL'ye yönlendirebilirsiniz. İçinde die() kullanarak betiği sonlandırmanız gerekir. Onlar. bu kanca bir şeyi değiştirirse, şablon-loader.php dosyasının çalışması sona ermeli ve biz başka bir sayfaya "uçup gitmeliyiz".

WordPress motoru üzerinde oluşturulan web siteleri, yapıdan farklı olarak özel bir yapıya sahiptir.

Web sitesi geliştirmeyle ilk tanıştıklarında genellikle sitenin hiyerarşik yapısından bahsederler. Bunun özü, sitenin tamamının birçok sayfadan oluşması, sayfaların bölümler halinde birleştirilmesi ve bu bölümlerin de daha büyük bölümlere ayrılmasıdır. Çok seviyeli menü sistemi aynı zamanda bu malzeme yerleştirme sistemine de karşılık gelir. Sitelerin bu yapısı bilgisayarın dosya yapısına benzediğinden tanıdık ve anlaşılırdır.

Çoğunu oluşturmak için kullanılan WordPress motorunda materyal yayınlamanın yapısı hiyerarşik değil, ağ tabanlıdır, bu nedenle ilk bakışta net değildir. Bu, bir dereceye kadar acemi bir web yöneticisinin WordPress CMS'yi kullanmasını engelleyebilir.

Bu nedenle bir WordPress sitesinin nasıl çalıştığını anlamaya ihtiyaç vardır.

Bu arada, CMS WordPress kullanarak ve benzersiz bir tasarımla web siteleri ve bloglar yapmayı öğrenmek istiyorsanız kursa katılmanız en iyisi olacaktır. "Sıfırdan benzersiz bir site." Aşağıdaki bağlantıyı kullanarak kendisiyle tanışabilirsiniz.

Sıfırdan benzersiz web sitesi

Herhangi bir web sitesinin yapısında üç ana alan vardır:

  1. Dış yapı. Bize sayfanın görünümünü, bireysel öğelerin ve blokların birbirine göre yerleşimini gösterir.
  2. İç yapı, yani içeriği oluşturan tek tek materyaller arasındaki bağlantıların yapısı.
  3. Sitenin tamamını oluşturan dosyaların ilişkisini gösteren bir dosya yapısı.

Peki bir WordPress sitesi neye benzer?

Bunun şablon seçimine bağlı olduğunu hemen belirtmek gerekir. Bu tür çok sayıda şablon vardır ve elbette siteler birbirinden büyük ölçüde farklılık gösterebilir. Ancak dikkat edeceğimiz ortak özellikler de var. Bu site örnek olarak alınabilir.

Sayfanın üst kısmında genellikle başlık. Site adı, logo, slogan, bazen arama çubuğu, sosyal ağ butonları içerebilir.

Başlığın altında ve bazen de altında çoğunlukla ana menü bulunur.

Sayfanın alt kısmında gördüğümüz bodrum. Servis bilgileri içerebilir. Örneğin sitenin yazarları, telif hakları hakkında. Bazen sosyal ağ düğmelerini, bazı gezinme öğelerini vb. burada bulabilirsiniz.

Sayfanın orta kısmında gönderilerin beslemesi bulunur ve yan sütun (kenar çubuğu).

Gönderiler (posta)– bir WordPress sitesinin ana kısmı. Sitenin yaratıcısının ziyaretçilerine anlatmak istediği ana içeriği içerirler.

Her yeni giriş feed'in en üstünde görünür, eskileri ise aşağı düşer. Bir sayfada yalnızca sınırlı sayıda giriş görebilirsiniz, örneğin on. Diğer girişlere uygun gezinme düğmeleri kullanılarak erişilebilir. Gönderi akışının bir diğer özelliği de ana sayfada çoğu zaman tüm gönderileri değil, yalnızca ilk paragrafları görmemizdir. Bu, ihtiyacınız olan makaleyi seçmenizi kolaylaştırır. Ancak bu zaten sitenin iç yapısı için geçerlidir.

İçerikler, gönderi akışının yanı sıra değişmeyen, taşınmayan kalıcı sayfalarda da yer alır. Bu tür sayfalar genellikle yazar hakkında, site hakkında, site haritası, iletişim bilgileri vb. hakkında bilgiler içerir.

Bandın yanında var yan sütun (kenar çubuğu). Ayrıca lokasyonunda da çeşitli seçenekler mevcut olabilir. Kenar çubuğu solda veya sağda bulunabilir, bir veya iki tane olabilir.

Örneğin şablon Hayran olunan Bu sitede kullanılan aşağıdaki kenar çubuğu düzeni seçeneklerini kullanmanıza olanak tanır:

Kenar çubuğu ayrı bileşenlerden oluşur widget blokları (Araç). Sayıları ve konumları site yöneticisi tarafından belirlenir ve oldukça kolay bir şekilde değiştirilebilir.

Şimdi bir WordPress sitesinin iç yapısına geçelim. İşte bu motorun özellikleri burada yatmaktadır. Navigasyon sistemi birkaç parçadan oluşur.

İlk olarak ana menü. Bu menü bizi kalıcı sayfalara götürür. Bu tür birçok sayfa olabilir, ancak menü aynı zamanda karmaşık ve çok düzeyli de olabilir. Bu durumda hiyerarşik bir yapıya sahibiz. Ancak menü öğeleri, gönderilerin ana akışını açan bir öğe dışında gönderilere yönlendirmez.

Kayıtlar arasında gezinmek için “kategori” ve “etiket” kavramlarına dayalı farklı bir sistem kullanılmaktadır.

Başka bir makale yazarken, bir kategoriye, hatta bir değil iki veya üç kategoriye bağlanır. Kenar çubuğunda, kategori listesi içeren bir widget bulunur ve tüm yayın akışının içinden bir kategoriyle ilgili makaleleri seçebiliriz.

Ek olarak, her makaleye etiketler - bu girişi karakterize eden kelimeler - atanır. Ayrıca bu etiketlerden birkaçı da olabilir ve kayıtları etikete göre seçebilirsiniz. Etiketler genellikle her makalenin sonunda görünür. Ek olarak, kenar çubuğuna genellikle tüm etiketleri gösteren ve bu anahtar kelimelere tıklayarak makaleleri seçmenize olanak tanıyan bir "Etiket Bulutu" widget'ı yerleştirilir.

Sayfanın dış yapısı ve site malzemelerinin yerleşim yapısı onlar için önemlidir ancak dosya yapısı onlar tarafından görülmez. Esas olarak site geliştiricilerinin ilgisini çekmektedir.

Kısaca bu yapı hakkında. Herhangi bir web sitesi gibi, bir WordPress web sitesi de birçok dosyadan oluşur. En önemli şeylere bakalım.

İlk olarak, tüm içerik sunucuda ayrı olarak MySQL veritabanında depolanır.

İkinci olarak, görüntü dosyaları ayrı klasörlerde bulunur.

Üçüncüsü, sayfaların kendisi ayrı PHP dosyalarından oluşturulmuştur. Bu dosyaların sayısı değişebilir, aynı zamanda şablon seçimine de bağlıdır, ancak temel, gerekli dosyalar vardır.

Bu dosyaları görmek için WordPress yönetim konsolunda seçim yapmanız gerekir. Dış görünüş? Düzenlendi R. Sağ tarafta tüm WP dosyalarının bir listesi açılacaktır. Örneğin:

  • Arşivler
    (arşiv.php)

Bu yazı bir anlamda WordPress'in yapısı hakkında bilgi toplayacaktır. Veritabanının yapısı ve veritabanındaki tablolar - neden oldukları ve içlerinde nelerin saklandığı. Klasörlerin yapısı, içlerinde hangi dosyaların bulunduğu, bu dosya ve dizinlerin amacı. Rollerin, işlevlerin vb. listesi

O kadar büyümüş ki bölünmesi gereken “WordPress notları, püf noktaları ve hileleri” yazısından bilgileri aktardım.

  • Yönetici- temaların, kullanıcıların, eklentilerin, ayarların, sayfaların, gönderilerin, kategorilerin, yorumların, içeriğin içe ve dışa aktarılmasına mutlak erişim.
  • Editör- kendinizin ve diğer kişilerin içeriğini düzenlemek, oluşturmak, silmek, yorumları denetlemek, kategorileri düzenlemek, kendinizin ve diğer kişilerin sayfalarını, gönderilerini silmek, düzenlemek, yayınlamak, dosya yüklemek.
  • Yazar- yalnızca içeriğinizi - kayıtlarınızı oluşturma, düzenleme, yayınlama ve silme. Sayfalar oluşturulamıyor. Resim, dosya ve her türlü materyali yükleme haklarına sahiptir.
  • Katkıda Bulunan- yeni içerik ekleyebilir - yayınlama hakları olmadan kaydedebilir. Taslaklarını düzenleyebilir ve silebilir. Bir gönderiye yalnızca görsele bağlantı içeren HTML kodu kullanılarak görsel eklenemez. Katılımcılar ayrıca konsoldaki girişleri de görebilirler.
  • Abone- abonelerin özel gönderileri ve sayfaları ek eklenti veya kod olmadan görmesine izin verebilirsiniz.

Wordpress veritabanındaki tablo yapısı:

  • wp_commentmeta – yorum meta verileri için
  • wp_comments – yorumlar
  • wp_links - kullanımdan kaldırıldı; WordPress bağlantıları bölümüne girilen bilgileri saklar
  • wp_options – yönetici panelinin Seçenekler bölümündeki her şey bu tabloda, site ayarlarında saklanır
  • wp_postmeta – meta verileri yayınla
  • wp_posts – gönderiler, sayfalar, bunların revizyonları ve gezinme noktaları
    • kimlik - gönderiler, sayfalar, revizyonlar
    • post_author - kullanıcının kimliği - yazar.
    • post_date - gönderi tarihi
    • post_date_gmt - GMT'ye göre gönderim tarihi
    • post_content - içerik yayınla
    • post_title - yazı başlığı
    • post_excerpt – gönderi açıklaması
    • post_status – gönderi durumu: yayınlama, taslak, otomatik taslak, devralma
    • comment_status – Bir gönderiye yorum yapılmasına izin veriliyorsa "açık", yasaklanmışsa "kapalı".
    • ping_status
    • post_password - şifre korumalıysa yazıyı okumak için şifre
    • gönderi_adı - CNC bağlantılarında kullanılacak gönderinin takma adı.
    • to_ping
    • pinglendi
    • post_modified - gönderinin son değiştirilme tarihi
    • post_modified_gmt - gönderinin GMT'ye göre son değiştirilme tarihi
    • post_content_filtered
    • post_parent - gönderinin ana gönderisinin kimliği, eğer ebeveyn yoksa değer 0'dır
    • guid – URL'yi gönderiler için http://site/?p=id biçiminde veya sayfalar için http://site/kategori/test/ad biçiminde yayınlayın
    • menu_order – gönderi için sıfır, sayfa seri numarası, sayfaların görüntülenme sırasını belirlemek için kullanılır
    • post_type - gönderi türü şunlar olabilir: gönderi - gönderi, sayfa - sayfa, revizyon - sayfanın veya gönderinin kaydedilmiş sürümü, ek - medya, örneğin bir resim sayfası
    • post_mime_type
    • comment_count - gönderideki yorumların sayısı
  • wp_terms – esas olarak terimler/taksonomiler hakkında bilgi içerir (kategori, bağlantı kategorisi, etiket, menü)
    • term_id - terimin kimliği (örneğin kategoriler)
    • ad - terim adı
    • sümüklü böcek - terimin bağlantıda nasıl yazılacağı
  • wp_term_relationships – gönderiler ve kategoriler, etiketler ve diğer sınıflandırmalar arasındaki ilişkiler
    • object_id - gönderinin kimliği, bağlantı
    • term_taxonomy_id - bir kategorinin veya başka bir sınıflandırma teriminin kimliği (kategori, bağlantı kategorisi, etiket)
    • term_order - sıralama için kullanılır
  • wp_term_taxonomy – bu veya bu terimin ne tür bir terim olduğunu açıklar
    • term_taxonomy_id - sınıflandırma kimliği
    • term_id - terim kimliği
    • taksonomi - taksonomi türü: kategori, bağlantı_kategorisi, post_tag, nav_menu
    • ebeveyn - ana terim, örneğin bir kategori bir kategorinin içinde yer alıyorsa
    • count - sınıflandırmayla ilişkili nesnelerin (kayıtlar, bağlantılar) sayısı
  • wp_usermeta – kullanıcı hakları ve kayıtlı kullanıcılar hakkında ek bilgiler
  • wp_users – tüm kullanıcılar

Wordpress Dosya Yapısı

Kök dizin aşağıdaki klasörleri ve klasör dosyalarını içerir:

  • wp-config.php- Bu php dosyası veritabanı adı ve şifresini, kodlamasını, tablo önekini, dilini, önbellek boyutunu içerir, dosyaya daha birçok parametre ekleyebilirsiniz.
  • Dosya.htaccess- Apache web sunucusu ve benzer sunucular için ek bir yapılandırma dosyası. Web sunucusu için ayrı dizinlerde çok sayıda ek parametre ve izin ayarlamanıza olanak tanır.
  • wp-içerir- wordpress çekirdeği. Her güncellemede klasörün üzerine yazılır.
  • wp-admin- Yönetici konsolunu sağlayan CSS, JavaScript ve PHP dosyaları. Her güncellemede klasörün üzerine yazılır.
  • wp içeriği- kullanıcı klasörlerini içerir ve klasörlerden oluşur:
    • diller - .mo ve .po formatındaki motor çeviri dosyalarını içerir
    • eklentiler - yüklü eklentiler
    • temalar- yüklü şablonlar, en az bir şablonun yüklenmesi gerekir. Aşağıdaki klasörleri ve dosyaları içerebilir:
      • index.php - sitenin ana sayfasının şablonu, ayrıca kenar çubuğu dosyasını da yükler. Gerekli dosya, şablon klasörünün kökünde
      • style.css - şablon klasörünün kökünde, şablonun CSS stillerinden sorumlu gerekli bir dosya
      • head.php – bölümdeki verilerin çıktısından sorumlu dosya ve üst menü
      • sidebar.php – dosya, yan (ek) sütunların oluşturulmasından sorumludur. Temel olarak kategoriler, etiketler ve bannerlar burada görüntülenir.
      • footer.php – dosya altbilginin, alt menünün, telif haklarının görüntülenmesinden ve HTML etiketlerinin kapatılmasından sorumludur
      • single.php – bireysel gönderilerin görüntülenmesinden sorumludur.
      • page.php – bireysel sayfaların görüntülenmesinden sorumludur (örneğin, “İletişim”, “Hakkımızda” vb.)
      • archive.php – kayıtların arşiv sayfasını görüntülemekten sorumludur
      • Category.php – yayınları kategoriye göre görüntüleyen sayfalar oluşturur
      • tag.php – yayınların listesini etiketlere göre görüntüleyen sayfa şablonu
      • comments.php – dosya, yorumların nasıl görüntüleneceğini açıklar
      • Function.php – belirli işlevleri etkinleştirebileceğiniz veya devre dışı bırakabileceğiniz, ekleyebileceğiniz veya kaldırabileceğiniz, PHP kodlu ek bir dosya. Bir şeyin iyileştirilmesi gerekiyorsa, genellikle bu dosyaya özel kod eklenir.
      • /css/ - bu klasör ek css dosyaları içerebilir
      • /js/ – JavaScript dosyalarının bulunduğu klasör
      • /images/ - klasör şablonda yerleşik görselleri içerir
      • /languages/ - klasör tema çeviri dosyalarını içerir
    • yüklemeler - medya dosyaları: resimler, müzik, belgeler vb.

WordPress'teki Şablon Etiketleri

Şablon etiketleri, WordPress'te bilgi görüntülemek veya bir blog oluşturmak için kullanılan PHP işlevleridir; örneğin wp_list_pages() - bağlantı biçiminde sayfaların bir listesini görüntüler.

WordPress'in kendisinde şablon etiketleri aşağıdaki dosyalarda açıklanmıştır:

  • wp-includes/author-template.php - yazarla ilgili şablon etiketleri
  • wp-includes/bookmark-template.php - yer imleriyle ilişkili şablon etiketleri
  • wp-includes/category-template.php - kategoriler ve etiketler dahil tüm koşullar ve sınıflandırmayla ilgili şablon etiketleri
  • wp-includes/comment-template.php - yorum bölümü için şablon etiketleri dosyası
  • wp-includes/link-template.php - bağlantılar için şablon etiketleri (kalıcı bağlantılar, ek bağlantıları, arşiv bağlantıları vb.)
  • wp-includes/nav-menu-template.php - gezinme menüsü için şablon etiketleri
  • wp-includes/post-template.php - gönderilerle ilişkili şablon etiketleri
  • wp-includes/post-thumbnail-template.php - gönderi küçük resimleriyle ilişkili şablon etiketleri dosyası
  • wp-includes/general-template.php - her yerde kullanılabilecek diğer şablon etiketlerinin dosyası

WordPress dosya yapısı hakkında daha fazla bilgi edinmek ister misiniz? Ayrıca WordPress'in temel yazılımı, temaları, eklentileri ve sitede depolanan tüm kullanıcı yüklemeleri hakkında ne düşünüyorsunuz? Bu yazımda tüm bunlardan bahsedeceğim.

WordPress dosya yapısını neden bilmeniz gerekiyor?

Birçok kullanıcı, dosyaları ve dizinleri hakkında hiçbir fikri olmadan WordPress ile çalışmaya başlar ki bu çok kötü bir durumdur. Sonuçta, WordPress dosyaları ve dizinleri, neyin nerede ve neden saklandığı hakkında bilgi sahibi olmak, birçok yaygın sorunun dışarıdan yardım almadan çözülmesine yardımcı olabilir.

Bu makalede şunları öğreneceksiniz:

  • Hangi dosya ve dizinlerin root olduğu.
  • WordPress'in görüntüleri ve medya yüklemelerini depoladığı yer.
  • WordPress temaları ve eklentileri nerede saklıyor?
  • Yapılandırma dosyaları nerede saklanıyor?

Şimdi WordPress dosya yapısını incelemeye geçelim.

WordPress Dosyalarına ve Dizinlerine Erişim

Başlamak için bir FTP istemcisi kullanarak WordPress sunucunuza giriş yapın. Daha fazla ayrıntı için WordPress dosyalarını yüklemek için FTP'nin nasıl kullanılacağına ilişkin kılavuzu okuyun (çalışma devam ediyor). FTP'ye daha kolay bir alternatif Dosya Yöneticisi'dir (yerleşik cPanel yönetim paneline sahip bir web uygulaması). FTP veya Dosya Yöneticisi aracılığıyla WordPress'e giriş yaptığınızda, şunun gibi bir dosya ve dizin yapısı göreceksiniz:

WordPress kök dosyaları kırmızı renkle vurgulanır. Sitenin doğru çalışması bu dosyalara bağlıdır; hiçbir durumda kendiniz bu dosyalardaki herhangi bir şeyi değiştirmemelisiniz.

Kök dizindeki bu dosya ve klasörlerin listesi aşağıda verilmiştir:

  • wp-admin
  • wp-içerir
  • wp-active.php
  • wp-blog-header.php
  • wp-yorum-post.php
  • wp-config-sample.php
  • wp-cron.php
  • wp-links-opml.php
  • wp-load.php
  • wp-login.php
  • wp-mail.php
  • wp-ayarları.php
  • wp-signup.php
  • wp-trackback.php

Yapılandırma dosyaları

WordPress kök dizini bazı özel yapılandırma dosyalarını saklar. Bu dosyalar WordPress sitenize özel önemli ayarları içerir.

  • .htaccess bir sunucu yapılandırma dosyasıdır; WordPress bunu kalıcı bağlantıları yönetmek için kullanır ve .
  • wp-config.php – WordPress'e veritabanına nasıl bağlanılacağını anlatır. Ayrıca bazı önemli ayarları da belirler.
  • index.php, bir kullanıcı bir sayfa istediğinde temel olarak tüm WordPress dosyalarını yükleyen ve başlatan bir dizin dosyasıdır.

Bazen wp-config.php veya .htaccess dosyalarını düzenlemeye ihtiyaç duyulur. Bunu yaparken son derece dikkatli ve dikkatli olun. Herhangi bir küçük hata web sitenizi kullanılamaz hale getirebilir. Bu nedenle burada herhangi bir şeyi değiştirmeden önce bu dosyaların yedek kopyalarını aldığınızdan emin olun. Kök dizinde .htaccess dosyasını göremiyorsanız, .htaccess dosyasının neden kök dizinde görünmediğine (yazılmakta) ilişkin talimatları okuyun.

WordPress kurulumunuza bağlı olarak kök dizininizde aşağıdaki dosyalar bulunabilir veya bulunmayabilir:

  • robots.txt – arama botlarını taramaya yönelik tüm talimatları içerir
  • Favicon.ico – favicon dosyası bazen barındırma sahiplerinin kendileri tarafından oluşturulur.

WordPress tüm indirmeleri, eklentileri ve temaları wp-content klasöründe saklar.

Nasıl çalıştığını ve burada neler yapabileceğinizi anlamak için wp-content klasörünün içine bir göz atalım.

  • temalar
  • eklentiler
  • yüklemeler

WordPress site temalarını /wp-content/themes/ klasöründe saklar. Tema dosyasını düzenleyebilirsiniz ancak bu genellikle önerilmez. Web sitenizin tema sürümünü güncellediğinizde, tüm değişiklikleriniz bu güncelleme sırasında uygulanacaktır. Bu nedenle ana temanın özelleştirilmesi önerilir.

WordPress indirilen ve yüklenen tüm eklentileri klasörde saklar /wp-içerik/eklentiler/. Sitenin ihtiyaçlarına göre eklentiyi kendiniz oluşturmadığınız sürece eklenti dosyalarını düzenlemeniz önerilmez.

Birçok WordPress talimatında siteye eklenen kodları görebilirsiniz. Bunları alt temanızın function.php dosyasına veya siteye özel bir eklentiye eklemek en iyisidir.

WordPress tüm görselleri ve medya yüklemelerini bir klasörde saklar /wp-content/uploads/. Varsayılan olarak aşağıdaki gibi klasörlerde saklanırlar: /yıl ay/. Sitenizi her yedeklediğinizde bu klasörü unutmayın.

WordPress çekirdeğinin, temalarının ve eklentilerinin kopyalarını kaynaklarından indirebilirsiniz, ancak indirilenler klasörünüzü kaybederseniz yedekleme olmadan kurtarmak zor olacaktır.

wp-content dizini ayrıca aşağıdakiler gibi diğer standart klasörleri de saklar:

  • diller – bu klasör İngilizce olmayan sitelerin tüm dil dosyalarını saklar.
  • yükseltme, sitenin bir sürümünü güncellerken WordPress tarafından oluşturulan geçici bir klasördür.

wp-content ayrıca eklentiler tarafından oluşturulan klasörleri de saklar. Örneğin yukarıdaki ekran görüntüsü eklenti tarafından oluşturulan galeri klasörünü göstermektedir. Bu klasörlerin bazıları çok önemli dosyalar içerebilir. Örneğin “galeri” klasörü tüm görselleri saklar. Önemli verileri kaybetmemek için her zaman bu tür klasörlerin yedek kopyalarını oluşturun.

Diğer klasörler güvenle silebileceğiniz dosyalar içerir. Örneğin, W3 Total Cache veya WP Super Cache, önbelleğe alınmış dosyaları kendi klasörlerinde saklayabilir.

Bu kadar. Umarım bu makale WordPress dosya yapısını anlamanıza yardımcı olmuştur.

YouTube kanalıma abone olmayı, beni VKontakte ve Twitter'da bulmayı unutmayın.

İyi akşamlar arkadaşlar ve yoldaşlar!

Farklı bir konuda yayınlanmak üzere bir makale hazırlıyordum ancak anlatılan değişikliklerin yine wp-includes klasöründeki bir dosyayı etkilediği gerçeğiyle karşı karşıya kaldım. Makalede bu klasördeki dosyayı zaten düzenlediğimizi hatırlatmama izin verin - /wp_includes/taxonomy.php. Sonra bu an kafamı karıştırdı ve yine bu noktaya geldim. Bu nedenle, devam etmeden önce nihayet wp-includes klasöründeki dosyalarda değişiklik yapmanın mümkün olup olmadığını anlamaya karar verdim.

Arama net bir cevap verdi: wp-includes klasöründeki dosyaları düzenleyemezsiniz!

WordPress çekirdek dosyaları wp-includes içinde bulunur ve bir güncelleme sırasında, değişikliklere bağlı olarak WP'nin bir sonraki sürümünde güncellenebilir veya silinebilir.

Elbette sistem dosyalarında değişiklik yapabilirsiniz (kod açıktır), ancak bu durumda iki seçeneğiniz vardır:

1. Herhangi bir WordPress güncellemesi kalıcı olarak reddedilir. Sistem sürekli geliştiğinden, güvenlik iyileştirildiğinden, önceki sürümlerdeki hatalar ortadan kaldırıldığından, işlevsellik genişletildiğinden vb. Çok iyi bir seçenek değil.

2. Çekirdek dosyalarına yaptığınız tüm değişiklikleri kayıt ediyorsunuz ve güncelleme sonrasında bu değişiklikleri tekrarlıyorsunuz. İyi de değil. Sistem dosyalarını düzenleme konusundaki bu kötü alışkanlıktan hemen kurtulmazsanız, birçok değişiklik birikebilir ve bunları her seferinde tekrarlamak, sizi ilk seçeneğe, yani güncellemeleri reddetmeye yönlendirebilecek ek ve pek de ilginç olmayan bir etkinliktir. Ve her seferinde çekirdekte değişiklik yapamayacak kadar tembel olmasanız bile, bir sonraki güncellemeden sonra kodunuz bazı genel değişiklikler nedeniyle yeni çekirdeğe sığmayabilir.

Sonuç - bu kötü alışkanlığı kesin olarak bırakmalısınız!

Nasıl? WordPress bilginizi artırın. Sistem, çekirdeğe müdahale etmeden her zaman bir değişiklik seçeneği bulabileceğiniz şekilde tasarlanmıştır.

Mevcut bir sorunu çözmenin en kolay yolu, gerekli işlevselliğe sahip bir eklenti bulmaktır. Ve bir eklenti olduğu için aynı şey eklenti olmadan da yapılabilir.

function my_category_order($orderby, $args) ( if($args["orderby"] == "sort") return "t.sort"; else return $orderby; ) add_filter("get_terms_orderby", "my_category_order", 10, 2);

function my_category_order($orderby, $args)

if ($ args [ "sıralama" ] == "sıralama" )

"t.sort" komutunu döndürün;

başka

$orderby değerini döndür;

add_filter ("get_terms_orderby", "my_category_order", 10, 2) ;

get_terms_orderby işlevi, bir sql sorgusunun ORDER BY koşuluna ilişkin alanı iletir. Ve bu fonksiyona sıralama alanımız olan sort'u içeren ek kod ekledik.

1. ve 3. noktalarda her şey değişmeden kalır ve bu nedenle, eklenti kullanmadan özel kategori sıralaması uyguladık. Ancak artık kodumuz WordPress güncellemelerinden korkmuyor. Sıralama mevcut şablon için işe yarayacaktır; başka bir şablona taşımak isterseniz yeni bir tema için 2. ve 3. adımları tekrarlamanız gerekir.

Böylece çoğu durumda wp-includes klasöründeki dosyalarda değişiklik yapmaktan kaçınabilirsiniz.

Umarım örneğimi takip edersiniz ve WordPress çekirdek dosyalarını düzenlemeyi bırakırsınız. Aslında bu çok kötü bir uygulamadır, özellikle bunu kendiniz için yapmıyorsanız, başkasının emrini yerine getiriyorsanız. Şüphelenmeyen bir kişi, WordPress'i güncelleyecek ve parasını ödediği faydalı bir şeyi kaybedecek ve hatta böyle bir "saçmalığın" farkına bile varmayabilir. Eski sürüme dönecek, güncellemeleri reddedecek ve olumsuz deneyimini başkalarına aktaracak.

WordPress öğrenmede iyi şanslar! Kendinizi ve müşterilerinizi stresten koruyun! =)