วิธีทำงานกับข้อมูลเมตาของผู้ใช้ WordPress
เผยแพร่แล้ว: 2021-11-26มันเป็นหนึ่งใน API ที่ดีที่สุดที่ WordPress เสนอคือ Metadata API ของผู้ใช้ WordPress เนื่องจาก API นี้ เราได้รับแนวคิดเกี่ยวกับโพสต์ ความคิดเห็น ผู้ใช้ ข้อกำหนด และอื่นๆ อีกมากมายที่เก็บข้อมูลเกี่ยวกับชุดข้อมูลมาตรฐาน
1. ข้อมูลเมตาของ WordPress :
ข้อมูลเมตาได้รับการดูแลด้วยชุดคีย์/ค่า คีย์คือชื่อของคอมโพเนนต์ข้อมูลเมตา ค่าคือข้อมูลที่จะแสดงในรายการข้อมูลเมตาในทุกโพสต์ที่เกี่ยวข้องกับข้อมูล
ขณะที่เราทำงานกับ API ข้อมูลเมตาของผู้ใช้ WordPress ต่างๆ กันต่อไป คุณจะพบว่าคำจำกัดความนี้ยังคงไม่เปลี่ยนแปลงไม่ว่า API ใดจะถูกตรวจสอบ
2. การทำงานกับ User Metadata API :
ข้อมูลเมตาของผู้ใช้ WordPress จะถูกจัดเก็บไว้ในตารางฐานข้อมูล wp_usermeta ซึ่งจริงๆ แล้วมีข้อมูลบางส่วนที่จัดเก็บอยู่ใน API ข้อมูลเมตาของผู้ใช้แล้ว สิ่งนี้เกิดขึ้นเนื่องจากข้อมูลบางส่วนที่จัดเก็บไว้ในหน้าจอโปรไฟล์ผู้ใช้
ไม่ว่าในกรณีใด API จะช่วยให้เราสามารถเขียนข้อมูลของเราเองลงในตารางได้ ดังนั้นด้วยสถานะส่วนใหญ่นั้น เราควรตรวจสอบวิธีการทำงานด้วยความสามารถที่ WordPress มอบให้
จากตัวอย่างส่วนใหญ่ที่ให้ไว้ เราจะส่ง 1 สำหรับพารามิเตอร์หลักไปยังความสามารถของ API เนื่องจากไคลเอนต์หลักเป็นผู้อำนวยการไซต์ที่เชื่อถือได้ นี้ส่วนใหญ่ถูกกำหนดให้มีอยู่ในสถานประกอบการสุ่มบาง
3. การเพิ่มเมตาผู้ใช้:
เพิ่มข้อมูลเมตาในบันทึกของผู้ใช้สำหรับสิ่งนี้ คุณสามารถทำงาน add_user_meta สิ่งนี้มีประโยชน์ หากคุณพยายามใช้ปลั๊กอินหรือเว็บแอปพลิเคชันที่ใช้ WordPress และคุณหวังที่จะขยายขอบเขตสิ่งที่บุคคลสามารถเชื่อมต่อกับโปรไฟล์ของพวกเขาได้ นี่คือแนวทางหนึ่งที่ต้องทำ .
อาจเป็นสิ่งพื้นฐานพอๆ กับการให้โปรไฟล์ของลูกค้าในองค์กรที่มีความสัมพันธ์ระหว่างบุคคล หรืออาจเป็นสิ่งที่พัฒนาเพิ่มเติม ซึ่งคุณอาจเชื่อมต่อไคลเอ็นต์กับข้อมูลที่อยู่ในตารางอื่น ข้อมูลที่หลากหลาย หรืออย่างอื่นที่แตกต่างกัน
อย่างไรก็ตาม งานของ API นั้นยอมรับพารามิเตอร์ตัวที่สี่ตามที่เห็นสมควร ไม่ว่าค่าที่ฝังไว้ควรจะโดดเด่นหรือไม่ก็ตาม
4. ค่าที่ไม่ซ้ำ :
ที่นี่เราจะเห็นในส่วนของการเข้ารหัสเพื่อเพิ่มข้อมูลเมตาของผู้ใช้
add_filter('the_content', 'add_user_meta'); /** * กำหนดว่าโพสต์ปัจจุบันเป็นโพสต์ 'Hello Wordl' เริ่มต้นหรือไม่ และถ้าใช่ * เพิ่มข้อมูลเมตาของผู้ใช้ที่ไม่ซ้ำกับฐานข้อมูล * * @param string $content เนื้อหาโพสต์ * @return string $content เนื้อหาที่โพสต์ */ ฟังก์ชั่น add_user_meta (เนื้อหา $) { ถ้า (1===get_the_ID()){ add_user_meta (1, 'twitter_account', 'https://twitter.com/username'); } ส่งคืนเนื้อหา $; }
เราขอเข้า the_content
เราตรวจสอบเพื่อดูว่าเราอยู่ในโพสต์ Hello World หรือไม่
ถ้าใช่กว่าที่เราเพิ่มข้อมูลเมตาของผู้ใช้
เราส่งคืนเนื้อหา $ ไปที่ WordPress
ด้วยการตั้งค่ารหัสนี้และโพสต์ Hello World ที่ซ้อนกันในโปรแกรมของคุณ ให้ชุบชีวิตหน้าสองสามครั้ง
ค่าที่ไม่ซ้ำกัน
เมื่อเรารู้เกี่ยวกับค่าที่ไม่ซ้ำ ในฟังก์ชันแรก ในฟังก์ชันที่สอง เราจะเห็นค่าที่ไม่ซ้ำ

add_filter('the_content', 'unique_add_user_meta'); /** * กำหนดว่าโพสต์ปัจจุบันเป็นโพสต์ 'Hello Wordl' เริ่มต้นหรือไม่ และถ้าใช่ * เพิ่มข้อมูลเมตาของผู้ใช้ที่ไม่ซ้ำกันไปยังฐานข้อมูล * * @param string $content เนื้อหาโพสต์ * @return string $content เนื้อหาที่โพสต์ */ ฟังก์ชั่น unique_add_user_meta ($ เนื้อหา) { ถ้า (1===get_the_ID()){ add_user_meta (1, 'twitter_account', 'https://twitter.com/username', จริง); } ส่งคืนเนื้อหา $; }
เริ่มแรก ให้สิ่งจูงใจที่น่าสนใจแก่ค่าเมตาในการเรียกใช้ฟังก์ชัน รีเฟรชหน้าสองสามครั้ง และหลังจากนั้นให้ดูที่ฐานข้อมูล
5. การอัปเดต Meta ของผู้ใช้ :
อัปเดตฟิลด์เมตาผู้ใช้ขึ้นอยู่กับ ID ผู้ใช้ ใช้พารามิเตอร์ $prev_value เพื่อแยกระหว่างฟิลด์เมตาที่มีคีย์และ ID ผู้ใช้ที่คล้ายกัน ในกรณีที่ไม่มีฟิลด์เมตาสำหรับผู้ใช้ ฟิลด์นี้จะถูกรวมไว้
เมื่อทำงานกับความสามารถนี้ จะพิจารณาสิ่งนี้ในสองสถานการณ์:
เมื่อมีการรวมข้อมูลเมตาก่อนหน้านี้โดยใช้งาน add_user_meta และมีบันทึกต่างๆ ที่มีข้อมูลคล้ายกัน
เมื่อไม่มีการรวมข้อมูลเมตาและเรากำลังรวมบันทึกอื่นและต้องการให้ไม่ซ้ำกัน
ในกรณีหลัก มันให้ $prev_value เนื่องจากคุณเปิดเผยต่อ WordPress ว่าสิ่งจูงใจใดในการกำหนดเป้าหมายและอัปเดต
เช่นเดียวกับการเพิ่มและอัปเดต คุณสามารถใช้ฟังก์ชันลบและรับเพื่อรับ ข้อมูลเมตาของผู้ใช้ WordPress
6. ไวยากรณ์:
ลบ#
ลบเกณฑ์การประสานงานข้อมูลเมตาจากลูกค้า คุณสามารถประสานงานโดยขึ้นอยู่กับคีย์หรือคีย์และค่า การลบขึ้นอยู่กับคีย์และค่า จะป้องกันไม่ให้คัดลอกข้อมูลเมตาของสำเนาด้วยคีย์ที่คล้ายกัน นอกจากนี้ยังอนุญาตให้ขับไล่คีย์การประสานงานข้อมูลเมตาทั้งหมด หากจำเป็น
Detete_user_meta( int $user_id, สตริง $meta_key, ผสม $meta_value=" );
7. ดึงเมตาผู้ใช้:
สำหรับการกู้คืนข้อมูลเมตาของผู้ใช้นั้น เรามี get_user_meta ที่ทำงานอยู่ ตอนนี้ ควรจะเห็นได้ชัดว่าพารามิเตอร์ปกติจะเป็น ID ผู้ใช้และเมตาคีย์
โปรดทราบว่าเมื่อเราดึงข้อมูล เราแค่ต้องการ ID ผู้ใช้และเมตาคีย์ เนื่องจากเป็นข้อมูลที่แตกต่างสำหรับค่าใดค่าหนึ่ง
รับ# get_user_meta( int $user_id, สตริง $key =" b001 $single=false );
สรุป!
ในระหว่างนี้ ให้สำรวจลู่ทางต่างๆ เกี่ยวกับรหัสที่ได้รับในบล็อกนี้ต่อไป โปรดทราบว่ามีจุดประสงค์เพื่อการสาธิตเพียงเท่านั้นและไม่ควรให้ทำงานในสภาพแวดล้อมที่ใช้งานจริง
ด้วยข้อตกลงนี้ เรากำลังพยายามสร้างกรอบงานสำหรับนักพัฒนา WordPress ในอนาคตเพื่อทำงานเมื่อพวกเขาดำเนินการต่อไปและจัดการกับคำตอบสำหรับเจ้านาย ลูกค้า หรือสำหรับงานของพวกเขาเอง
ดังนั้น ฉันคาดหวังที่จะดำเนินการกับข้อตกลงนี้ จำไว้ว่าในกรณีที่คุณเพิ่งเริ่มต้น คุณสามารถดูการจัดเตรียมของฉันเกี่ยวกับวิธีการที่เชี่ยวชาญที่สุด เริ่มต้นด้วย WordPress ซึ่งเน้นที่หัวข้อต่างๆ อย่างชัดเจนสำหรับ WordPress Tenderfoots กรุณาอย่ารอช้าที่จะทิ้งคำถามหรือข้อสังเกตใด ๆ ไว้ในส่วนข้อเสนอแนะหรือความคิดเห็น
บล็อกนี้จะช่วยให้คุณทราบถึงการทำงานและวิธีการทำงานกับ ข้อมูลเมตาของผู้ใช้ WordPress