❗️ GRRR ไม่ดูแลปลั๊กอินนี้อีกต่อไป
เราขอแนะนำให้ใช้แผน Pro ของปลั๊กอิน Simply Static เมื่อเราเริ่มใช้ปลั๊กอินนี้ ได้มีการแก้ไขการขาดคุณสมบัติการใช้งานใน Simply Static ตั้งแต่นั้นมา ปลั๊กอินก็ได้รับการอัปเดต และแผน Pro นำเสนอสิ่งที่เราขาดหายไปอย่างแน่นอน
GRRR ได้สนับสนุนโค้ดและฟีเจอร์ต่างๆ ให้กับปลั๊กอิน Simply Static และเราดีใจที่ได้เห็นมันเติบโตขึ้น
เราแนะนำให้ลองดูครับ คุ้มค่ากับการลงทุน
ขอบคุณทุกคนที่ให้ความสนใจปลั๊กอินนี้!
หากคุณสนุกกับการใช้ปลั๊กอินนี้หรือได้รับแรงบันดาลใจจากปลั๊กอินนี้ในทางใดทางหนึ่ง คุณอาจต้องการติดตามบล็อกของเรา ซึ่งเราเขียนเกี่ยวกับงานของเราและสิ่งที่เราเรียนรู้ไปพร้อมกัน: grrr.tech
ปลั๊กอินนี้ต้องการ:
ปลั๊กอินนี้จำเป็นต้องติดตั้งโดยใช้ Composer
ตรวจสอบให้แน่ใจว่าคุณมีเส้นทางตัวติดตั้งที่ถูกต้องซึ่งกำหนดค่าไว้ใน composer.json
ของคุณ จะต้องดำเนินการนี้ก่อนที่จะต้องการแพ็คเกจ:
"extra" : {
"installer-paths" : {
"wp-content/plugins/{$name}/" : [ " type:wordpress-plugin " ]
}
}
ติดตั้งผ่านนักแต่งเพลง:
$ composer require grrr-amsterdam/simply-static-deploy
หากคุณยังไม่ได้ใช้ Composer ในโปรเจ็กต์ของคุณ ตรวจสอบให้แน่ใจว่าต้องใช้ตัวโหลดอัตโนมัติของ Composer สถานที่ที่ดีจะอยู่ใน wp-config.php
ของคุณ :
/** Sets up WordPress vars and included files. */
require_once ABSPATH . ' vendor/autoload.php ' ; # ‹— add this
require_once ABSPATH . ' wp-settings.php ' ;
ขั้นแรกให้กำหนด SIMPLY_STATIC_DEPLOY_CONFIG
ในการกำหนดค่า WordPress ของคุณ:
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)
]);
จากนั้นกำหนดค่าปลั๊กอิน Simply Static ผ่านทางอินเทอร์เฟซผู้ดูแลระบบ การตั้งค่าที่สำคัญที่สุดในการทำให้ถูกต้องคือ:
Delivery Method
: ตั้งค่าเป็น Local Directory
(ไฟล์ซิงค์กับ S3, zip จะไม่ทำงาน)การตั้งค่าอื่นๆ ที่คุณควรใส่ใจ:
Additional URLs
: เพิ่ม URL ใด ๆ ที่ปลั๊กอินไม่พบAdditional Files and Directories
: เพิ่มไดเร็กทอรีเพิ่มเติม (เช่น สินทรัพย์ส่วนหน้า)URLs to Exclude
: ตัวอย่างเช่น โฟลเดอร์อัพโหลด (แต่เฉพาะเมื่อคุณออฟโหลดการอัพโหลดขณะรันไทม์) หากทุกอย่างได้รับการกำหนดค่าอย่างถูกต้อง ให้กด Generate & Deploy
ในแท็บ Deploy
เพจ/โพสต์มาพร้อมกับปุ่มปรับใช้เพียงปุ่มเดียว เพื่อให้สามารถสร้างและปรับใช้เพจเดียวได้ โปรดดูอินเทอร์เฟซผู้ใช้ปรับใช้เพจ/โพสต์เดี่ยว
โพสต์เดียวหรือปรับใช้เพจเดียวสามารถทำได้ซ้ำๆ โดยการเลือกตัวเลือกแบบเรียกซ้ำ ดูที่ช่องทำเครื่องหมายในหน้าเดียว/โพสต์ปรับใช้อินเทอร์เฟซผู้ใช้ เมื่อตรวจสอบ 'แบบเรียกซ้ำ' แล้ว หน้า/โพสต์ทั้งหมดที่มี URL ของหน้า/โพสต์ปัจจุบันจะถูกสร้างขึ้นและปรับใช้เช่นกัน
ตัวกรองที่มีให้แก้ไขการตั้งค่าและข้อมูลที่ส่งไปยังปลั๊กอิน:
การดำเนินการที่มีอยู่เพื่อเรียกใช้หรือดำเนินการ:
แก้ไขรายการจากตัวเลือก 'ไฟล์และไดเรกทอรีเพิ่มเติม' ตามค่าเริ่มต้น เส้นทางทั้งหมดได้รับการแก้ไขชั่วคราวเป็นเส้นทางสัมบูรณ์ผ่านเส้นทางจริง เพื่อให้แน่ใจว่าลิงก์สัญลักษณ์ได้รับการแก้ไขแล้ว อาร์เรย์ของไฟล์ที่ไม่ได้แก้ไขจากตัวเลือกจะถูกส่งผ่านเป็นอาร์กิวเมนต์
add_filter ( ' simply_static_deploy_additional_files ' , function ( array $ files ) {
# Modify files, and possibly resolve paths with `realpath`.
return $ files ;
});
หมายเหตุ: ในระหว่างการสร้างไซต์แบบคงที่ การตั้งค่า additional_files
จะได้รับการอัปเดต จะได้รับการบูรณะเมื่อเสร็จสิ้น
เมื่อทำการปรับใช้ครั้งเดียว จะมีเพียงเพจ/โพสต์ที่กำหนดเท่านั้นที่จะถูกสร้างขึ้น รวมถึงไฟล์ที่กำหนดในการตั้งค่า 'ไฟล์เพิ่มเติม' แบบคงที่แบบคงที่ คุณสามารถเปลี่ยนไฟล์เพิ่มเติมเหล่านี้สำหรับการปรับใช้ครั้งเดียวผ่านตัวกรอง simply_static_deploy_single_additional_files
ต้องใช้สองอาร์กิวเมนต์: อันแรกคืออาร์เรย์ของชื่อไฟล์ ส่วนอันที่สองคืออินสแตนซ์ Simply Static Options
แก้ไขรายการจากตัวเลือก 'URL เพิ่มเติม' วิธีนี้จะเป็นประโยชน์ในการเพิ่มหน้าเว็บที่ Simply Static ไม่พบ (ไม่ได้อยู่ในแผนผังไซต์ ถูกแยกออกด้วยรหัสผ่าน มี noindex
ฯลฯ...) อาร์เรย์ของ URL ที่ไม่ได้แก้ไขจากตัวเลือกจะถูกส่งผ่านเป็นอาร์กิวเมนต์
add_filter ( ' simply_static_deploy_additional_urls ' , function ( array $ urls ) {
# Modify urls, for example by adding missing pages.
return $ urls ;
});
หมายเหตุ: ในระหว่างการสร้างไซต์แบบคงที่ การตั้งค่า additional_urls
จะได้รับการอัปเดต จะได้รับการบูรณะเมื่อเสร็จสิ้น
ตัวกรองนี้จะเพิ่มตัวเลือกในการปรับแต่งการตั้งค่า URL ที่ยกเว้นได้ สิ่งนี้มีประโยชน์เมื่อคุณต้องการละเว้นการยกเว้นเมื่อ url มี URL หลักแบบเรียกซ้ำ
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 ;
});
โทรจากปลั๊กอิน และได้รับวัตถุ WP_Error
ที่อธิบายข้อผิดพลาด คุณสามารถเลือกวิธีจัดการกับข้อผิดพลาดได้ เช่น โดยการบันทึกข้อผิดพลาดด้วยบริการที่ต้องการ
add_action ( ' simply_static_deploy_error ' , function ( WP_Error $ error ) {
# Handle the error.
});
สิ่งนี้จะถูกทริกเกอร์หลังจากงานปรับใช้ทั้งหมดเสร็จสิ้น อาร์กิวเมนต์แรกและเดียวที่คุณจะได้รับในฟังก์ชันการโทรกลับคืออินสแตนซ์ตัวเลือก Simply Static
add_action('simply_static_deploy_complete' , function (Simply_StaticOptions $options) {
// Finished static deploy job.
});
เรียกว่าเมื่อ Simply Static สร้างไซต์แบบคงที่เสร็จแล้ว ซึ่งจะทำให้คุณสามารถแก้ไขไฟล์ที่สร้างขึ้นก่อนที่จะนำไปใช้งานได้ ไดเร็กทอรีไซต์แบบคงที่ถูกส่งผ่านเป็นอาร์กิวเมนต์
add_action ( ' simply_static_deploy_modify_generated_files ' , function (
string $ directory
) {
# Modify generated files, like renaming or moving them.
});
กำหนดเวลาเหตุการณ์การปรับใช้
ข้อโต้แย้ง:
hourly
twicedaily
และ daily
สามารถขยายได้ผ่าน cron_schedules do_action ( ' simply_static_deploy_schedule ' , ' 12:00 ' , ' daily ' );
หมายเหตุ: สิ่งสำคัญคือต้องเรียก WP-Cron เป็นประจำ คุณสามารถทำได้โดยปิดการใช้งานกลไก WP-Cron เริ่มต้นและสลับไปใช้การโทรผ่าน cronjob เฉพาะ
หากต้องการปิดใช้งาน WP–Cron เริ่มต้น (ซึ่งปกติจะเรียกเมื่อผู้ใช้เยี่ยมชมเพจ) ให้เพิ่มสิ่งต่อไปนี้ในการกำหนดค่า WordPress ของคุณ:
define ( ' DISABLE_WP_CRON ' , true );
สร้าง cronjob เรียก WordPres WP-Cron การตั้งค่า ทุกๆ 5 นาที จะเป็นค่าเริ่มต้นที่ดี ตัวอย่างเช่นผ่าน crontab -e
บนเครื่อง Linux:
*/5 * * * * curl https://example.com/wp/wp-cron.php?doing-cron > /dev/null 2>&1
Fatal error: Uncaught Error: Class 'GrrrSimplyStaticDeploySimplyStaticDeploy' not found
ตรวจสอบคำแนะนำในการติดตั้ง และต้องใช้ตัวโหลดอัตโนมัติของ Composer ในโปรเจ็กต์ของคุณ