❗️ GRRR tidak lagi mengelola plugin ini.
Kami merekomendasikan penggunaan paket Pro dari plugin Simply Static. Saat kami memulai plugin ini, plugin ini memperbaiki kekurangan fitur penerapan di Simply Static. Sejak itu, plugin telah diperbarui, dan paket Pro menawarkan apa yang kami lewatkan.
GRRR telah menyumbangkan kode dan fitur pada plugin Simply Static, dan kami senang melihatnya berkembang.
Kami menyarankan untuk melihatnya, ini bernilai investasi.
Terima kasih kepada semua orang yang tertarik dengan plugin ini!
Jika Anda menikmati penggunaan plugin ini atau terinspirasi olehnya, mungkin Anda ingin mengikuti blog kami, tempat kami menulis tentang pekerjaan kami dan hal-hal yang kami pelajari selama ini: grrr.tech.
Plugin ini membutuhkan:
Plugin ini perlu diinstal menggunakan Composer.
Pastikan Anda memiliki jalur penginstal yang benar yang dikonfigurasi di composer.json
Anda. Ini harus dilakukan sebelum meminta paket:
"extra" : {
"installer-paths" : {
"wp-content/plugins/{$name}/" : [ " type:wordpress-plugin " ]
}
}
Instal melalui Komposer:
$ composer require grrr-amsterdam/simply-static-deploy
Jika Anda belum menggunakan Komposer di proyek Anda, pastikan untuk mewajibkan pemuat otomatis Komposer. Tempat yang bagus adalah di wp-config.php
Anda:
/** Sets up WordPress vars and included files. */
require_once ABSPATH . ' vendor/autoload.php ' ; # ‹— add this
require_once ABSPATH . ' wp-settings.php ' ;
Pertama tentukan SIMPLY_STATIC_DEPLOY_CONFIG
di konfigurasi WordPress Anda:
define ( ' SIMPLY_STATIC_DEPLOY_CONFIG ' , [
' aws ' => [
' key ' => ' ... ' , # AWS access key
' secret ' => ' ... ' , # AWS secret key
' region ' => ' ... ' , # AWS region
' bucket ' => ' ... ' , # S3 bucket
' bucket_acl ' => ' ... ' , # S3 bucket ACL (optional, defaults to `public-read`)
' distribution ' => ' ... ' , # CloudFront distribution ID (optional, step is skipped when empty)
' endpoint ' => ' ... ' , # For usage with providers other than AWS (optional)
],
' url ' => ' ... ' , # Website url (used for displaying url after deploy is finished)
]);
Kemudian konfigurasikan plugin Simply Static melalui antarmuka admin. Pengaturan terpenting yang harus dilakukan dengan benar adalah:
Delivery Method
: diatur ke Local Directory
(file disinkronkan ke S3, zip tidak akan berfungsi)Pengaturan lain yang harus Anda perhatikan:
Additional URLs
: tambahkan URL apa pun yang tidak dapat ditemukan pluginAdditional Files and Directories
: menambahkan direktori tambahan (misalnya aset front-end)URLs to Exclude
: misalnya folder unggahan (tetapi hanya ketika Anda membongkar unggahan saat runtime) Jika semuanya sudah dikonfigurasi dengan benar, tekan Generate & Deploy
di tab Deploy
.
Halaman/postingan dilengkapi dengan tombol penerapan tunggal, sehingga satu halaman dapat dibuat dan diterapkan, lihat antarmuka pengguna penerapan halaman/postingan tunggal.
Penyebaran postingan atau halaman tunggal juga dapat dilakukan secara rekursif dengan mencentang opsi rekursif, lihat kotak centang di antarmuka pengguna penerapan halaman/postingan tunggal. Ketika 'rekursif' telah diperiksa, semua halaman/postingan yang berisi url halaman/postingan saat ini akan dibuat dan diterapkan juga.
Filter yang tersedia untuk mengubah pengaturan dan data yang diteruskan ke plugin:
Tindakan yang tersedia untuk diminta atau ditindaklanjuti:
Ubah entri dari opsi 'File dan Direktori Tambahan'. Secara default, semua jalur untuk sementara diselesaikan ke jalur absolut melalui realpath, untuk memastikan tautan simbolik diselesaikan. Serangkaian file yang tidak dimodifikasi dari opsi diteruskan sebagai argumen.
add_filter ( ' simply_static_deploy_additional_files ' , function ( array $ files ) {
# Modify files, and possibly resolve paths with `realpath`.
return $ files ;
});
Catatan: selama pembuatan situs statis, pengaturan additional_files
diperbarui. Itu dipulihkan setelah selesai.
Saat melakukan penerapan tunggal, hanya halaman/postingan tertentu yang akan dihasilkan, termasuk file yang diberikan dalam pengaturan 'File tambahan' Simply Static. Anda dapat mengubah file tambahan ini untuk penerapan tunggal melalui filter simply_static_deploy_single_additional_files
. Dibutuhkan dua argumen: yang pertama adalah array nama file, yang kedua adalah instance Simply Static Options.
Ubah entri dari opsi 'URL tambahan'. Ini berguna untuk menambahkan halaman yang tidak dapat ditemukan oleh Simply Static (tidak ada di peta situs, dikecualikan dengan kata sandi, memiliki noindex
, dll...). Serangkaian URL yang tidak dimodifikasi dari opsi diteruskan sebagai argumen.
add_filter ( ' simply_static_deploy_additional_urls ' , function ( array $ urls ) {
# Modify urls, for example by adding missing pages.
return $ urls ;
});
Catatan: selama pembuatan situs statis, pengaturan additional_urls
diperbarui. Itu dipulihkan setelah selesai.
Filter ini menambahkan opsi untuk menyesuaikan pengaturan url yang dapat dikecualikan. Ini bisa berguna ketika misalnya Anda ingin mengabaikan pengecualian ketika url berisi url induk rekursif.
add_filter ( ' simply_static_deploy_recursive_excludable ' , function (
$ excludable ,
string $ staticPageUrl ,
string $ recursiveUrl
) {
# Modify excludable url logic, for example ignore excludeable url setting when current page contains the recursiveUrl
return $ excludable ;
});
Dipanggil dari plugin, dan menerima objek WP_Error
yang menjelaskan kesalahannya. Anda dapat memutuskan cara menangani kesalahan, misalnya dengan mencatatnya menggunakan layanan pilihan.
add_action ( ' simply_static_deploy_error ' , function ( WP_Error $ error ) {
# Handle the error.
});
Ini akan dipicu setelah semua tugas penerapan selesai. Argumen pertama dan satu-satunya yang akan Anda dapatkan dalam fungsi panggilan balik adalah contoh opsi Simply Static.
add_action('simply_static_deploy_complete' , function (Simply_StaticOptions $options) {
// Finished static deploy job.
});
Dipanggil ketika Simply Static selesai membuat situs statis. Hal ini memungkinkan Anda untuk memodifikasi file yang dihasilkan sebelum disebarkan. Direktori situs statis diteruskan sebagai argumen.
add_action ( ' simply_static_deploy_modify_generated_files ' , function (
string $ directory
) {
# Modify generated files, like renaming or moving them.
});
Jadwalkan acara penerapan.
Argumen:
hourly
, twicedaily
, dan daily
. Dapat diperpanjang melalui cron_schedules. do_action ( ' simply_static_deploy_schedule ' , ' 12:00 ' , ' daily ' );
Catatan: penting agar WP-Cron dipanggil secara teratur. Anda dapat melakukannya dengan menonaktifkan mekanisme default WP-Cron dan beralih untuk memanggilnya melalui cronjob khusus.
Untuk menonaktifkan WP–Cron default (yang biasanya dipanggil saat pengguna mengunjungi halaman), tambahkan yang berikut ini ke konfigurasi WordPress Anda:
define ( ' DISABLE_WP_CRON ' , true );
Buat cronjob dengan memanggil WordPres WP-Cron. Menyetelnya ke setiap 5 menit akan menjadi default yang bagus. Misalnya melalui crontab -e
di mesin Linux:
*/5 * * * * curl https://example.com/wp/wp-cron.php?doing-cron > /dev/null 2>&1
Fatal error: Uncaught Error: Class 'GrrrSimplyStaticDeploySimplyStaticDeploy' not found
Periksa petunjuk instalasi, dan minta pemuat otomatis Komposer di proyek Anda.