Joomla उपयोगकर्ताओं के लिए प्रोफ़ाइल चित्र?


9

मैं ऐसा करने के लिए कोई भी सामुदायिक प्लगइन स्थापित नहीं करना चाहता।
मैं अपने पंजीकृत उपयोगकर्ताओं को एक सरल अपलोड छवि फ़ॉर्म प्रदान करना चाहता हूं, जो उन्हें किसी भी समय अपनी प्रोफ़ाइल तस्वीर को अपलोड करने और बदलने की अनुमति देगा और मैं किसी भी तरह के जूमला चर सामान का उपयोग करके उस छवि को पुनः प्राप्त करना चाहता हूं।
मेरा मतलब है कि $user->usernameउपयोगकर्ता में लॉग इन के नाम को वापस करने के समान, कुछ समान चर (या स्क्रिप्ट / कोड) चीज होनी चाहिए जो उपयोगकर्ता में लॉग इन की प्रोफ़ाइल तस्वीर प्रदर्शित करेगी?
कोई संभावना?

जवाबों:


10

वास्तव में एक काफी नया प्लगइन है जिसे आप Joom प्रोफाइल कहा जा सकता है। एक पूर्ण सामुदायिक घटक के बजाय, यह उपयोगकर्ता प्रोफाइल के विस्तार के लिए बनाया गया है। यह आपको अधिक फ़ील्ड जोड़ने और आउटपुट को ओवरराइड करने की सुविधा भी देता है। मैंने वास्तव में इसके साथ ज्यादा नहीं खेला है लेकिन मैंने इसके बारे में अच्छी बातें सुनी हैं।

जूम प्रोफाइल


यह ध्यान दिया जाना चाहिए, इसका भुगतान डाउनलोड है।
मोहम्मद अब्दुल मुजीब

Extension.joomla.org/extension/joom-profile भी काम कर सकता है
Eoin

8

बिना तीसरे पक्ष के विस्तार का उपयोग किए इसे प्राप्त करने का एकमात्र तरीका यह होगा कि आप अपना स्वयं का प्लगइन लिखें या जूमला के साथ आने वाले प्रोफाइल प्लगइन को संपादित करना शुरू करें। कोर फाइल को एडिट करना केवल एक गो क्षेत्र नहीं है इसलिए मैं उस पर भी शुरू नहीं करूँगा।

मैं दृढ़ता से सुझाव दूंगा कि आप एक छोटे और सरल 3 पार्टी प्लगइन का उपयोग करें। यहाँ एक प्लगइन है कि सिर्फ जूमला 3.4 के लिए है, प्रोफ़ाइल चित्र:

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 APIs के आराम के लिए।

उम्मीद है की यह मदद करेगा


उपरोक्त कोड का उपयोग करने पर, पृष्ठ पर कुछ भी प्रदर्शित नहीं होता है। जब मैंने इस कोड को उपरोक्त कोड से हटा दिया if( $profilepicture->exists() ), तो पृष्ठ पर एक टूटी हुई छवि का आइकन प्रदर्शित किया गया था, जो इस पथ से छवि प्राप्त करने की कोशिश कर रहा था, http://localhost/mediaDSplg_user_profilepictureDSimagesDS200DS8a639a6998494f88b94826cfba68655179d010ee.jpgजबकि वास्तविक छवि पथ है http://localhost/media/plg_user_profilepicture/images/200/8a639a6998494f88b94826cfba68655179d010ee.jpg (स्लैश) / जो यूआरएल में डीएस द्वारा प्रतिस्थापित किया जा रहा है राह??
साईबाईवेब

और एक और बात उपरोक्त कोड काम करता है, अगर एक लेख के अंदर रखा गया है, लेकिन केवल इस लाइन को हटाकरif( $profilepicture->exists() )
saibbyweb

@lodder इस बेहतर कोर जूमला की नकल के साथ नहीं किया जाएगा! उपयोगकर्ता प्रोफ़ाइल प्लगइन और एक फ़ील्ड जोड़ना?
इयोन

@ यह कस्टम फ़ील्ड्स के साथ भी संभव हो सकता है .... निश्चित नहीं। कभी भी इनका उपयोग या उपयोग नहीं किया जाएगा। लेकिन हां, आप कोर प्रोफाइल प्लगइन को डुप्लिकेट कर सकते हैं और संपादित कर सकते हैं कि अगर आप पसंद करते हैं, हालांकि अगर मूल प्लगइन में किए गए कोई अपडेट या बग फिक्स हैं, तो आप शायद कभी नहीं जान पाएंगे जब तक आप रेपो का पालन नहीं करते हैं
Lodder

सही है, लेकिन आप प्लगइन्स को ओवरराइड भी कर सकते हैं। यह परीक्षण नहीं किया गया है, लेकिन यह stackoverflow.com/questions/17372379/… को इंगित करता है कि किसी को jw_igig के साथ कुछ सफलता मिली थी। मुझे लगता है कि यह सब निर्भर करता है यदि आप XML को उसी तरह से ओवरराइड कर सकते हैं जैसे आप मेनू आइटम के साथ कर सकते हैं, लेकिन मैं यह नहीं मानूंगा।
इयॉन

7

मैंने पहले आसान प्रोफ़ाइल नामक एक प्लगइन का उपयोग किया है । Avatars का समर्थन करने के अलावा, इसमें अंतर्निहित Joomla उपयोगकर्ता प्रोफ़ाइल प्रणाली पर कई अन्य सुधार हैं। मुक्त संस्करण कुछ हद तक सीमित है, लेकिन जहां तक ​​मुझे याद है यह अभी भी अवतार का समर्थन करता है।

मेरे द्वारा उपयोगी पाए जाने वाले कार्यों में से एक पंजीकरण के बाद पहले लॉगिन के लिए एक कस्टम रीडायरेक्ट सेट करने का विकल्प था, एक फ़ंक्शन जिसे हम नए उपयोगकर्ताओं को सामुदायिक नियमों को प्रदर्शित करने के लिए उपयोग करते थे।

अन्य उपलब्ध कार्यों ( JED लिस्टिंग के अनुसार ) में शामिल हैं:

  • कस्टम फील्ड्स
  • अवतार
  • उपयोगकर्ता सूची और खोज
  • उपयोगकर्ता समूह के साथ बुनियादी शर्तें
  • पुनर्निर्देशन
  • Jomsocial ब्रिज
  • पंजीकरण और प्रोफ़ाइल टैब देखें संपादित करें
  • नाम शैली
  • जूमला पंजीकरण और प्रोफ़ाइल संपादित करें
  • लेखक और सामग्री प्लगइन
  • जुमला मूल निवासी बहुभाषी
  • लॉगिन प्रकार
  • गोपनीयता नियंत्रण
  • सामाजिक संपर्क (प्रो संस्करण केवल)

1
ईज़ी प्रोफाइल के लिए एक और वोट जो मैंने हाल ही में खोजा था। यह विस्तार मेरी अपेक्षाओं से अधिक है और मैं इसका उपयोग वर्तमान में एक साधारण सदस्य व्यापार निर्देशिका बनाने के लिए कर रहा हूं। यह निश्चित रूप से पैसे के लायक है!
नील रॉबर्टसन


3

मैंने कुछ समय पहले एक कस्टम प्रोफ़ाइल घटक बनाया था। आपको संभवतः एक डेटाबेस तालिका की आवश्यकता होगी जो किसी उपयोगकर्ता चित्र URL के लिए एक उपयोगकर्ता आईडी को मैप कर रही है, फिर छवि को पुनः प्राप्त करने के लिए एक सहायक फ़ाइल बनाएं जहाँ भी आपको इसकी आवश्यकता हो।

छवि अपलोड करने के लिए, मुझे लगता है कि मैंने जूमला छवि प्रबंधक का उपयोग किया था ... इसलिए आप बस एक लिंक प्रदान कर सकते हैं जो प्रबंधक को खोलता है, शायद यह एक संशोधित पथ प्रदान करता है एक प्रोफ़ाइल चित्र फ़ोल्डर में निर्देशन। या, यदि आप (शायद) उन्हें सभी उपलब्ध चित्रों (सभी उपयोगकर्ताओं से अर्थ) को देखने के लिए नहीं चाहते हैं, तो आप दस्तावेज़ से संबंधित बाल तत्वों को हटाकर छवि प्रबंधक (यानी, आपकी छवि प्रबंधक उदाहरण) से सभी फ़ील्ड निकाल सकते हैं जब इसे लोड किया जाता है, तो बस "ब्राउज़ करें" बटन और लेबल को छोड़कर फ़ाइल के नाम और पथ को इंगित करता है, फिर पथ (URL) को ऊपर उल्लिखित तालिका में सहेजें।

मैंने इसे हासिल करने के लिए AJAX का उपयोग किया - तस्वीर को अपलोड करने / बदलने के लिए लिंक पर क्लिक करके एक जावास्क्रिप्ट फ़ंक्शन को कॉल किया गया, जो यूजर आईडी से गुजर रहा है। जावास्क्रिप्ट फ़ंक्शन छवि प्रबंधक को खोलता है, नए पथ को पुनर्प्राप्त करता है, और डेटाबेस में उपयोगकर्ता आईडी और तालिका के पथ के लिए एक AJAX अनुरोध का निर्माण करता है जो डेटाबेस को क्वेरी / अद्यतन करता है। Voilà।

क्या आपको यही चाहिए? मुझे पता है कि अगर यह आपको दिलचस्प लगता है, तो मुझे अधिक जानकारी प्रदान करने में खुशी होगी। हालांकि यह शायद सबसे अच्छा अभ्यास नहीं है।

चियर्स


यदि आप जूमला में निर्मित का उपयोग करते हैं तो आपको वास्तव में ऐसा करने की आवश्यकता नहीं है! प्रोफाइल प्लगइन। डेटाबेस संबंध पहले से ही XML का उपयोग करके बनाया जाएगा। आपको वास्तव में एक सहायक फ़ाइल की आवश्यकता नहीं है या तो मुझे नहीं लगता है।
इयोन

3

यह अब एक दिन कस्टम क्षेत्रों का उपयोग करके प्राप्त किया जा सकता है।

यहाँ छवि विवरण दर्ज करें

किसी के उपयोगी होने की स्थिति में मेरा पिछला उत्तर। उपरोक्त शायद अधिक प्रासंगिक है यह सिर्फ संदर्भ के लिए यहां है।

कस्टम फील्ड्स (उत्तर के ऊपर) आज मेरी प्राथमिकता होगी।

यूजर प्रोफाइल नाम से एक प्लगइन है। बस प्लगइन्स पर जाएं और इसे खोजें। इसमें कुछ अतिरिक्त फ़ील्ड्स बनाए गए हैं, हालाँकि छवि नहीं। क्या आप इसे बढ़ाना चाहते हैं आप इस प्रलेखन का पालन कर सकते हैं। चेतावनी। मुझे संदेह है कि इस प्लगइन को हटा दिया जाएगा क्योंकि फ़ील्ड इसे कम उपयोगी बनाती है।

जूमला!  उपयोगकर्ता प्रोफ़ाइल प्लगइन

https://docs.joomla.org/Creating_a_profile_plugin

यह बहुत मुश्किल नहीं है, यह शायद तब तक बहुत कठिन लगता है जब तक कि आप इसे करना नहीं जानते। यदि मुझे ऐसा करना था, तो मैं निश्चित रूप से मौजूदा कोड को देखूंगा और फिर इसे अपने आप में ढालने की कोशिश करूंगा।

यहां सभी वर्तमान फ़ॉर्म फ़ील्ड प्रकारों की एक सूची दी गई है: https://docs.joomla.org/Standard_form_field_types

लेकिन आप विशेष रूप से https://docs.joomla.org/Media_form_field_type को देखना चाहते हैं, जो मीडिया प्रबंधक मोडल को एक्सेस देगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.