Php microsite boilerplate
PHP Microsite Boilerplate adalah kerangka PHP untuk membuat situs web yang sederhana, namun sangat fungsional, cepat, dan aman pada dasarnya setiap lingkungan.
Sebagian besar kerangka kerja dan bahkan boilerplate memerlukan proses pengaturan yang melelahkan, di mana Anda perlu menginstal beberapa dependensi. Ini mengarah ke overhead kode yang sangat besar, yang sering Anda tidak butuhkan. Semua kompleksitas itu juga merupakan risiko potensial untuk situs web Anda. Selain itu, seringkali tidak mungkin untuk menggunakan sebagian besar solusi, jika Anda perlu menggunakannya pada rencana hosting bersama termurah.
Proyek ini ingin memberi Anda kerangka kerja dan templat untuk kasus yang tepat ini:
- Anda perlu membangun situs web yang agak kecil, dengan beberapa fungsi.
- Anda memilih PHP, karena Anda ingin melakukan skrip sisi server, sementara PHP juga mungkin satu-satunya bahasa, yang pada dasarnya berjalan pada semua opsi hosting.
- Anda membangun benda ini sendiri atau dengan maksimal 1 orang lain, yang membuat praktik terbaik, tetapi struktur kode yang kompleks lebih dari overhead yang tidak perlu daripada konsep yang membantu.
- Anda perlu menyelesaikannya dengan cepat, sementara Anda tidak ingin membuat kompromi mengenai keamanan atau kinerja.
- Karena itu Anda tidak terlalu peduli dengan kode bersih;).
Demo: https://phpmicrosite.jenskuerschner.de/
Fitur utama
- Routing mudah.
- Progressive Web App (PWA) disiapkan.
- Persiapan multilanguage.
- Integrasi Directus CMS (termasuk cache lokal).
- Docker menyusun untuk pengembangan lokal.
- Termasuk TailwindCSS (opsional).
- GDPR dan CCPA siap.
- Cache Peworker Cerdas.
- Dukungan gettext untuk terjemahan mudah (+ fallback jika tidak diinstal di server).
- SEO dioptimalkan.
- Generasi Sitemap Otomatis.
- Dioptimalkan untuk berbagi sosial.
- SPEED- & GDPR yang dioptimalkan-YouTube-integrasi.
- Opsional CSS dan Optimasi JavaScript dengan skrip build yang sudah disiapkan.
- Dokumentasi dalam kode yang luas.
- Header keamanan (.htaccess atau melalui PHP)
- Beberapa fitur keamanan (kebanyakan dari mereka memerlukan server Apache!)
- Siap menjalankan penempatan git.
- Dikembangkan agar sangat mudah bagi Anda untuk menghapus fitur atau menambahkan barang Anda sendiri.
Penggunaan
Unduh cabang/tag masing -masing dan unggah ke folder situs web Anda - atau klon repo sesuka Anda.
Sesuaikan dengan proyek Anda:
- Periksa file .htaccess, jika Anda menjalankannya di Apache. Pikirkan header dan tempat keamanan, di mana domain/jalur ditentukan (cari yourdomain.com).
- Jika Anda tidak menjalankannya di Apache, periksa index.php untuk pengaturan header keamanan dan pastikan setiap permintaan (kecuali untuk file) dikirim ke index.php. Periksa nginx_deployment.sh - ini adalah skrip bash yang telah dikonfigurasi sebelumnya untuk mengatur server web nginx Anda.
- Sesuaikan nilai -nilai dalam config.php dan juga file pikiran, yang disebutkan dalam komentar di sana. Siapkan koneksi ke CMS DirectUS Anda jika digunakan.
- Periksa /Templates/General_Meta.php dan buat Favicons masing -masing.
- Tentukan halaman Anda di routing.php. (Pemberitahuan hukum dan kebijakan privasi untuk tetap patuh GDPR!)
- Buat halaman -halaman itu (seperti yang ditentukan sebelumnya) sebagai file PHP tunggal di dalam /halaman.
- Buat masing -masing file di dalam /pengontrol jika perlu dalam kasus Anda.
- Periksa opsi untuk mengarahkan ulang secara otomatis dalam multi-bahasa di index.php dan base.js.
- Bangun situs web dengan halaman -halaman itu, style.css, dan base.js. Pikiran untuk meminimalkan file -file itu atau menyesuaikan cara mereka disertakan di /templates/header.php dan /templates/footer.php. Jika Anda menggunakan skrip build yang sudah disiapkan, Anda tidak perlu khawatir tentang bagian ini.
- Sesuaikan footer di /templates/footer.php untuk kebutuhan Anda.
- Temukan detail lebih lanjut dalam dokumentasi dalam kode - ini adalah taman bermain yang terdokumentasi dengan baik!
Itu pada dasarnya mengenai penyesuaian. Anda dapat menemukan panduan pengaturan sampel yang lebih rinci di posting blog medium yang sesuai di sini.
Membangun proyek, hampir tidak tergantung pada konfigurasi Anda! Jika Anda menggunakan integrasi TailwindCSS, Anda perlu menggunakan skrip build yang disertakan, yang membutuhkan nodeJs! Jika Anda jelas, Anda dapat melewatkannya. Namun, tidak menggunakan skrip build juga tidak akan menggabungkan dan meminifkan file CSS dan JS. Karena itu, jika memungkinkan untuk Anda, hampir tidak disarankan. Untuk membangun:
- Pastikan Anda berada di dalam direktori root proyek dengan terminal Anda.
- Jalankan
npm install . - Jalankan
npm run build untuk membiarkan keajaiban terjadi. - Itu saja. Jangan ragu untuk melakukan ini secara manual di mesin lokal Anda dan mengunggahnya ke host Anda - atau menggunakan beberapa jaringan pipa pada alat apa pun yang Anda gunakan.
BTW: Disarankan untuk menggunakan layanan CDN (misalnya CloudFlare) untuk mempercepatnya lebih banyak lagi.
Pengaturan Pengembangan Lokal
Untuk pengembangan lokal, Anda dapat menggunakan compose docker-compose.yml yang disertakan
- Perbarui nama kontainer di file YML.
- Unduh dan instal Docker Desktop.
- Sesuaikan
$the_page_url di config.php sementara ke "/". - Jalankan
docker-compose up -d di terminal di direktori root proyek. - Buka Proyek di
localhost:80 (pikiran Anda mungkin melihat kesalahan SSL - seharusnya tidak ada pemblokir), - Happy Coding dan Testing.
Berkontribusi
Siapa pun dipersilakan untuk berkontribusi, tetapi ingatlah pedomannya:
- Laporan Bug
- Permintaan fitur
- Tarik permintaan
Lisensi
Kode ini tersedia di bawah lisensi GPL 3.0. Anda pada dasarnya dapat melakukan apa pun dengan itu, tetapi keberatan bahwa jika Anda ingin mendistribusikan pekerjaan Anda berdasarkan kode ini, pekerjaan Anda juga harus dilisensikan GPL. Ini berarti Anda dapat dengan mudah membangun situs web Anda dengannya, karena ini bukan distribusi. Distribusi akan terjadi, jika Anda menjual proyek berdasarkan kode ini kepada orang lain atau jika Anda membuat proyek publik (tidak peduli apakah Anda menjualnya atau tidak). Bahkan ini semua akan baik -baik saja, selama Anda melisensikan proyek -proyek itu juga dengan GPL. :) Periksa file lisensi untuk semua detail.
Terinspirasi oleh
Kode ini telah terinspirasi oleh html5 boilerplate.