WordPress functions.php dosyası, aktif temanın kök dizininde bulunan ve temaya özel PHP kodlarını, fonksiyonları ve WordPress davranış değişikliklerini barındıran özel bir tema dosyasıdır. Bu dosya, sitenin nasıl davranacağını şekillendiren “beyin” konumundadır. WordPress’i çekirdek dosyalarına dokunmadan özelleştirmenin en yaygın yollarından biri buradan geçer.
WordPress functions.php dosyası, aktif temaya özel PHP kodlarını çalıştıran bir tema dosyasıdır. Bu dosya WordPress çekirdeği tarafından her sayfa yüklemesinde otomatik olarak devreye alınır ve içindeki tüm fonksiyonlar sitenin diğer bileşenleri yüklenmeden önce çalıştırılır. Yani buraya eklediğin her kod, tema aktif olduğu sürece site genelinde etkili olur.
Dosyanın temel görevi WordPress’in varsayılan davranışını değiştirmek, yeni özellikler eklemek ve temaya özel işlevleri tanımlamaktır. Örneğin bir menü konumu tanımlamak, yazı küçük resimlerini aktifleştirmek, özel bir shortcode oluşturmak veya kenar çubuğu widget alanı kaydetmek gibi işlemlerin hepsi bu dosya üzerinden yapılır. WordPress’in “kanca” (hook) sistemi de büyük ölçüde bu dosyada kullanılır.
functions.php dosyası teknik olarak bir “mini eklenti” gibi davranır. Eklenti yazmak yerine küçük fonksiyonları doğrudan buraya eklersiniz ve tema aktifken bu kodlar çalışır. Ancak bu benzetmenin önemli bir sınırı vardır. Eklenti kodları tema değişikliğinden bağımsızdır, fakat functions.php dosyasındaki kodlar temayı değiştirdiğinizde kaybolur. Bu yüzden hangi kodun eklenti hangisinin functions.php içine gireceği doğru kararlaştırılmalıdır.
Dosyanın PHP formatında olması onu son derece güçlü kılar. PHP’nin tüm dil yetenekleri, WordPress’in kendi API’si ve veritabanı sorguları burada kullanılabilir. Ancak bu güç aynı zamanda büyük bir sorumluluk getirir. Tek bir yazım hatası bile tüm sitenin çökmesine ve beyaz ekran hatasına neden olabilir.
WordPress functions.php dosyası her zaman aktif temanın kök dizininde yer alır. Standart yol şu şekildedir:
wp-content/themes/aktif-tema-adi/functions.php
Örneğin Astra teması kullanıyorsanız dosyanın yolu wp-content/themes/astra/functions.php olur. GeneratePress kullanıyorsanız wp-content/themes/generatepress/functions.php şeklinde konumlanır. Her tema kendi functions.php dosyasını barındırır ve WordPress hangi tema aktifse o dosyayı yükler.
Alt tema (child theme) kullanıyorsan durum biraz farklıdır. Alt temanın da kendi functions.php dosyası olabilir ve WordPress iki dosyayı da yükler. Önce alt temanın functions.php dosyası, ardından ana temanın functions.php dosyası devreye girer. Bu sıralama, alt tema kodlarının ana tema kodlarını geçersiz kılmasına olanak tanır.
Dosyaya erişmek için üç ana yöntem mevcuttur. Birinci yöntem FTP istemcisidir (FileZilla, WinSCP gibi). FTP bilgilerini girdikten sonra sunucuya bağlanır, ilgili tema klasörüne gidip dosyayı indirir, düzenler ve yeniden yüklersiniz. İkinci yöntem hosting kontrol panelindeki dosya yöneticisidir. cPanel, DirectAdmin veya Plesk gibi paneller görsel bir dosya yöneticisi sunar ve buradan doğrudan düzenleme yapabilirsiniz. Üçüncü yöntem WordPress yönetim panelinden erişimdir. “Görünüm > Tema Dosya Düzenleyici” menüsü size dosyayı doğrudan tarayıcı üzerinden düzenleme imkânı verir, ancak bu yöntem güvenlik açısından önerilmez.
Bazı temalarda dosya bulunmayabilir. Eğer aktif temanın klasöründe functions.php yoksa yeni bir düz metin dosyası oluşturur, adını functions.php yapar ve tema dizinine yüklersiniz. WordPress bu dosyayı otomatik olarak tanır ve içindeki kodları çalıştırır.
WordPress functions.php dosyası her sayfa isteğinde WordPress tarafından çok erken bir aşamada yüklenir. Bu erken yükleme sayesinde dosyada tanımladığın fonksiyonlar sayfa yüklenmeden önce hazır hale gelir ve sonraki tüm bileşenler bu fonksiyonları kullanabilir.
Dosyanın başında genellikle <?php etiketi bulunur. Ancak sonuna ?> kapanış etiketi eklemek önerilmez. Bunun nedeni tekniktir. Kapanış etiketinden sonra istemeden bir boşluk veya satır atlaması bırakılırsa bu boşluk HTTP yanıtına dahil olur ve “headers already sent” hatasına neden olur. Bu hata tüm sitenin çökmesine yol açabileceği için kapanış etiketini yazmamak WordPress topluluğunun standart pratiğidir.
Dosyanın çalışma mantığı büyük ölçüde WordPress’in kanca (hook) sistemine dayanır. Kancalar iki türlüdür.
Eylem Kancaları (Action Hooks) WordPress belirli bir noktaya ulaştığında (bir sayfa yüklendiğinde, bir yazı kaydedildiğinde, kullanıcı giriş yaptığında gibi) sizin belirlediğiniz fonksiyonun çalışmasını sağlar. add_action() fonksiyonu bu iş için kullanılır. Örneğin add_action(‘wp_enqueue_scripts’, ‘benim_scriptlerim’) kodu, WordPress sayfayı hazırlarken sizin benim_scriptlerim fonksiyonunuzu çalıştırır ve bu fonksiyon CSS/JS dosyalarını sayfaya ekler.
Filtre Kancaları (Filter Hooks) WordPress bir veriyi kullanmadan veya ekrana basmadan önce o veriyi değiştirmenize olanak tanır. add_filter() fonksiyonu bu amaçla kullanılır. Örneğin add_filter(‘the_content’, ‘icerigi_degistir’) kodu, yazının içeriği ekrana basılmadan önce içeriği sizin icerigi_degistir fonksiyonunuzdan geçirir ve fonksiyonun döndürdüğü değeri kullanır.
WordPress’te binlerce hazır kanca vardır. Her biri sitenin belirli bir davranışını değiştirmene olanak tanır. Bu esneklik functions.php dosyasını son derece güçlü kılan asıl unsurdur.
Göz atın: WordPress Kısa Kodlar Rehberi
WordPress functions.php dosyası düzenlemek için farklı yaklaşımlar mevcuttur ve her birinin kendine özgü avantajları vardır. Doğru yöntemi seçmek hem güvenlik hem de sürdürülebilirlik açısından kritiktir.
FTP en güvenli yöntemdir çünkü bir sorun oluştuğunda hemen dosyaya erişip düzeltme yapabilirsiniz. FileZilla gibi bir FTP istemcisi kurar, hosting sağlayıcınızın size verdiği FTP bilgileriyle sunucuya bağlanırsınız. wp-content/themes/aktif-tema/ klasörüne gider, functions.php dosyasını bilgisayarınıza indirirsiniz. Bir metin editörüyle (VS Code, Sublime Text, Notepad++ gibi) dosyayı açar ve düzenlersiniz. Düzenleme bittikten sonra dosyayı sunucuya geri yüklersiniz.
Bu yöntemin en büyük avantajı, bir hata oluşup site çöktüğünde eski dosyayı hemen geri yükleyebilmenizdir. Yönetim paneline erişemeseniz bile FTP çalışmaya devam eder ve kurtarma yapabilirsiniz.
cPanel, DirectAdmin veya Plesk gibi paneller “Dosya Yöneticisi” (File Manager) özelliği sunar. FTP kurmadan doğrudan tarayıcı üzerinden dosya işlemleri yapabilirsiniz. Aynı yola giderek functions.php dosyasını bulur, sağ tıklayıp “Edit” seçeneğiyle açar ve düzenlersiniz.
Bu yöntem FTP kadar güvenlidir ve teknik bilgi gerektirmez. Özellikle hızlı düzenlemeler için pratik bir seçenektir.
WordPress yönetim panelinde “Görünüm > Tema Dosya Düzenleyici” menüsünden dosyaya erişebilirisiniz. Sağ tarafta tema dosyaları listelenir, functions.php üzerine tıklayarak düzenleme yaparsınız.
Bu yöntem pratik gibi görünse de ciddi riskler taşır. Kaydet butonuna bastığınız anda bir hata varsa site çöker ve aynı anda yönetim paneline erişiminizi de kaybedersiniz. Yani düzeltme yapmak için FTP veya dosya yöneticisine gitmek zorunda kalırsınız. Bu yüzden WordPress topluluğu bu yöntemi güvenlik açısından önermez. Ayrıca hosting sağlayıcıların çoğu bu özelliği varsayılan olarak kapatır.
Code Snippets eklentisi functions.php dosyasına kod eklemek için modern bir alternatiftir. Eklentiyi kurduktan sonra “Snippets > Add New” menüsünden her kod parçasını ayrı bir kayıt olarak eklersiniz. Her snippet için başlık, açıklama ve etiketler tanımlarsınız.
Bu yaklaşımın büyük avantajları vardır. Her kod parçası ayrı yönetilir, tek tek aktif/pasif hale getirilebilir, hata durumunda eklenti otomatik olarak devre dışı bırakır ve site açılır. Ayrıca tema değişikliğinden etkilenmez çünkü kodlar veritabanında saklanır. Modern WordPress geliştiricileri arasında bu yöntem giderek yaygınlaşıyor.
En profesyonel yaklaşım alt tema (child theme) kullanmaktır. Alt tema ana temanın işlevselliğini miras alır, ancak kendi functions.php dosyasına sahip olur. Buraya eklediğiniz kodlar tema güncellemelerinden etkilenmez.
Alt tema kullanmak biraz daha karmaşık bir kurulum gerektirir. Ana temanın klasörüne paralel yeni bir klasör oluşturur (örneğin astra-child), içine style.css ve functions.php dosyaları eklersiniz. style.css dosyasının başına ana temayla ilişki kuran bir yorum bloğu yazarsınız. WordPress yönetim panelinden yeni alt temayı aktifleştirirsiniz ve tüm özelleştirmelerinizi bu alt temanın functions.php dosyasında yaparsınız.
WordPress functions.php dosyası sitenin neredeyse her yönünü özelleştirmek için kullanılabilir. Aşağıda en yaygın kullanım örneklerini pratik kodlarla açıklıyorum.
Modern WordPress temalarının çoğu belirli özellikleri desteklemek için tanımlama gerektirir. Yazı küçük resimleri, özel logo, HTML5 desteği gibi özellikler bu şekilde aktifleştirilir.
php
add_theme_support( ‘post-thumbnails’ );
add_theme_support( ‘custom-logo’ );
add_theme_support( ‘title-tag’ );
add_theme_support( ‘html5’, array( ‘search-form’, ‘gallery’, ‘caption’ ) );
Bu kodları functions.php dosyasına eklediğinde tema küçük resim yükleme, özel logo desteği ve HTML5 formlar gibi özelliklere kavuşur.
Temanızda birden fazla menü alanı kullanmak istiyorsanız (üst menü, alt menü, mobil menü gibi) bunları önceden kaydetmeniz gerekir.
php
function skyzone_menu_kayit() {
register_nav_menus( array(
‘ana-menu’ => ‘Ana Menü’,
‘alt-menu’ => ‘Alt Bilgi Menüsü’,
‘mobil-menu’ => ‘Mobil Menü’
) );
}
add_action( ‘after_setup_theme’, ‘skyzone_menu_kayit’ );
Bu kod üç ayrı menü konumu tanımlar ve WordPress yönetim panelindeki “Görünüm > Menüler” sayfasında bu konumlar seçenek olarak görünür hale gelir.
Kenar çubukları ve widget alanları da functions.php üzerinden tanımlanır.
php
function skyzone_widget_alani() {
register_sidebar( array(
‘name’ => ‘Ana Kenar Çubuğu’,
‘id’ => ‘ana-kenar-cubugu’,
‘description’ => ‘Ana kenar çubuğu widget alanı’,
‘before_widget’ => ‘<aside class=”widget”>’,
‘after_widget’ => ‘</aside>’,
‘before_title’ => ‘<h3 class=”widget-baslik”>’,
‘after_title’ => ‘</h3>’
) );
}
add_action( ‘widgets_init’, ‘skyzone_widget_alani’ );
Bu tanımlama sonrası “Görünüm > Bileşenler” menüsünde yeni widget alanı görünür ve buraya istediğiniz widget’ları sürükleyebilirsiniz.
Sitenize özel stil veya betik dosyaları eklemek için wp_enqueue_style ve wp_enqueue_script fonksiyonlarını kullanırsınız. Bu WordPress’in doğru ve güvenli yöntemidir.
php
function skyzone_dosya_yukle() {
wp_enqueue_style( ‘ozel-stil’, get_stylesheet_directory_uri() . ‘/css/ozel.css’, array(), ‘1.0.0’ );
wp_enqueue_script( ‘ozel-script’, get_stylesheet_directory_uri() . ‘/js/ozel.js’, array( ‘jquery’ ), ‘1.0.0’, true );
}
add_action( ‘wp_enqueue_scripts’, ‘skyzone_dosya_yukle’ );
Bu yöntem HTML kaynağına doğrudan <script> veya <link> etiketi eklemekten çok daha temizdir çünkü WordPress bağımlılıkları yönetir ve çakışmaları önler.
WordPress varsayılan olarak üç resim boyutu üretir (thumbnail, medium, large). Temanıza özel yeni boyutlar tanımlayabilirsiniz.
php
add_image_size( ‘blog-onizleme’, 400, 250, true );
add_image_size( ‘kahraman-gorseli’, 1920, 800, true );
add_image_size( ‘kare-vitrin’, 300, 300, true );
Üçüncü parametredeki true değeri kırpma modunu aktifleştirir ki bu resmin belirtilen orana kesilmesini sağlar.
Yazı ve sayfalara dinamik içerik eklemek için shortcode tanımlayabilirsiniz.
php
function skyzone_yil_shortcode() {
return date( ‘Y’ );
}
add_shortcode( ‘yil’, ‘skyzone_yil_shortcode’ );
Bu shortcode’u [yil] şeklinde herhangi bir yazıya eklediğinizde otomatik olarak mevcut yıl görünür.
WordPress’in bazı davranışları site ihtiyacına göre kapatılabilir veya değiştirilebilir.
php
// Emoji desteğini kapat
remove_action( ‘wp_head’, ‘print_emoji_detection_script’, 7 );
remove_action( ‘wp_print_styles’, ‘print_emoji_styles’ );
// Otomatik güncellemeyi kapat
add_filter( ‘automatic_updater_disabled’, ‘__return_true’ );
// WordPress versiyonunu head’den kaldır
remove_action( ‘wp_head’, ‘wp_generator’ );
Bu tür kodlar performans, güvenlik ve site optimizasyonu için sıkça kullanılır.
WordPress yönetim panelini de functions.php üzerinden özelleştirebilirsiniz.
php
// Yönetici menüsünden bazı öğeleri kaldır
function skyzone_admin_menu_temizle() {
remove_menu_page( ‘edit-comments.php’ );
remove_menu_page( ‘tools.php’ );
}
add_action( ‘admin_menu’, ‘skyzone_admin_menu_temizle’ );
Bu kod yorum menüsünü ve araçlar menüsünü yönetim panelinden kaldırır.
Göz atın: WordPress SEO Nasıl Yapılır Rehberi
WordPress functions.php dosyası ile eklenti sık sık karıştırılan iki kavramdır. İkisi de PHP kodu içerir ve WordPress’in davranışını değiştirir. Ancak aralarındaki farklar önemlidir ve doğru seçim yapmak sitenin sürdürülebilirliği için kritiktir.
Aşağıdaki tablo iki yaklaşımı karşılaştırıyor.
| Özellik | functions.php | Eklenti |
| Bağımlılık | Aktif temaya bağlı | Temadan bağımsız |
| Tema Değişikliği | Kodlar kaybolur | Kodlar korunur |
| Kurulum | Doğrudan dosyaya ekleme | Eklenti kur ve aktifleştir |
| Bakım | Manuel yönetim | Güncelleme mekanizması |
| İzolasyon | Site genelinde etkili | Bağımsız çalışır |
| Kod Organizasyonu | Tek dosyada birikir | Modüler yapı |
| Hata Etkisi | Tüm site çöker | Sadece eklenti etkilenir |
| Kullanım Alanı | Temaya özel işlevler | Site geneli işlevler |
Bu farklar hangi kodun nereye gireceğine karar vermene yardımcı olur. Temel kural şudur: Temaya özel bir işlevse (menü konumu, widget alanı, tema desteği gibi) functions.php uygundur. Site geneli bir işlevse ve tema değişikliğinde de çalışmaya devam etmesi gerekiyorsa (SEO ayarları, güvenlik önlemleri, özel yazı türleri, ödeme sistemi entegrasyonu gibi) eklenti daha doğru seçimdir.
Örneğin bir e-ticaret sitesinde ödeme entegrasyonunu functions.php içine yazarsan tema değiştirdiğinde tüm ödeme sistemin çöker. Bu felaket bir senaryodur. Aynı entegrasyonu bir eklenti olarak yazdığında tema değişikliğinden bağımsız çalışmaya devam eder.
WordPress functions.php dosyası güçlü bir araçtır ancak yanlış kullanıldığında ciddi problemlere yol açar. Aşağıdaki noktalar profesyonel bir yaklaşım için önemlidir.
Mutlaka yedek alın. Her düzenlemeden önce dosyanın yedeğini almalısınız. Kod eklemeden önce mevcut dosyayı bilgisayarınıza indirir veya sunucuda functions.php.bak olarak kopyalarsınız. Bir sorun oluştuğunda yedekten geri dönmek 30 saniyelik bir işlemdir.
Alt tema kullanın. Ana temanın functions.php dosyasını doğrudan düzenlemek uzun vadeli bir hatadır. Tema güncellendiğinde tüm eklemeleriniz silinir. Alt tema kullanarak bu problemi kalıcı olarak çözebilirsiniz.
Kapanış etiketi (?>) kullanmayın. Dosyanın sonuna ?> etiketi eklemek “headers already sent” hatasına neden olabilir. WordPress standartlarına göre PHP dosyaları kapanış etiketi olmadan biter.
Fonksiyon isimlerini benzersiz yapın. Fonksiyonlarınıza benim_menum gibi jenerik isimler yerine skyzone_menum gibi önek ekli isimler verin. Aksi halde başka bir eklenti veya tema aynı ismi kullanırsa “Cannot redeclare function” hatası alırsınız.
Hataları test edin. Kod eklemeden önce sözdizimini kontrol etmek için PHP linter araçları veya online PHP kontrolcüleri kullanabilirsiniz. Küçük bir yazım hatası bile sitenin tamamını çökertebilir.
Debug modunu açın. Geliştirme sırasında wp-config.php dosyasında WP_DEBUG ayarını true yapmak hataları görmenize yardımcı olur. Ancak canlı sitede debug modunu kapatmak gereklidir.
Kod yorumları ekleyin. Her kod parçasının ne yaptığını açıklayan yorumlar ekleyin. Aylar sonra dosyaya baktığınızda ne olduğunu hatırlamak zor olabilir. Yorumlar hem size hem de sitenize bakan diğer geliştiricilere yardımcı olur.
php
/**
* Yazı küçük resim desteğini aktifleştirir.
* WordPress 2.9 ve üzeri için gereklidir.
*/
add_theme_support( ‘post-thumbnails’ );
Kodları modüler tutun. Yüzlerce satırlık tek bir functions.php dosyası yerine kodları mantıksal parçalara bölün. Alt tema kullanıyorsanız inc/ gibi bir alt klasör açar, kodları farklı dosyalara böler ve functions.php içinde require_once ile bu dosyaları çağırırsınız.
Performansı gözetin. Kötü optimize edilmiş kodlar sitenin yavaşlamasına neden olur. Özellikle her sayfa yüklemesinde veritabanı sorgusu yapan kodlar dikkatli yazılmalıdır. Cache mekanizmaları (transient API gibi) performansı korumak için yardımcı olur.
Güvenlik pratiklerini uygulayın. Kullanıcı girdilerini mutlaka temizleyin (sanitize_text_field(), esc_html(), esc_attr() gibi). SQL sorgularında $wpdb->prepare() kullanın. Yetki kontrolü için current_user_can() fonksiyonundan yararlanın.
WordPress functions.php dosyası ile çalışırken bazı tipik hatalarla karşılaşabilirsin. Bu hataların çözümlerini önceden bilmek zaman kazandırır.
Beyaz ekran hatası en sık karşılaşılan sorundur. functions.php dosyasına eklenen kodda sözdizimi hatası olduğunda tüm site çöker. Çözüm için FTP ile dosyaya erişir, son eklediğiniz kodu silersiniz. Yedek aldıysanız yedekten geri yüklersiniz.
“Cannot redeclare function” hatası aynı isimli fonksiyonun iki yerde tanımlandığında ortaya çıkar. Bu durumda fonksiyon isimlerine önek ekleyerek çakışmayı önlersiniz.
“Headers already sent” hatası genellikle dosyada beklenmeyen bir boşluk veya kapanış etiketi sonrası satır atlaması olduğunda ortaya çıkar. Dosyanın başındaki <?php etiketinden önce hiçbir karakter olmamalıdır ve sonuna ?> eklenmemelidir.
“Call to undefined function” hatası kullandığınız WordPress veya PHP fonksiyonunun mevcut olmadığını gösterir. Bu genellikle eski WordPress sürümlerinde yeni fonksiyonları kullanmaktan veya bir eklenti duyarlılığı sağladığı fonksiyonu eklenti pasifken çağırmaktan kaynaklanır.
Fonksiyonun çalışmaması genellikle yanlış hook kullanımından kaynaklanır. Örneğin wp_enqueue_scripts yerine admin_enqueue_scripts kullanırsanız kod ön yüzde çalışmaz. Doğru hook’u seçmek kritiktir.
Yavaşlama sorunu dosyaya çok sayıda ağır kod eklendiğinde ortaya çıkar. Her sayfa yüklemesinde çalışan kodların hafif olması gerekir. Ağır işlemleri cache ile hafifletebilir veya sadece belirli sayfalarda çalışacak şekilde koşullu yapabilirsiniz.
php
// Sadece belirli sayfada çalışsın
function skyzone_ozel_kod() {
if ( is_singular( ‘post’ ) ) {
// Ağır kod burada
}
}
add_action( ‘wp_head’, ‘skyzone_ozel_kod’ );
Göz atın: Beyaz Ekran Hatası WordPress Çözümü
functions.php dosyasına eklediğim kodlar tema değişikliğinde ne olur? (Soru)
Tema değişikliğinde ana temanın functions.php dosyasına eklediğiniz tüm kodlar kaybolur çünkü kodlar aktif tema klasöründe saklanır. Bu problemi önlemek için alt tema (child theme) kullanmalı veya kodları bir eklentiye taşımalısınız.
functions.php dosyasını doğrudan yönetim panelinden düzenlemek güvenli mi? (Soru)
Güvenli değildir. Bir yazım hatası yaptığınızda hem site hem de yönetim paneli çöker. Yönetim paneline erişiminizi kaybettiğiniz için FTP ile müdahale etmeniz gerekir. Bu yüzden önce FTP ile yedek alıp sonra düzenleme yapmak veya Code Snippets gibi eklentiler kullanmak daha güvenlidir.
functions.php dosyasında PHP kapanış etiketi (?>) kullanmalı mıyım? (Soru)
Kullanmamalısın. WordPress topluluğunun standardı sadece PHP kodu içeren dosyalarda kapanış etiketi bırakmamaktır. Kapanış etiketinden sonra istemeden bırakılan bir boşluk “headers already sent” hatasına yol açabilir.
Aynı işlev için hem eklenti hem functions.php kullanabilir miyim? (Soru)
Teknik olarak mümkün ancak önerilmez. Aynı işlevin iki yerde tanımlanması “Cannot redeclare function” hatası verir ve sitenin çökmesine neden olur. Her işlev için tek bir konum seçmelisin.
functions.php dosyasına çok fazla kod eklemek sitemi yavaşlatır mı? (Soru)
Evet, yavaşlatabilir. Her sayfa yüklemesinde dosya tam olarak yüklenip çalıştırılır. Yüzlerce satırlık bir dosya, özellikle ağır işlemler içeriyorsa, sayfa yükleme sürelerini uzatır. Bu durumda kodları modüler dosyalara bölmek veya eklentilere taşımak performansı iyileştirir.
functions.php ile bir eklenti oluşturmak arasında hangisi daha profesyonel? (Soru)
Duruma bağlıdır. Temaya özel küçük işlevler için functions.php idealdir. Ancak yeniden kullanılabilir, tema bağımsız veya karmaşık işlevler için eklenti çok daha profesyonel bir seçimdir. Bir e-ticaret entegrasyonu, SEO işlevi veya özel yazı türü kesinlikle eklenti olmalıdır.
Alt tema oluşturmak zor mu? (Soru)
Hayır, oldukça basittir. Ana temanın klasörüne paralel yeni bir klasör açar, içine style.css ve functions.php dosyaları koyarsınız. style.css başına özel bir yorum bloğu yazarak ana temayla ilişki kurarsınız. Bu işlem 5 dakikada tamamlanır ve tema güncellemelerinden bağımsız bir yapı kazandırır.
göz atın: Blog Yazısı SEO Kontrol Listesi
WordPress functions.php dosyası, WordPress ekosisteminin en güçlü özelleştirme araçlarından biridir. Doğru kullanıldığında sitenin davranışını temelden değiştirmene, yeni özellikler eklemene ve WordPress’i tam olarak ihtiyaçlarına göre şekillendirmene olanak tanır. Ancak bu güç ciddi bir sorumluluk gerektirir. Küçük bir yazım hatası bile tüm siteyi çökertebilir.