แทนที่ผู้ใช้ WordPress ด้วยบัญชี Oauth2


10

ฉันพยายามตั้งค่า WordPress เป็นลูกค้า OAuth2 ผู้ใช้ของเราทั้งหมดถูกเก็บไว้ใน CMS ที่เป็นกรรมสิทธิ์ของเราซึ่งเป็นผู้ให้บริการ OAuth เรามีผู้ใช้น้อยมาก (ไม่รับ) ในฐานข้อมูล WordPress ของเราส่วนใหญ่เป็นเพียงผู้ดูแลระบบ เป็นการดีที่ฉันไม่ต้องการที่จะเก็บข้อมูลผู้ใช้ในฐานข้อมูล WordPress เพราะฉันจะต้องรักษาสถานะในเว็บไซต์ WordPress จำนวน X ในขณะที่ฉันมีแหล่งที่มาของความจริงภายใน CMS ที่เป็นกรรมสิทธิ์ของเรา

การออกแบบเริ่มต้นของฉันในตอนนี้คือการสร้างปลั๊กอินที่แทนที่ฟังก์ชั่นผู้ใช้ WordPress ที่มีอยู่และจัดเก็บโทเค็นการเข้าถึง OAuth และ uuid ของผู้ใช้ภายในคุกกี้หรือเซสชัน แต่ฉันต้องการให้ผู้ใช้รายนี้สามารถเข้าถึงได้ในปลั๊กอินอื่น ๆ ดังนั้นจึงเป็นการดีที่จะเอาชนะวิธีการเริ่มต้นของผู้ใช้ WordPress

นี่เป็นวิธีการที่ยอมรับได้หรือไม่? หรือฉันกำลังพยายามทำงานกับ WordPress ในแบบที่มันไม่ได้ตั้งใจให้ทำงานหรือเปล่า?

ฉันสามารถค้นหาปลั๊กอินจำนวนมากสำหรับตั้งค่า WordPress เป็นผู้ให้บริการ OAuth2 แต่มีลูกค้าน้อยมาก ที่ถูกกล่าวว่าฉันได้พบบางอย่างที่ตั้งค่า WordPress เป็นลูกค้า แต่จำนวนมากมีเฉพาะกับ Google Apps, Facebook, Twitter, ฯลฯ นอกจากนี้แอพเหล่านี้พึ่งพาการจัดเก็บข้อมูลผู้ใช้ภายในตารางผู้ใช้ WordPress ฉันไม่ต้องการทำเช่นนั้น

ขอบคุณสำหรับความช่วยเหลือใด ๆ !


สวัสดีนิคยินดีต้อนรับสู่ WPSE น่าเสียดายที่ฉันไม่สามารถช่วยคุณแก้ปัญหาที่เกิดขึ้นจริงได้ - แต่คุณช่วยลบอินโทรออก (ไม่เกี่ยวข้องกับปัญหาจริงๆ) และอาจเพิ่มสิ่งที่คุณได้ลองไปแล้วหรืออาจเพิ่มรหัสบางส่วน สิ่งนี้ทำให้ทุกคนช่วยได้ง่ายขึ้น ขอบคุณ!
Kraftner

ขอบคุณ @ kraftner สำหรับคำตอบที่รีบร้อน ฉันไม่ได้เขียนรหัสมากนักเพราะฉันพยายามออกแบบ / วิจัยก่อนและฉันคิดว่าฉันกำลังมองหาความจริงที่มี อย่างไรก็ตามดูเหมือนว่าฉันควรได้รับการพิสูจน์แนวคิดและทำงาน ขออภัยถ้าฉันทำผิดวิธีที่นี่ ฉันจะพยายามทำงานและโพสต์ปัญหาเล็ก ๆ และตัวอย่างงาน
นิค

ไม่ต้องการที่จะทำให้คุณเสียใจฉันแค่คิดว่าในฐานะที่คุณเป็นคนใหม่ฉันจะบอกคุณว่าคุณจะได้รับการตอบสนองมากขึ้นและดีขึ้นถ้าคุณมีคำถามสั้น ๆ และมุ่งเน้นแทนที่จะเล่าเรื่องด้วยข้อมูลที่ไม่เกี่ยวข้อง
Kraftner

@ คราฟเนอร์ไม่โกรธเลย!
Nick

คำตอบ:


1

หากคุณสามารถเอาชนะฟังก์ชั่นที่อยู่ใน wp-include / pluggable.php คุณควรหลีกเลี่ยงความขัดแย้งของปลั๊กอินใด ๆ ... เว้นแต่คุณจะใช้ปลั๊กอินที่แทนที่ฟังก์ชั่นที่สามารถถอดเปลี่ยนได้

เพียงตรวจสอบให้แน่ใจว่าฟังก์ชั่นของคุณได้รับการประกาศก่อนที่จะเสียบปลั๊กได้ ปลั๊กอินจะถูกโหลดก่อนไฟล์ pluggables ... ดังนั้นหากคุณกำหนดฟังก์ชั่นของคุณแทนที่ในปลั๊กอินจากนั้นคุณสามารถมั่นใจได้ว่าพวกเขาจะถูกโหลด มิฉะนั้นเพียงตรวจสอบให้แน่ใจว่าใช้การกระทำก่อนหน้าเพื่อทำเช่นนั้น

มีการรับรองความถูกต้องค่อนข้างน้อย, คุกกี้, และฟังก์ชั่นที่เกี่ยวข้องกับผู้ใช้ในการใช้งาน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.