From 3b8d105623a1cd30178916d4ab5577ec76688427 Mon Sep 17 00:00:00 2001 From: Mas Budi Kusuma Date: Tue, 15 Sep 2026 23:50:05 +0700 Subject: [PATCH] feat: tambahkan toggle kontrol visibilitas FAQ dan modul aksesibilitas disabilitas WCAG --- footer.php | 137 +++++++++++++++++++++++++++++++++++++++++++++ inc/admin-menu.php | 37 ++++++++++-- style.css | 55 ++++++++++++++++++ 3 files changed, 223 insertions(+), 6 deletions(-) diff --git a/footer.php b/footer.php index f12a484..6d52dd5 100644 --- a/footer.php +++ b/footer.php @@ -136,6 +136,48 @@ if ( substr( $wa_clean, 0, 1 ) === '0' ) { + + +
+ + +
+
+

♿ Aksesibilitas

+ +
+
+
+ Ukuran Teks +
+ + + +
+
+ +
+ Tampilan Visual +
+ + +
+
+ +
+ Navigasi +
+ + +
+
+
+
+
+ + @@ -149,6 +191,7 @@ if ( substr( $wa_clean, 0, 1 ) === '0' ) { diff --git a/inc/admin-menu.php b/inc/admin-menu.php index 4ef055a..7bb821f 100644 --- a/inc/admin-menu.php +++ b/inc/admin-menu.php @@ -45,6 +45,7 @@ function edukarsa_register_settings() { $options = array( 'edukarsa_font_choice', 'edukarsa_primary_color', 'edukarsa_secondary_color', 'edukarsa_heading_color', 'edukarsa_tampil_bilingual', 'edukarsa_lang_en', 'edukarsa_lang_ar', 'edukarsa_lang_zh', 'edukarsa_lang_ja', + 'edukarsa_tampil_accessibility', 'edukarsa_tampil_slider', 'edukarsa_tampil_stats', 'edukarsa_tampil_about', 'edukarsa_tampil_milestone', 'edukarsa_tampil_program', 'edukarsa_tampil_video', 'edukarsa_tampil_keunggulan', 'edukarsa_tampil_cta', 'edukarsa_tampil_faq', 'edukarsa_tampil_news', 'edukarsa_header_logo', 'edukarsa_milestone_subtitle', 'edukarsa_milestone_title', @@ -142,7 +143,7 @@ function edukarsa_settings_page_html() {
- +

🏛️ 1. Header, Logo & Slider

@@ -169,8 +170,7 @@ function edukarsa_settings_page_html() {
- -
+
Bahasa Tambahan yang Diaktifkan:
+ +
+
+
+ ♿ Fitur Aksesibilitas Disabilitas (WCAG Toolbar) + ?Menampilkan tombol melayang di pojok kiri bawah untuk pengunjung berkebutuhan khusus (ukuran huruf, kontras, monokrom, garis tautan). +
+ Toolbar ramah disabilitas yang dapat dioperasikan langsung oleh pengunjung situs. +
+ +
+
+

Label Tampilan Seksi FAQ (Tanya Jawab)

diff --git a/style.css b/style.css index 739e6bb..1628662 100644 --- a/style.css +++ b/style.css @@ -382,3 +382,58 @@ body { .goog-tooltip, .goog-tooltip:hover { display: none !important; } .goog-text-highlight { background-color: transparent !important; box-shadow: none !important; } font { background-color: transparent !important; box-shadow: none !important; } + +/* 18. AKSESIBILITAS DISABILITAS WIDGET & EFFECT */ +.edukarsa-a11y-wrapper { position: fixed; bottom: 80px; left: 25px; z-index: 998; } +.edukarsa-a11y-trigger { + width: 44px; height: 44px; border-radius: 50%; + background-color: var(--primary-color); color: #ffffff; + border: 2px solid rgba(255,255,255,0.25); + box-shadow: 0 4px 15px rgba(0,0,0,0.18); + display: flex; align-items: center; justify-content: center; + cursor: pointer; transition: all 0.25s ease; +} +.edukarsa-a11y-trigger:hover { background-color: var(--secondary-color); transform: scale(1.06); } +.edukarsa-a11y-panel { + position: absolute; bottom: 55px; left: 0; + width: 250px; background: #ffffff; + border: 1px solid #e2e8f0; border-radius: 12px; + box-shadow: 0 15px 35px rgba(15,23,42,0.18); + opacity: 0; visibility: hidden; transform: translateY(10px); + transition: all 0.25s ease; overflow: hidden; +} +.edukarsa-a11y-panel.active { opacity: 1; visibility: visible; transform: translateY(0); } +.a11y-panel-header { + background: #0f172a; color: #ffffff; + padding: 12px 16px; display: flex; justify-content: space-between; align-items: center; +} +.a11y-panel-header h4 { margin: 0; font-size: 13px; color: #ffffff; font-weight: 700; } +.a11y-close-btn { background: transparent; border: none; color: #ffffff; font-size: 18px; cursor: pointer; line-height: 1; } +.a11y-panel-body { padding: 14px 16px; display: flex; flex-direction: column; gap: 12px; } +.a11y-group { display: flex; flex-direction: column; gap: 6px; } +.a11y-label { font-size: 11px; font-weight: 700; color: #64748b; text-transform: uppercase; letter-spacing: 0.5px; } +.a11y-btn-grid { display: flex; gap: 6px; } +.a11y-btn { + flex: 1; padding: 7px 0; background: #f1f5f9; + border: 1px solid #cbd5e1; border-radius: 6px; + font-size: 12px; font-weight: 700; color: #334155; + cursor: pointer; transition: all 0.2s ease; +} +.a11y-btn:hover { background: #e2e8f0; color: var(--primary-color); } +.a11y-btn-danger { background: #fee2e2; border-color: #fca5a5; color: #991b1b; } +.a11y-btn-danger:hover { background: #fecaca; color: #7f1d1d; } + +/* KELAS STATUS AKSESIBILITAS YANG DITERAPKAN KE BODY */ +body.a11y-font-lg { font-size: 18px !important; } +body.a11y-font-lg h1 { font-size: 34px !important; } +body.a11y-font-lg h2 { font-size: 28px !important; } +body.a11y-font-lg h3 { font-size: 22px !important; } +body.a11y-font-xl { font-size: 20px !important; } +body.a11y-font-xl h1 { font-size: 38px !important; } +body.a11y-font-xl h2 { font-size: 32px !important; } +body.a11y-font-xl h3 { font-size: 25px !important; } + +body.a11y-high-contrast { filter: contrast(160%) !important; } +body.a11y-grayscale { filter: grayscale(100%) !important; } +body.a11y-high-contrast.a11y-grayscale { filter: grayscale(100%) contrast(160%) !important; } +body.a11y-underline-links a { text-decoration: underline !important; text-underline-offset: 3px !important; }