diff --git a/header.php b/header.php index c5854eb..6e2c8e8 100644 --- a/header.php +++ b/header.php @@ -22,7 +22,7 @@ - +
- - + + 'ID' ); + if ( get_option( 'edukarsa_lang_en', 1 ) == 1 ) $available_langs['en'] = 'EN'; + if ( get_option( 'edukarsa_lang_ar', 0 ) == 1 ) $available_langs['ar'] = 'AR'; + if ( get_option( 'edukarsa_lang_zh', 0 ) == 1 ) $available_langs['zh-CN'] = 'ZH'; + if ( get_option( 'edukarsa_lang_ja', 0 ) == 1 ) $available_langs['ja'] = 'JA'; + + $incl_codes = implode( ',', array_keys( $available_langs ) ); + ?>
- - | - + $label ) : + $idx++; + ?> + + | +
@@ -58,37 +73,39 @@ - + diff --git a/inc/admin-menu.php b/inc/admin-menu.php index 16ea23e..4ef055a 100644 --- a/inc/admin-menu.php +++ b/inc/admin-menu.php @@ -44,7 +44,8 @@ add_action( 'admin_bar_menu', 'edukarsa_admin_bar_shortcut', 80 ); function edukarsa_register_settings() { $options = array( 'edukarsa_font_choice', 'edukarsa_primary_color', 'edukarsa_secondary_color', 'edukarsa_heading_color', - 'edukarsa_tampil_bilingual', '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_tampil_bilingual', 'edukarsa_lang_en', 'edukarsa_lang_ar', 'edukarsa_lang_zh', 'edukarsa_lang_ja', + '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', 'edukarsa_program_subtitle', 'edukarsa_program_title', @@ -141,7 +142,7 @@ function edukarsa_settings_page_html() {
- +

πŸ›οΈ 1. Header, Logo & Slider

@@ -153,21 +154,40 @@ function edukarsa_settings_page_html() {
- +
- 🌐 Fitur Bilingual (Bahasa Indonesia & Inggris) - ?Menampilkan tombol switcher ID | EN di header dengan sistem translasi instan otomatis. + 🌐 Fitur Bahasa (Penerjemah Instan) + ?Menampilkan tombol pemilih bahasa di header situs.
- Penerjemah instan untuk mempermudah pengunjung internasional tanpa membebani operator. + Bahasa Indonesia (ID) aktif sebagai bahasa utama. Pilih bahasa tambahan di bawah:
+ +
+ Bahasa Tambahan yang Diaktifkan: +
+ + + + +
+
+
diff --git a/style.css b/style.css index a6493d7..739e6bb 100644 --- a/style.css +++ b/style.css @@ -4,7 +4,7 @@ Theme URI: https://edukarsa.masbudi.my.id Author: masbudikusuma Author URI: https://masbudi.my.id Description: Tema WordPress profesional untuk sekolah dan kampus (Gaya Modern Card Layout). -Version: 1.1.3 +Version: 1.1.4 */ :root { @@ -30,6 +30,8 @@ body { font-size: 16px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; + top: 0px !important; + position: static !important; } img { max-width: 100%; height: auto; display: block; } a { text-decoration: none; color: var(--primary-color); transition: 0.3s; } @@ -47,6 +49,7 @@ h1, h2, h3, h4, h5, h6 { color: var(--heading-color); font-weight: 800; line-hei .header-container { display: flex; justify-content: space-between; align-items: center; } .logo-link { display: flex; align-items: center; gap: 15px; color: #fff; } .site-title { margin: 0; font-size: 22px; font-weight: 800; color: #fff; letter-spacing: -0.5px; } +.header-nav-wrap { display: flex; align-items: center; gap: 20px; } .nav-menu-custom { list-style: none; display: flex; gap: 25px; margin: 0; padding: 0; } .nav-menu-custom li a { display: block; color: #ffffff; font-weight: 600; font-size: 14px; text-transform: uppercase; letter-spacing: 0.8px; padding: 10px 0; } .nav-menu-custom li a:hover { color: #f39c12; } @@ -146,10 +149,26 @@ h1, h2, h3, h4, h5, h6 { color: var(--heading-color); font-weight: 800; line-hei .cta-floating-title { font-size: 26px; font-weight: 800; color: #ffffff; margin: 0; letter-spacing: -0.5px; } .cta-btn-custom { padding: 14px 34px; font-size: 15px; font-weight: 800; box-shadow: 0 4px 15px rgba(0,0,0,0.15); } +/* NEWS */ .news-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; } .news-content { padding: 22px; display: flex; flex-direction: column; flex-grow: 1; } .news-title { font-size: 17px; margin-bottom: 10px; line-height: 1.4; font-weight: 700; } +/* FAQ ACCORDION SECTION */ +.edukarsa-faq-section { padding: 60px 0 80px; background-color: #f8fafc; } +.faq-accordion-container { max-width: 880px; margin: 0 auto; display: flex; flex-direction: column; gap: 14px; } +.faq-item { background: #ffffff; border-radius: var(--radius); border: 1px solid #e2e8f0; box-shadow: 0 4px 15px rgba(0,0,0,0.03); overflow: hidden; transition: all 0.25s ease; } +.faq-item:hover { border-color: var(--secondary-color); box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08); } +.faq-header { width: 100%; padding: 22px 26px; background: transparent; border: none; outline: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 16px; text-align: left; } +.faq-title { font-size: 16px; font-weight: 700; color: var(--heading-color); margin: 0; line-height: 1.45; transition: color 0.2s ease; } +.faq-item:hover .faq-title, .faq-item.active .faq-title { color: var(--primary-color); } +.faq-icon { width: 26px; height: 26px; border-radius: 50%; background: #f1f5f9; display: flex; align-items: center; justify-content: center; flex-shrink: 0; font-size: 17px; font-weight: 800; color: var(--primary-color); transition: transform 0.25s ease, background-color 0.25s ease, color 0.25s ease; line-height: 1; } +.faq-item.active .faq-icon { background: var(--primary-color); color: #ffffff; transform: rotate(45deg); } +.faq-body { max-height: 0; overflow: hidden; transition: max-height 0.35s ease, padding 0.35s ease; padding: 0 26px; color: var(--text-color); font-size: 15px; line-height: 1.75; } +.faq-body-content p { margin-bottom: 0; } +.faq-body-content p + p { margin-top: 10px; } +.faq-item.active .faq-body { max-height: 400px; padding: 0 26px 22px; } + /* 7. IMAGE LOCKS */ .img-wrapper-slider { height: 580px; width: 100%; overflow: hidden; position: relative; } .img-wrapper-landscape { aspect-ratio: 16/10; width: 100%; overflow: hidden; position: relative; border-radius: 8px; } @@ -158,52 +177,21 @@ h1, h2, h3, h4, h5, h6 { color: var(--heading-color); font-weight: 800; line-hei .img-wrapper-slider img, .img-wrapper-landscape img, .img-wrapper-video img, .img-wrapper-portrait img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; } .img-placeholder { width: 100%; height: 100%; background-color: #f1f5f9; display: flex; flex-direction: column; align-items: center; justify-content: center; color: var(--text-muted); font-size: 14px; text-align: center; border: 2px dashed #cbd5e1; } -/* 8. FOOTER BARU (4-KOLOM INSTITUSI PROFESIONAL) */ -.site-footer { - background: linear-gradient(180deg, var(--primary-color) 0%, #08284d 100%); - color: #ffffff; - padding: 70px 0 0; - border-top: 5px solid var(--secondary-color); -} -.footer-grid-wrapper { - display: grid; - grid-template-columns: 1.4fr 1.1fr 0.9fr 1fr; - gap: 40px; - padding-bottom: 50px; -} -.footer-col-title { - color: #ffffff; - font-size: 17px; - font-weight: 700; - margin-bottom: 22px; - position: relative; - padding-bottom: 10px; - letter-spacing: -0.2px; -} -.footer-col-title::after { - content: ''; - position: absolute; - bottom: 0; - left: 0; - width: 35px; - height: 3px; - background-color: var(--secondary-color); - border-radius: 2px; -} - -/* Brand & Deskripsi */ +/* 8. FOOTER */ +.site-footer { background: linear-gradient(180deg, var(--primary-color) 0%, #08284d 100%); color: #ffffff; padding: 70px 0 0; border-top: 5px solid var(--secondary-color); } +.footer-grid-wrapper { display: grid; grid-template-columns: 1.4fr 1.1fr 0.9fr 1fr; gap: 40px; padding-bottom: 50px; } +.footer-col-title { color: #ffffff; font-size: 17px; font-weight: 700; margin-bottom: 22px; position: relative; padding-bottom: 10px; letter-spacing: -0.2px; } +.footer-col-title::after { content: ''; position: absolute; bottom: 0; left: 0; width: 35px; height: 3px; background-color: var(--secondary-color); border-radius: 2px; } .footer-brand-desc { font-size: 14px; color: rgba(255,255,255,0.8); line-height: 1.7; margin-bottom: 20px; } .footer-hours-box { display: flex; align-items: center; gap: 12px; background: rgba(255,255,255,0.06); padding: 12px 16px; border-radius: 10px; border: 1px solid rgba(255,255,255,0.1); } .hours-icon { font-size: 22px; } -/* Kontak List */ .footer-contact-list { list-style: none; padding: 0; margin: 0; } .footer-contact-list li { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 15px; font-size: 14px; color: rgba(255,255,255,0.85); line-height: 1.6; } .footer-contact-list li a { color: rgba(255,255,255,0.9); } .footer-contact-list li a:hover { color: #f39c12; } .f-icon { font-size: 16px; flex-shrink: 0; margin-top: 2px; } -/* Tautan Bersih */ .footer-links-custom { list-style: none; padding: 0; margin: 0; } .footer-links-custom li { margin-bottom: 12px; } .footer-links-custom li a { color: rgba(255,255,255,0.82); font-size: 14px; transition: all 0.25s ease; display: inline-flex; align-items: center; gap: 8px; } @@ -211,33 +199,11 @@ h1, h2, h3, h4, h5, h6 { color: var(--heading-color); font-weight: 800; line-hei .footer-links-custom li a:hover { color: #ffffff; padding-left: 5px; } .footer-links-custom li a:hover::before { transform: translateX(3px); color: #f39c12; } -/* Media Sosial SVG Buttons */ .footer-social-icons { display: flex; gap: 10px; flex-wrap: wrap; } -.social-btn { - display: inline-flex; - align-items: center; - justify-content: center; - width: 40px; - height: 40px; - border-radius: 10px; - background: rgba(255,255,255,0.08); - color: #ffffff !important; - border: 1px solid rgba(255,255,255,0.15); - transition: all 0.25s ease; -} -.social-btn:hover { - background: var(--secondary-color); - transform: translateY(-3px); - box-shadow: 0 8px 18px rgba(0,0,0,0.25); - border-color: transparent; -} +.social-btn { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 10px; background: rgba(255,255,255,0.08); color: #ffffff !important; border: 1px solid rgba(255,255,255,0.15); transition: all 0.25s ease; } +.social-btn:hover { background: var(--secondary-color); transform: translateY(-3px); box-shadow: 0 8px 18px rgba(0,0,0,0.25); border-color: transparent; } -/* Bottom Copyright Bar */ -.footer-bottom-bar { - border-top: 1px solid rgba(255,255,255,0.08); - padding: 22px 0; - background: rgba(0,0,0,0.15); -} +.footer-bottom-bar { border-top: 1px solid rgba(255,255,255,0.08); padding: 22px 0; background: rgba(0,0,0,0.15); } .footer-bottom-inner { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 15px; } .copyright-text { margin: 0; font-size: 13px; color: rgba(255,255,255,0.65); } .footer-bottom-badge { font-size: 12px; color: rgba(255,255,255,0.5); font-weight: 500; } @@ -263,9 +229,7 @@ h1, h2, h3, h4, h5, h6 { color: var(--heading-color); font-weight: 800; line-hei .pagination .page-numbers.current, .pagination .page-numbers:hover { background: var(--primary-color); color: #fff; border-color: var(--primary-color); } /* 12. RESPONSIVE MEDIA QUERIES */ -@media (max-width: 1024px) { - .footer-grid-wrapper { grid-template-columns: repeat(2, 1fr); gap: 35px; } -} +@media (max-width: 1024px) { .footer-grid-wrapper { grid-template-columns: repeat(2, 1fr); gap: 35px; } } @media (max-width: 992px) { .single-layout-wrapper { grid-template-columns: 1fr; } .program-grid, .milestone-grid, .news-grid { grid-template-columns: repeat(2, 1fr); } @@ -274,7 +238,7 @@ h1, h2, h3, h4, h5, h6 { color: var(--heading-color); font-weight: 800; line-hei .cta-floating-card { flex-direction: column; text-align: center; gap: 20px; } } @media (max-width: 768px) { - .header-container { flex-direction: column; gap: 15px; } + .header-container { flex-direction: row; } .nav-menu-custom { flex-wrap: wrap; justify-content: center; } .footer-grid-wrapper { grid-template-columns: 1fr; gap: 30px; } .footer-bottom-inner { flex-direction: column; text-align: center; } @@ -311,7 +275,6 @@ h1, h2, h3, h4, h5, h6 { color: var(--heading-color); font-weight: 800; line-hei .main-navigation.active { right: 0; } .nav-menu-custom { flex-direction: column; gap: 15px; align-items: flex-start; } .nav-menu-custom li a { font-size: 15px; padding: 8px 0; border-bottom: 1px solid rgba(255,255,255,0.08); width: 100%; } - .header-container { flex-direction: row; } } /* 14. FLOATING WHATSAPP HOTLINE */ @@ -364,23 +327,7 @@ h1, h2, h3, h4, h5, h6 { color: var(--heading-color); font-weight: 800; line-hei .back-to-top-btn.show { opacity: 1; visibility: visible; transform: translateY(0); } .back-to-top-btn:hover { background-color: var(--secondary-color); transform: translateY(-3px); } -/* 16. FAQ ACCORDION SECTION */ -.edukarsa-faq-section { padding: 60px 0 40px; background-color: #f8fafc; } -.faq-accordion-container { max-width: 880px; margin: 0 auto; display: flex; flex-direction: column; gap: 14px; } -.faq-item { background: #ffffff; border-radius: var(--radius); border: 1px solid #e2e8f0; box-shadow: 0 4px 15px rgba(0,0,0,0.03); overflow: hidden; transition: all 0.25s ease; } -.faq-item:hover { border-color: var(--secondary-color); box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08); } -.faq-header { width: 100%; padding: 22px 26px; background: transparent; border: none; outline: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 16px; text-align: left; } -.faq-title { font-size: 16px; font-weight: 700; color: var(--heading-color); margin: 0; line-height: 1.45; transition: color 0.2s ease; } -.faq-item:hover .faq-title, .faq-item.active .faq-title { color: var(--primary-color); } -.faq-icon { width: 26px; height: 26px; border-radius: 50%; background: #f1f5f9; display: flex; align-items: center; justify-content: center; flex-shrink: 0; font-size: 17px; font-weight: 800; color: var(--primary-color); transition: transform 0.25s ease, background-color 0.25s ease, color 0.25s ease; line-height: 1; } -.faq-item.active .faq-icon { background: var(--primary-color); color: #ffffff; transform: rotate(45deg); } -.faq-body { max-height: 0; overflow: hidden; transition: max-height 0.35s ease, padding 0.35s ease; padding: 0 26px; color: var(--text-color); font-size: 15px; line-height: 1.75; } -.faq-body-content p { margin-bottom: 0; } -.faq-body-content p + p { margin-top: 10px; } -.faq-item.active .faq-body { max-height: 400px; padding: 0 26px 22px; } - -/* 17. BILINGUAL LANGUAGE SWITCHER & GOOGLE RESET */ -.header-nav-wrap { display: flex; align-items: center; gap: 20px; } +/* 16. MULTI-LANGUAGE SWITCHER */ .edukarsa-lang-switcher { display: inline-flex; align-items: center; @@ -415,9 +362,23 @@ h1, h2, h3, h4, h5, h6 { color: var(--heading-color); font-weight: 800; line-hei margin: 0 1px; } -/* HILANGKAN TOOLBAR BANNER ASLI GOOGLE AGAR HEADER TETAP BERSIH */ -.goog-te-banner-frame.skiptranslate, .goog-te-banner-frame { display: none !important; } -body { top: 0px !important; position: static !important; } +/* 17. BULLETPROOF GOOGLE TRANSLATE BANNER SUPPRESSION */ +.goog-te-banner-frame, +.goog-te-banner-frame.skiptranslate, +iframe.goog-te-banner-frame, +.VIpgJd-ZVi9od-ORHb-OEVmcd, +#goog-gt-tt, +.goog-te-balloon-frame { + display: none !important; + visibility: hidden !important; + height: 0 !important; + width: 0 !important; + opacity: 0 !important; +} +body { + top: 0px !important; + position: static !important; +} .goog-tooltip, .goog-tooltip:hover { display: none !important; } .goog-text-highlight { background-color: transparent !important; box-shadow: none !important; } -#goog-gt-tt { display: none !important; } +font { background-color: transparent !important; box-shadow: none !important; }