Apakah ada jenis global file functions.php yang berfungsi untuk setiap tema?
Masalahnya ada di sini:
Ketika saya mengubah file functions.php dalam tema apa pun, saya harus menangani dua perubahan: Pertama, saya harus menjaga pembaruan tema tersebut. Kedua, saya harus berhati-hati dalam mengubah tema situs.
Jadi, alih-alih membuat perubahan pada functions.php suatu tema, apakah mungkin membuat perubahan pada beberapa file functions.php yang tidak tergantung pada tema apa pun?
Jawaban:
Perbedaan antara tema dan kode non-tema adalah organisasi daripada teknis. Kode apa pun yang aktif berkontribusi pada lingkungan yang dihasilkan, tidak masalah dari mana kode itu diambil.
Ada sejumlah tempat kode berasal, yang bukan bagian dari inti WordPress:
wp-config.php
file konfigurasiTempat khas untuk kode Anda sendiri, yang seharusnya tidak menjadi bagian dari tema, adalah membuat plugin. Pendekatan lain tidak memiliki manfaat dari kasus generik, tetapi antarmuka forfeit (mengelola melalui admin area) dan teknis (aktivasi / deaktivasi / uninstall peristiwa) kenyamanan plugin normal.
sumber
functions.php
, atau 2) membuat Plugin kustom untuk menampung fungsionalitas itu, sehingga portabel di antara berbagai Tema.Template:
tag dengan tepat di Tema Anakstyle.css
.Nah itu adalah masalah nyata dan banyak orang yang menghadapinya ketika mereka mengubah tema tetapi ada solusi sederhana.
tambahkan fungsi itu ke halaman baru bukan functions.php dan berikan nama yang unik misalnya yousitename + timestamp atau apa pun yang Anda inginkan tetapi unik buat folder dengan nama yang sama di-zip dan unggah sebagai plugin sehingga pasti akan berfungsi sampai Anda menonaktifkannya .
Untuk memahami plugin mana yang tidak ketinggalan memberi nama pada plugin itu seperti:
sumber
Sebagai tambahan untuk jawaban @MBTheDeveloper.
Pilihan lain adalah:
include
di file tema fungsi php Anda dan memuat file custom-function.php yang berisi kode kustom Anda.sumber
Jangan membuat perubahan spesifik situs Anda di file functions.php tema.
Alih-alih, buat plugin khusus situs. Saya suka menggunakan nama domain situs, seperti "ottopress.com". Lalu masukkan potongan Anda ke plugin itu dan biarkan aktif di situs itu saja.
Atau, ketika Anda memiliki potongan perubahan terkait, buat plugin khusus untuk hanya mereka. Itu memberi Anda opsi untuk mengaktifkan / menonaktifkan bit kode terkait yang diperlukan.
sumber
Beberapa Penjelasan
Pertama, Anda perlu memahami tujuan functions.php dalam sebuah tema. Functions.php pada dasarnya hanya sebuah file plugin tanpa nama apa pun yang jika ada secara otomatis dimuat oleh Wordpress. Wordpress memuat function.php tema Anda saat ini untuk halaman front-end wordpress dan juga halaman back-end (admin).
Tidak ada perbedaan antara plugin dan functions.php kecuali bahwa plugin memiliki nama dan mereka dapat diaktifkan / dinonaktifkan terlepas dari plugin dan tema lainnya. The funtions.php dilampirkan dengan tema Anda saat ini dan jika Anda beralih ke tema lain Wordpress menggunakan functions.php tema baru dan bukan functions.php lama Anda dengan modifikasi khusus.
Pembaruan tema juga menimpa functions.php dan tidak ada cara untuk menghindarinya, bahkan jika Anda memasukkan modifikasi khusus Anda dalam file kode terpisah dan memasukkannya ke fucntions.php Anda, Anda harus menambahkan baris sertakan setelah setiap pembaruan.
Umumnya jenis kode yang harus masuk dalam functions.php:
Karena Anda ingin mempertahankan modifikasi khusus meskipun Anda mengganti tema. Karena tema anak tidak akan berfungsi dalam kasus ini karena Anda akan mengganti tema dan fungsinya. Php tema anak tidak akan digunakan.
Solusinya
Satu-satunya solusi yang direkomendasikan oleh @Otto adalah membuat file plugin. Pendekatan yang dapat Anda lakukan untuk membuat plugin khusus situs Anda adalah membuat folder dengan nama pengguna di 'wp-content / plugins' dan membuat file plugin di dalamnya.
Mengapa file plugin? dan bukan file plugin tunggal.
Fungsionalitas situs terkait grup terkait dengan kode dalam file plugin terpisah dan jangan lupa untuk menambahkan header plugin di semua file plugin Anda sehingga mereka dikenali oleh Wordpress sebagai plugin terpisah. Anda kemudian akan memiliki kemampuan untuk mengaktifkan / menonaktifkan fitur yang berbeda / fungsi situs Anda tanpa merusak semuanya.
sumber