Bagaimana saya bisa mengecek untuk melihat apakah tema diaktifkan pada instalasi drupal? Saya mencari sesuatu seperti module_exists () tetapi untuk tema. Saya tidak dapat menemukan apa pun di dokumentasi.
Gunakan list_themes
$ refresh : Apakah akan memuat ulang daftar tema dari database. Default ke FALSE.
Array asosiatif dari tema yang saat ini tersedia. Kuncinya adalah nama mesin tema dan nilainya adalah objek yang memiliki properti berikut:
Gunakan path_to_theme untuk mendapatkan tema aktif ..
Ini dapat menunjuk ke tema aktif atau modul yang menangani implementasi bertema. Misalnya, ketika dipanggil dalam lingkup panggilan tema, itu akan tergantung pada di mana fungsi tema ditangani. Jika diimplementasikan dari modul, itu akan menunjuk ke modul. Jika diterapkan dari tema aktif, itu akan menunjuk ke tema aktif. Ketika dipanggil di luar lingkup panggilan tema, itu akan selalu mengarah ke tema aktif.
Data sebenarnya disimpan di tempat yang persis sama, yaitu system
tabel. Saya tidak dapat menemukan fungsi yang ada untuk memeriksa (walaupun mungkin ada satu di suatu tempat), tetapi ini harus dilakukan dalam keadaan darurat:
function theme_exists($theme_name) {
$themes = list_themes();
return isset($themes[$theme_name]) && $themes[$theme_name]->status == 1;
}
theme_exists
hanya untuk menghindari masalah yang mungkin dengan sistem tema