วิธีมีส่วนร่วมใน Gutenberg ในฐานะนักพัฒนา WordPress
เผยแพร่แล้ว: 2019-03-01คุณจะชอบมันไม่มากก็น้อย แต่ Gutenberg ตัวแก้ไขบล็อกของ WordPress พร้อมที่จะอยู่ สิ่งที่ดีคือเป็นโอเพ่นซอร์สคุณสามารถปรับเปลี่ยนได้ตามต้องการ (ถ้าคุณรู้วิธี)
ยิ่งไปกว่านั้น หากคุณพบข้อผิดพลาดในตัวแก้ไขที่คุณคิดว่าควรแก้ไข คุณสามารถรายงานหรือลองแก้ไขด้วยตนเองและอัปโหลดการเปลี่ยนแปลงเพื่อให้เราทุกคนได้รับประโยชน์ ด้วยสิ่งนี้ คุณจะมีส่วนสนับสนุนในการปรับปรุงโครงการและ กรรมดี ของคุณ

คุณรู้ขั้นตอนในการปฏิบัติตามเพื่อสนับสนุนรหัสฐานของ Gutenberg หรือไม่? น่าจะเป็นคำตอบของคุณคือไม่ สิ่งเดียวกันนี้เกิดขึ้นกับฉันและฉันต้องตรวจสอบมัน ฉันจะอธิบายวิธีดำเนินการเพื่อให้คุณเข้าใจกระบวนการทั้งหมดได้ง่ายขึ้นและเร็วขึ้น จากนั้นจึงช่วยปรับปรุง Gutenberg (หากต้องการ) ด้วยโค้ดของคุณเองในฐานะนักพัฒนา
มีหลายอย่างที่ต้องทำและปรับปรุง แต่อยู่แค่เพียงปลายนิ้วของคุณเพื่อช่วยในการแก้ปัญหาที่คุณพบด้วยตัวแก้ไขบล็อกของ WordPress
ขั้นตอนในการมีส่วนร่วมในการพัฒนา Gutenberg
ก่อนที่ฉันจะเริ่มต้น ฉันจะถือว่าคุณมีความรู้เกี่ยวกับ Git เพียงเล็กน้อย และคุณมีบัญชี GitHub หากไม่ใช่กรณีนี้ ให้ไปสร้างบัญชีหนึ่งบัญชีและดูบทแนะนำนี้เพื่อเรียนรู้พื้นฐาน
สร้างส้อมของ Gutenberg
สิ่งแรกที่คุณต้องรู้ก็คือซอร์สโค้ดของ Gutenberg นั้นโฮสต์อยู่บน GitHub ในที่เก็บโค้ดนี้ วิวัฒนาการของโครงการเสร็จสิ้นที่นั่น

นี่คือที่ที่คุณมีรหัส Gutenberg เป็นปลั๊กอิน WordPress สำหรับปลั๊กอินเวอร์ชันใหม่แต่ละเวอร์ชัน เวอร์ชันเสถียรของโค้ดเบสจะถูกโอนไปยังเวอร์ชันถัดไปของคอร์เวิร์ดเพรส และนั่นคือวิธีที่จะไป
ในการร่วมให้ข้อมูลโค้ดกับที่เก็บ Gutenberg สิ่งแรกที่เราต้องทำคือสร้างส้อมในบัญชี GitHub ของเรา ในการทำเช่นนี้เราคลิกที่ปุ่ม Fork ที่ปรากฏขึ้นที่มุมบนขวาซึ่งคุณสามารถดูได้ในภาพก่อนหน้า
สิ่งนี้จะสร้างที่เก็บในบัญชี GitHub ของคุณด้วยคุณสมบัติและรหัสเดียวกันกับที่เป็นทางการจาก WordPress แต่เนื่องจากอยู่ในบัญชีที่คุณควบคุม คุณจะมีสิทธิ์เข้าถึงเพื่อแก้ไขโค้ดและทำทุกอย่างที่คุณต้องการ โดยทั่วไปคุณมีสำเนา
โคลนที่เก็บ
ตอนนี้คุณมีที่เก็บ Gutenberg ของคุณเชื่อมต่อกับต้นฉบับแล้ว ได้เวลาดาวน์โหลดลงในคอมพิวเตอร์ของคุณและทำงานกับมัน ในการดำเนินการนี้ ให้เปิดเทอร์มินัลแล้วรันคำสั่งต่อไปนี้:
git clone https://github.com/your-user/gutenberg.git อย่าลืมแทนที่ your-user ด้วยชื่อผู้ใช้ที่คุณใช้บน GitHub สิ่งนี้จะสร้างโฟลเดอร์ gutenberg บนคอมพิวเตอร์ของคุณ ดาวน์โหลดเนื้อหาทั้งหมดของที่เก็บ GitHub ของคุณในเครื่อง
สร้างสาขาใหม่
หากคุณเข้าถึงโฟลเดอร์ใหม่ คุณจะเห็นว่ามีทุกอย่างที่ปรากฏในสาขา หลัก ของที่เก็บ (หรือสาขาหลัก) คุณไม่ควรแตะต้องสาขานี้ด้วยการดัดแปลง ดังนั้นก่อนที่คุณจะไปแก้ไขรหัส Gutenberg เรามาดูวิธีการสร้างสาขาใหม่กันก่อน
หากคุณไม่รู้ว่าสาขาใดใน Git ฉันแนะนำให้คุณอ่านบทความนี้ อย่างไรก็ตาม สำหรับสิ่งที่เราจะทำ คุณเพียงแค่ต้องรู้ว่าสาขาใน Git เป็นวิธีแยกการแก้ไขที่เราทำในโค้ดของที่เก็บ เพื่อรักษาลำดับที่แน่นอน
ถ้าฉันต้องการเพิ่มฟังก์ชันการทำงานใหม่ ฉันจะสร้างสาขาใหม่ซึ่งมีชื่อระบุถึงสิ่งที่ฉันจะทำ จากนั้นฉันจะพัฒนาฟังก์ชันการทำงานที่นั่น เมื่อเสร็จแล้วและเมื่อโค้ดที่แก้ไขทั้งหมดของฉันมีความเสถียร ฉันสามารถรวมสาขานั้นกับสาขาหลัก ( master , remember ) ได้ เท่านี้ก็เรียบร้อย
คำสั่ง Git เพื่อสร้างสาขาใหม่และอัปโหลดไปยังที่เก็บมีดังต่อไปนี้:
git checkout -b fix/clone-block git push -u origin fix/clone-block สิ่งนี้จะสร้างสาขาการ fix/clone-block อย่าลืมเปลี่ยนชื่อตามสิ่งที่คุณกำลังจะทำ ตามคู่มือผู้ร่วมให้ข้อมูลของ Gutenberg คุณต้องใช้ชื่อสำหรับสาขาของคุณพร้อมคำนำหน้าและคำอธิบาย เช่น: [type]/[change]
คำนำหน้าที่ดีมักจะ:
-
add/เพิ่มฟังก์ชันใหม่ - ฟังก์ชันทดลอง
try/ทดลอง เพื่อวัตถุประสงค์ในการทดสอบ -
update/อัปเดตฟังก์ชันที่มีอยู่ -
fix/แก้ไขปัญหา
ตัวอย่างเช่น fix/clone-block บ่งชี้ว่าเรากำลังจะเสนอการแก้ไขเมื่อทำการโคลนบล็อก
ใช้การเปลี่ยนแปลงกับ The Code
ตอนนี้ คุณมีทุกอย่างที่พร้อมสำหรับการเปิดไฟล์ด้วยตัวแก้ไขที่คุณชอบมากที่สุดและเริ่มเขียนโปรแกรม แต่ก่อนที่จะทำอย่างนั้นคุณควรจะรู้อะไรบางอย่าง...
อันดับแรก โค้ด Gutenberg ทั้งหมดเป็นไปตามคำแนะนำลักษณะเฉพาะซึ่งคุณต้องปฏิบัติตามด้วย รายละเอียดเฉพาะของวิธีการเขียนโค้ดมีอธิบายไว้ที่นี่


มีกฎสำหรับ CSS, JavaScript และ PHP ปฏิบัติตามกฎเหล่านี้ไม่เช่นนั้นคุณจะมีปัญหาแน่นอนเมื่อรับรหัสของคุณที่คลังข้อมูลอย่างเป็นทางการ
FYI ในกรณีของฉัน การแก้ไขที่ฉันทำคือการใช้ lodash.cloneDeep() ในแอตทริบิวต์ของบล็อกเมื่อคุณโคลนบล็อกด้วย wp.blocks.cloneBlock() เพื่อให้การคัดลอกเสร็จสิ้นในเชิงลึก เพื่อหลีกเลี่ยง สำเนาตื้น ของบล็อกที่เราโคลน คุณสามารถดูการเปลี่ยนแปลงที่ฉันทำได้ที่นี่
อัปโหลดการเปลี่ยนแปลงไปยังสาขาใหม่
เมื่อคุณทำเสร็จแล้ว คุณต้องยอมรับการเปลี่ยนแปลงและอัปโหลดไปยังที่เก็บ หากคุณได้สร้างไฟล์ใหม่ คุณต้องเพิ่มไฟล์เหล่านั้นในการควบคุมเวอร์ชันก่อนโดยใช้คำสั่งต่อไปนี้:
git add your-fileและตอนนี้ก็ถึงเวลายอมรับการเปลี่ยนแปลงด้วยคำสั่งนี้:
git commit -am "Use cloneDeep when cloning a block"สุดท้าย ในการอัปโหลดการเปลี่ยนแปลงไปยังที่เก็บ เราต้องใช้คำสั่งต่อไปนี้:
git pushหลังจากนั้น หากคุณไปที่ที่เก็บใน GitHub คุณจะเห็นการเปลี่ยนแปลงของคุณอัปโหลดในสาขาที่คุณสร้างขึ้น สมบูรณ์แบบ! เราเกือบจะอยู่ที่นั่นแล้ว…
สร้างคำขอดึงในที่เก็บ Gutenberg
เราได้ทำการเปลี่ยนแปลงและอัปโหลดไปยังที่เก็บของเราแล้ว ตอนนี้สิ่งที่เราต้องทำคือเตือนเกี่ยวกับการมีอยู่ของการเปลี่ยนแปลงที่เราเสนอให้กับนักพัฒนาที่รับผิดชอบในการจัดการโครงการ Gutenberg
เพื่อให้การเปลี่ยนแปลงของเราได้รับการหารือและอนุมัติให้เป็นส่วนหนึ่ง (หรือไม่) ของฐานรหัส Gutenberg เราจำเป็นต้องดำเนินการ ดึงคำขอ คำขอดึงคือคำขอที่เจ้าของส้อมของที่เก็บสร้างต่อเจ้าของที่เก็บดั้งเดิมเพื่อให้หลังรวมการคอมมิตที่อยู่ในส้อม
ในการทำเช่นนี้เราไปที่ที่เก็บ Gutenberg fork และคลิกที่ปุ่ม คำขอดึงใหม่ สิ่งนี้นำเราไปสู่มุมมองที่จะเลือกสาขาที่เราเพิ่งอัปโหลดพร้อมกับการเปลี่ยนแปลงของเรา สิ่งนี้จะทำให้เปรียบเทียบกับสาขาหลักของที่เก็บ Gutenberg ดั้งเดิม:

เมื่อเราเลือกสาขาของเราในตัวเลือกแบบเลื่อนลงทางด้านขวา ดังที่คุณเห็นในภาพก่อนหน้า GitHub จะแสดงสรุปการเปลี่ยนแปลงที่ทำในสาขานี้เกี่ยวกับที่เก็บ Gutenberg ดั้งเดิม
จากนั้นเราคลิกที่ปุ่ม สร้างคำขอดึง สิ่งนี้จะนำเราไปสู่มุมมองอื่นซึ่งเราจะต้องกรอกข้อความที่มีข้อมูลอธิบายว่าทำไมเราจึงต้องการทำการเปลี่ยนแปลงเหล่านี้ในที่เก็บ
ดังที่คุณเห็นในภาพต่อไปนี้ เรามีเทมเพลตเนื้อหาที่เราขอให้กรอกอยู่แล้ว:

โดยพื้นฐานแล้ว คุณต้องใส่คำอธิบายการเปลี่ยนแปลงของคุณโดยอธิบายสิ่งที่คุณได้ทำไปแล้วและเหตุผลของคุณ นอกจากนี้ คุณควรระบุว่าคุณได้ทดสอบโค้ดแล้วหรือไม่ และทำอย่างไร คุณสามารถเพิ่มภาพหน้าจอได้หากจำเป็น
ไม่ต้องกังวลหากคุณไม่ทราบวิธีการกรอกเป็นอย่างดี ผู้ดูแลคลังเก็บ Gutenberg จะช่วยคุณได้
เมื่อคุณทำเสร็จแล้ว ให้คลิกที่ปุ่ม สร้างคำขอดึง เพื่อให้คำขอดึงของคุณเป็นสาธารณะในที่สุด ตอนนี้ คุณเพียงแค่ต้องรอให้ผู้ตรวจสอบคนอื่นตรวจสอบและในที่สุดก็อนุมัติและรวมโค้ดของคุณลงในที่เก็บอย่างเป็นทางการ
โปรดทราบว่าการแก้ไขนี้อาจใช้เวลามากหรือน้อยขึ้นอยู่กับปัจจัยหลายประการ ในกรณีของฉัน ในที่สุดคำขอดึงของฉันก็ถูกปิดและมันก็ไม่ประสบความสำเร็จ แต่ฉันได้เรียนรู้มากมายในกระบวนการทั้งหมด และความคิดเห็นของผู้ตรวจสอบก็เป็นไปในเชิงบวกและสร้างสรรค์เสมอ คุณสามารถดูได้ที่นี่ แต่ฉันยังคงทำงานและในที่สุดก็ได้รับการอนุมัติคำขอดึง!
ถ้าคุณคิดว่ามีบางอย่างใน Gutenberg ที่ต้องเปลี่ยน และคุณตั้งตารอที่จะเปลี่ยนแปลงมันในโค้ด ตอนนี้คุณก็รู้แล้วว่ากระบวนการเป็นอย่างไร นอกจากนี้ ทั้งหมดที่ฉันได้อธิบายไว้ที่นี่ไม่ได้ใช้ได้กับ Gutenberg เท่านั้น โครงการซอฟต์แวร์โอเพ่นซอร์สส่วนใหญ่ทำงานเหมือนกัน (หรือคล้ายกันมาก)
อย่าลังเลที่จะมีส่วนร่วม แน่นอน คุณจะได้เรียนรู้อะไรมากมายระหว่างทาง
ภาพเด่นของ Mike Erskine ใน Unsplash
