Mengapa Contact Form 7 Tidak Berfungsi pada Laman Statik
Anda mengeksport laman WordPress anda ke HTML statik. Borang hubungan anda berhenti berfungsi. Anda melihat ralat 404 dalam konsol.
Contact Form 7 memerlukan PHP. Ia menggunakan REST API untuk memproses data. Laman statik tidak mempunyai PHP. Tiada PHP bermakna tiada REST API.
Sesetengah orang menyalahkan CORS. Pengepala CORS tidak akan membaiki pelayan yang hilang. Anda memerlukan backend untuk mengendalikan e-mel.
Jika anda menggunakan Simply Static Pro, semak keizinan fail anda. Fail JS yang hilang menyebabkan ralat ini. Jalankan arahan ini:
chmod 644 /var/www/html/wp-content/plugins/simply-static-pro/assets/ssp-form-webhook-public.js
Jalankan eksport semula.
Dua cara untuk membaiki ini:
- Kekalkan WordPress pada subdomain. Gunakannya sebagai API anda. Tambah pengepala CORS ke dalam fail .htaccess anda.
- Gunakan perkhidmatan borang statik. Cuba Formspree atau Netlify Forms.
Cara untuk menyahpepijat (debug):
- Layari URL WordPress anda diikuti dengan /wp-json/. Jika anda melihat 404, backend anda tidak aktif.
- Buka DevTools. Hantar borang anda. Cari ralat 404 atau CORS.
- Semak fail forms.json anda. Pastikan endpoint menghala ke domain WordPress anda.
Berhenti merawat simptom sahaja. Baiki seni bina anda.