Tema halaman perawatan Drupal 8 [ditutup]

8

Saya ingin menyesuaikan halaman pemeliharaan di Drupal 8.

Bagaimana cara saya tema?

Shawn Conn
sumber
Bahkan untuk pertanyaan yang dijawab sendiri, saran umum untuk mengajukan pertanyaan itu valid. Seperti itu, pertanyaan ini terlalu luas: Bahkan tidak menjelaskan masalah yang Anda hadapi.
kiamlaluno

Jawaban:

14

Di Drupal 8, settings.php berisi baris berikut:

# $settings['maintenance_theme'] = 'bartik';

Pertama, batalkan komentar pada pengaturan ini dan ubah "bartik" menjadi nama mesin dari tema khusus Anda.

Selanjutnya, salin inti templat pemeliharaan inti / modul / sistem / templat / pemeliharaan-halaman.html.twig ke templat / pemeliharaan-halaman.html.twig di direktori tema khusus Anda.

Terakhir, siram cache Drupal untuk mengaktifkan templat halaman pemeliharaan baru Anda. Jika Anda perlu mengubah variabel templat, Anda dapat menambahkannya MYTHEME_preprocess_maintenance_page()ke file * .theme Anda .

Shawn Conn
sumber
1
Settings.php mengatakan "Ini berlaku ketika situs secara eksplisit diatur ke mode pemeliharaan melalui halaman administrasi atau ketika database tidak aktif karena kesalahan." Namun, di situs saya ini hanya berfungsi jika saya mengaktifkan mode pemeliharaan. Jika saya sengaja memutus akses ke database saya dengan mengubah kata sandi, saya mendapatkan halaman dengan kesalahan PDO, bukan halaman pemeliharaan saya
nexus_6
Ketika melakukan hal ini, perubahan ditampilkan pada halaman pembaruan setelah menginstal modul. Apakah proses yang membuat halaman pembaruan menggunakan ranting halaman pemeliharaan? maintenance-page.html.twig
mike_kc
Tidak yakin apakah ini tersedia di versi yang lebih baru, tetapi ketika membuat halaman pemeliharaan kustom saya sendiri, saya merasa saya tidak perlu memperbarui pengaturan.php untuk mendaftarkannya.
karolus
Selain itu, karena halaman maintenace tidak selalu ingin menghormati HTML tema, saya membuat saran di "template_theme_suggestions_html_alter.php" dengan menambahkan potongan kode ini di dalamnya: if (\ Drupal :: state () -> get (' system.maintenance_mode ')) {$ saran [] =' html__maintenance '; }
ZyDucksLover