รูปโปรไฟล์สำหรับผู้ใช้ Joomla?


9

ฉันไม่ต้องการติดตั้งปลั๊กอินชุมชนเพื่อทำเช่นนั้น
ฉันต้องการให้รูปแบบการอัปโหลดภาพที่เรียบง่ายให้กับผู้ใช้ที่ลงทะเบียนของฉันซึ่งจะช่วยให้พวกเขาอัปโหลดและเปลี่ยนรูปโปรไฟล์ของพวกเขาเมื่อใดก็ได้ที่พวกเขาต้องการและฉันต้องการที่จะดึงภาพนั้นโดยใช้ตัวแปร Joomla
ฉันหมายถึงเหมือน$user->usernameคืนชื่อของผู้ใช้ที่เข้าสู่ระบบควรมีสิ่งที่คล้ายกันตัวแปร (หรือสคริปต์ / รหัส) ซึ่งจะแสดงภาพโปรไฟล์ของผู้ใช้ที่เข้าสู่ระบบ?
มีโอกาสไหม?

คำตอบ:


10

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

Joom Profile


จะต้องมีการบันทึกการดาวน์โหลดที่ชำระเงินแล้ว
Mohd Abdul Mujib

Extensions.joomla.org/extension/joom-profileอาจใช้ได้เช่นกัน
Eoin

8

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

ฉันขอแนะนำอย่างยิ่งให้คุณใช้ปลั๊กอินของบุคคลที่สามขนาดเล็กและเรียบง่าย นี่คือปลั๊กอินที่ใช้สำหรับ Joomla 3.4, Profile Profile:

http://extensions.joomla.org/extensions/extension/clients-a-communities/user-management/profile-picture

ในการเข้าถึงและแสดงภาพแทนตัวคุณสามารถใช้รหัสต่อไปนี้:

// Import the Profile Picture library
jimport('profilepicture.profilepicture');

// Get the current user object
$user = JFactory::getUser();

// Instantiate the ProfilePicture class with User ID
$profilepicture = new ProfilePicture($user->get('id'));

// Output the picture
echo $profilepicture->toHTML();

ตรวจสอบhttps://github.com/mosets/profilepictureส่วนที่เหลือของ API

หวังว่านี่จะช่วยได้


เมื่อใช้โค้ดด้านบนจะไม่มีสิ่งใดปรากฏบนหน้าเว็บ เมื่อฉันลบบรรทัดนี้จากโค้ดด้านบนif( $profilepicture->exists() )ไอคอนภาพที่ไม่สมบูรณ์ก็ปรากฏขึ้นบนหน้าเว็บซึ่งพยายามรับภาพจากเส้นทางนี้http://localhost/mediaDSplg_user_profilepictureDSimagesDS200DS8a639a6998494f88b94826cfba68655179d010ee.jpgในขณะที่เส้นทางภาพจริงคือhttp://localhost/media/plg_user_profilepicture/images/200/8a639a6998494f88b94826cfba68655179d010ee.jpg (เครื่องหมายทับ) /กำลังถูกแทนที่ด้วยDSใน URL ของ เส้นทาง??
saibbyweb

และอีกสิ่งหนึ่งที่โค้ดข้างต้นใช้งานได้หากวางไว้ในบทความ แต่โดยการลบบรรทัดนี้เท่านั้นif( $profilepicture->exists() )
saibbyweb

@ ล็อดเดอร์จะไม่สามารถทำได้ดีไปกว่านี้ด้วยการทำซ้ำ Joomla หลัก! ปลั๊กอินโปรไฟล์ผู้ใช้และเพิ่มเขตข้อมูลหรือไม่
Eoin

@Eoin นี่อาจเป็นไปได้ด้วยฟิลด์ที่กำหนดเอง .... ไม่แน่ใจ ไม่เคยใช้หรือจะใช้พวกเขา แต่ใช่คุณสามารถทำซ้ำปลั๊กอินส่วนกำหนดค่าหลักและแก้ไขได้หากคุณต้องการอย่างไรก็ตามหากมีการอัปเดตหรือแก้ไขข้อบกพร่องที่เกิดขึ้นกับปลั๊กอินดั้งเดิมคุณอาจไม่เคยรู้จนกว่าคุณจะทำตาม repo avidly
Lodder

จริง แต่คุณยังสามารถแทนที่ปลั๊กอินได้ ยังไม่ได้ทดสอบ แต่stackoverflow.com/questions/17372379/นี้ดูเหมือนว่าจะแสดงว่าบางคนประสบความสำเร็จกับ jw_sig ฉันเดาว่าทั้งหมดขึ้นอยู่กับว่าคุณสามารถแทนที่ XML ในแบบเดียวกับที่คุณทำได้กับรายการเมนู แต่ฉันไม่คิด
Eoin

7

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

หนึ่งในฟังก์ชั่นที่ฉันพบว่ามีประโยชน์คือตัวเลือกในการตั้งค่าการเปลี่ยนเส้นทางที่กำหนดเองสำหรับการเข้าสู่ระบบครั้งแรกหลังจากการลงทะเบียนฟังก์ชั่นที่เราใช้เพื่อแสดงกฎชุมชนให้กับผู้ใช้ใหม่

ฟังก์ชั่นอื่น ๆ ที่มี (ตามรายชื่อJED ) รวมถึง:

  • ฟิลด์ที่กำหนดเอง
  • สัญลักษณ์
  • รายชื่อผู้ใช้ & ค้นหา
  • เงื่อนไขพื้นฐานกับกลุ่มผู้ใช้
  • การเปลี่ยนเส้นทาง
  • สะพาน Jomsocial
  • การลงทะเบียนและแก้ไขมุมมองแท็บโปรไฟล์
  • ชื่อสไตล์
  • การลงทะเบียน Joomla & แก้ไขโปรไฟล์
  • ปลั๊กอินผู้เขียนและเนื้อหา
  • Joomla Native Multilanguage
  • ประเภทการเข้าสู่ระบบ
  • การควบคุมความเป็นส่วนตัว
  • Social Connect (รุ่น Pro เท่านั้น)

1
โหวตอีกครั้งสำหรับโปรไฟล์อย่างง่ายที่ฉันเพิ่งค้นพบเมื่อเร็ว ๆ นี้ ส่วนขยายนี้เกินความคาดหมายของฉันอย่างมากและขณะนี้ฉันกำลังใช้ส่วนขยายนี้เพื่อสร้างไดเรกทอรีธุรกิจของสมาชิกที่เรียบง่าย นี่มันคุ้มค่าเงินแน่นอน!
Neil Robertson

คุณสามารถลองExtensions.joomla.org/extension/joom-profile
Eoin

3

ฉันสร้างองค์ประกอบโปรไฟล์ที่กำหนดเองได้สักพัก สิ่งที่คุณอาจต้องมีคือตารางฐานข้อมูลที่จับคู่ ID ผู้ใช้กับ URL รูปภาพของผู้ใช้จากนั้นสร้างไฟล์ตัวช่วยเพื่อดึงภาพทุกที่ที่คุณต้องการ

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

ฉันใช้ AJAX เพื่อให้ได้สิ่งนี้ - คลิกที่ลิงค์เพื่ออัปโหลด / เปลี่ยนรูปภาพเรียกฟังก์ชันจาวาสคริปต์ผ่านรหัสผู้ใช้ ฟังก์ชั่น javascript จะเปิดตัวจัดการรูปภาพเรียกคืนพา ธ ใหม่และสร้างคำขอ AJAX ที่ส่ง ID ผู้ใช้และพา ธ ไปยังตารางไปยังไฟล์ php เพื่อสืบค้น / อัปเดตฐานข้อมูล voila

นี่คือสิ่งที่คุณต้องการ? แจ้งให้เราทราบหากนี่ฟังดูน่าสนใจสำหรับคุณฉันยินดีที่จะให้ข้อมูลเพิ่มเติม แม้ว่านี่อาจจะไม่ใช่วิธีปฏิบัติที่ดีที่สุด

ไชโย


คุณไม่จำเป็นต้องทำสิ่งนี้จริงๆหากคุณใช้ Joomla ในตัว! ปลั๊กอินโปรไฟล์ ความสัมพันธ์ฐานข้อมูลจะถูกสร้างโดยใช้ XML คุณไม่ต้องการไฟล์ตัวช่วยจริงๆเพราะฉันไม่คิด
Eoin

3

สิ่งนี้สามารถทำได้โดยใช้ฟิลด์ที่กำหนดเองวันนี้

ป้อนคำอธิบายรูปภาพที่นี่

คำตอบก่อนหน้าของฉันในกรณีที่ทุกคนพบว่ามีประโยชน์ ด้านบนอาจมีความเกี่ยวข้องมากกว่านี่เป็นเพียงการอ้างอิง

ฟิลด์ที่กำหนดเอง (คำตอบด้านบน) จะเป็นค่าของฉันในวันนี้

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

Joomla!  ปลั๊กอินโปรไฟล์ผู้ใช้

https://docs.joomla.org/Creating_a_profile_plugin

มันไม่ยากเกินไปมันอาจจะดูยากกว่านั้นจนกว่าคุณจะรู้วิธีทำ ถ้าฉันจะทำมันฉันจะต้องดูรหัสที่มีอยู่แล้วพยายามปรับตัวเอง

นี่คือรายการของชนิดเขตข้อมูลฟอร์มปัจจุบันทั้งหมด: https://docs.joomla.org/Standard_form_field_types

แต่คุณอาจต้องการดูที่https://docs.joomla.org/Media_form_field_typeซึ่งจะช่วยให้สามารถเข้าถึง modal ของ media manager ได้

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