Tema Anak di WordPress – Bagaimana dan Mengapa Menggunakannya

Diterbitkan: 2016-04-29

Inti dari WordPress adalah memberi orang kekuatan untuk membangun, memodifikasi, dan menyempurnakan situs atau blog mereka sendiri. Ini adalah sesuatu yang, hanya satu dekade yang lalu, Anda perlu menyewa seorang desainer/pengembang profesional.

Saat ini, Anda dapat mengurus situs Anda sendiri, dan Anda dapat membuatnya terlihat apa pun yang Anda inginkan.

Tetapi bagaimana jika Anda ingin melampaui apa yang dapat dilakukan oleh Penyesuai WordPress ? Bagaimana jika Anda ingin mengubah sesuatu tentang tema WordPress Anda saat ini dengan cara yang sedikit lebih disesuaikan?

Nah, di situlah tema anak berperan.

Mengapa menggunakan tema anak?

Mari kita mulai dari sisi lain koin:

Kelemahan no.1 jika Anda *tidak* menggunakan tema anak, dan sebagai gantinya melakukan modifikasi apa pun pada tema (normal) Anda saat ini, adalah bahwa semua modifikasi itu akan hilang jika Anda pernah memperbarui tema.

Nah, yang saya maksud dengan modifikasi :

  • setiap pengeditan kode manual yang dilakukan pada file PHP tema mana pun,
  • modifikasi apa pun pada file style.css ,
  • file baru apa pun yang mungkin telah Anda masukkan ke direktori tema (ini termasuk file PHP, file CSS, bahkan grafik, semuanya secara harfiah) – ini adalah masalah umum jika Anda memiliki templat halaman khusus.

Jadi hanya untuk menekankan ini sekali lagi, semua hal di atas akan hilang segera setelah Anda memperbarui tema Anda.

Tapi mengapa ini buruk?

Nah, masalahnya mungkin tidak sebrutal itu jika tema yang Anda gunakan belum diperbarui seperti dulu. Namun, sebagian besar tema WordPress berkualitas cenderung lebih sering disegarkan. Dan itu terutama berlaku untuk tema default di WordPress (mis. Twenty Fifteen) – mereka diperbarui setiap kali ada versi baru dari inti WordPress yang dirilis.

Dalam situasi seperti itu, Anda tidak ingin melewatkan semua hal dan tambalan baru yang menyertai pembaruan tersebut. Secara efektif, mereka membuat situs web Anda berfungsi dengan benar dengan versi baru WordPress, dan juga meningkatkan keamanan semuanya (memperbaiki lubang dan bug keamanan umum).

Tapi ada lagi. Menggunakan tema anak juga memberi Anda nilai tambah dalam bentuk organisasi kerja yang lebih baik.

Begini masalahnya, jika Anda mencoba mengedit apa pun di dalam tema WordPress Anda saat ini, akan lebih mudah untuk mengacaukan sesuatu. Misalnya, Anda dapat secara tidak sengaja menghapus beberapa baris kode penting, atau bahkan seluruh file, dll.

Dengan tema anak, semua modifikasi jauh lebih terorganisir. Setiap file yang ada di direktori tema anak hanya berisi kode Anda sendiri, jadi tidak perlu lagi bertanya-tanya, “apakah saya sudah memodifikasi file X atau belum?”

Bagaimana membangun tema anak pertama Anda

Bagian ini sangat mudah, dan hampir tidak memerlukan pengkodean apa pun. Namun, pertama-tama, beberapa pedoman umum:

  • Setiap tema bisa menjadi tema induk. Dengan kata lain, Anda dapat membuat tema anak untuk tema apa pun yang sudah Anda miliki.
  • Tema anak bergantung pada orang tua untuk melakukan sebagian besar "hal" mereka. Dalam cara yang paling dasar, tema anak kosong mengambil semua kode, desain, gaya, dll. langsung dari induknya tanpa mengubah apa pun.
  • Tema anak membutuhkan kehadiran orang tua agar dapat berfungsi. Setelah Anda menghapus tema induk, tema anak Anda tidak akan berfungsi lagi.
  • Seperti yang disebutkan sebelumnya, Anda dapat memperbarui tema induk dan tidak kehilangan modifikasi apa pun.
  • Dalam hal apa pun, Anda dapat beralih ke tema induk kapan saja, dan kembali ke versi asli tema Anda.

Sekarang, ke caranya. Tema anak hanya membutuhkan beberapa hal:

  • direktori baru di dalam wp-content/themes , dan dengan nama/siput yang unik, apa pun yang Anda ingin menyebutnya,
  • file style sheet di dalam direktori baru itu – style.css ,
  • dan file functions.php .

Berikut adalah contoh tema anak yang saya buat untuk tema default WordPress sebelumnya – Twenty Fifteen. Saya mulai dengan membuat direktori bernama t15-child :

anak

Selanjutnya, saya membuat dua file baru di direktori itu dan menyebutnya style.css dan functions.php :

anak-tema-dir

Mari kita edit file style.css terlebih dahulu. Ini milikku:

 /* Theme Name: T15 child KK Theme URI: http://karol.cc/ Author: Karol K Author URI: http://karol.cc/ Template: twentyfifteen Description: My child of twentyfifteen Version: 1.0.0 License: GNU General Public License v2.0 License URI: http://www.gnu.org/licenses/gpl-2.0.html Text Domain: t15-child */

Tidak ada yang terlalu mewah, seperti yang Anda lihat. Dua garis penting di sana telah disorot:

  • Nama Tema – nama tema anak baru, seperti yang akan muncul di wp-admin, di bawah Appearance / Themes .

anak-tema

  • Template – baris terpenting di sini – menunjuk ke tema induk dengan slug-nya.

Kemudian, mari kita pergi ke file functions.php . Satu-satunya hal yang saya miliki di sana adalah:

 <?php function theme_enqueue_styles() { $parent_; wp_enqueue_style($parent_style, get_template_directory_uri().'/style.css'); wp_enqueue_style('child-style', get_stylesheet_directory_uri().'/style.css', array($parent_style)); } add_action('wp_enqueue_scripts', 'theme_enqueue_styles');

Ini hanya fungsi baru yang sederhana. Ia mengurus dua hal:

  • itu mengambil lembar gaya asli dari tema induk, dan
  • itu "menghidupkan" file style.css baru, sehingga Anda dapat melakukan modifikasi lebih lanjut pada desain tema di file itu.

Hal penting lainnya yang perlu diingat:

  • Sekarang, Anda dapat memodifikasi file style.css baru Anda dengan bebas. Kelas baru apa pun yang Anda tempatkan di sana, atau kelas lama apa pun yang Anda modifikasi, akan memengaruhi situs web Anda dan tampilannya.
  • Anda dapat menambahkan file PHP lain ke direktori tema anak Anda. File-file tersebut dapat benar-benar baru – untuk template kustom baru, misalnya – atau mereka dapat menggantikan file standar dari tema induk. Misalnya, Anda dapat membuat versi file single.php yang benar-benar baru untuk menangani cara posting blog Anda ditampilkan.
  • Semua yang Anda masukkan ke dalam file functions.php baru Anda akan dieksekusi mirip dengan cara kerja file functions.php asli di tema induk.

Apakah Anda sudah membuat tema anak Anda?

Pada tahap ini, pekerjaan Anda selesai, dan Anda sekarang memiliki tema anak dasar yang dapat Anda gunakan untuk melakukan modifikasi lebih lanjut ke situs web Anda. Atau, Anda cukup menggunakan tema anak baru ini untuk memastikan bahwa perubahan apa pun yang sudah Anda lakukan akan tetap ada melalui pembaruan tema induk di masa mendatang.

Apa yang Anda ambil di sini? Apakah Anda berencana untuk menggunakan tema anak di situs atau blog WordPress Anda?