การปรับแต่งเฉพาะ WordPress.org สำหรับปลั๊กอิน Two Factor
ตั้งค่า WP Multisite ในเครื่อง
เพิ่มรหัสนี้ใน wp-config.php ของคุณ:
กำหนด( 'WP_ENVIRONMENT_TYPE', 'local' );// เลียนแบบ w.org สำหรับการทดสอบ wporg-two-factorglobal $supes, $super_admins;$supes = array('your_username');$super_admins = array_merge( $supes );function is_special_user( $user_id ) {$user = get_userdata( $user_id );กลับมา in_array( $user->user_login, $GLOBALS['supes'], จริง );
- เพิ่มโค้ดนี้ลงใน wp-content/mu-plugins/0-sandbox.php ของคุณ :
need_once WPMU_PLUGIN_DIR '/wporg-mu-plugins/mu-plugins/loader.php';// เปิดใช้งานผู้ให้บริการจำลองเพื่อความสะดวกเมื่อทดสอบ locally.add_filter( 'two_factor_providers', function( $providers ) {$providers['Two_Factor_Dummy'] = TWO_FACTOR_DIR 'providers/class-two-factor-dummy.php'; ส่งคืน $providers;
}, 100 ); // ต้องเรียกใช้ _after_ wporg-two-factor.// เลียนแบบ `mu-plugins/main-network/site-support.php`.function add_rewrite_rules() {// เช่น https://wordpress.org/support/users /foo/edit/account/add_rewrite_rule(bbp_get_user_slug() . '/([^/]+)/' . bbp_get_edit_slug() '/account/?$','index.php?' .
-
}add_action( 'init', __NAMESPACE__ . 'add_rewrite_rules' ); ติดตั้ง สร้าง และเปิดใช้งานธีม wporg-support
ติดตั้ง two-factor-provider-webauthn , bbPress และ Gutenberg คุณอาจต้องโคลนและสร้างสาขา trunk ของ Gutenberg หากเราใช้คุณสมบัติใหม่
git clone https://github.com/WordPress/two-factor/ ลงใน wp-content/plugins และทำตามคำแนะนำการตั้งค่า
git clone repo นี้ลงใน wp-content/plugins
cd wporg-two-factor && composer install
yarn && yarn workspaces run build
ตั้งค่าเครื่องมือสภาพแวดล้อม yarn setup:tools
เริ่มต้นสภาพแวดล้อม: yarn wp-env start
เครือข่ายเปิดใช้งานปลั๊กอินทั้งหมด
หากคุณต้องการทำการเปลี่ยนแปลง JS yarn workspaces run start
เปิด wp-admin/options-general.php?page=bbpress และยกเลิก Prefix all forum content with the Forum Root slug (Recommended) จากนั้นบันทึก
ไปที่ https://example.org/users/{username}/edit/account/ เพื่อดู UI การตั้งค่าที่กำหนดเอง หากคุณได้รับข้อผิดพลาด 404 โปรดไปที่ wp-admin/options-permalinks.php แล้วลองอีกครั้ง
การทดสอบหน่วยส่วนหน้าสามารถรันได้ใน /settings โดยใช้คำสั่ง npm run test:unit หรือ npm run test:unit:watch
การทดสอบหน่วยแบ็คเอนด์สามารถรันใน / โดยใช้ composer run test หรือ composer run test:watch composer run coverage จะสร้างรายงานความครอบคลุม
โปรดรายงานปัญหาด้านความปลอดภัยที่อาจเกิดขึ้นเป็นการส่วนตัวไปยังโปรแกรม WordPress HackerOne