Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Plugins

WordPress अवतार मैनेजमेंट प्लगइन कैसे बनाएं: फिनिशिंग टच

by
Difficulty:IntermediateLength:LongLanguages:
This post is part of a series called How to Create a WordPress Avatar Management Plugin from Scratch.
How to Create a WordPress Avatar Management Plugin from Scratch: Getting Started

Hindi (हिंदी) translation by Ashish Rampal (you can also view the original English article)

WordPress के लिए अवतार मैनेजर एक स्वीट और सिंपल प्लगइन है जो अवतार को लोकल सेव करता है और भी बहुत कुछ। आसानी से।

अपनी WordPress वेबसाइट को बढ़ाएं ताकि यूजर अपनी प्रोफाइल स्क्रीन से सीधे Gravatar या सेल्फ-होस्टेड अवतार इमेज का उपयोग करने  के लिए चुन सके। अपने वर्क फ्लो को इंप्रूव करें, इमेज को ऑन-डिमांड जनरेट करें और नीति इंटरफेस के अंदर यूजर को कस्टम परमिशन दे। अवतार मैनेजर प्लगइन को हेलो बोले।


जल्दी से एक रीकैप

हमारे ट्यूटोरियल के पहले भाग में, हमने रिव्यू किया:

  • WordPress प्लगइन क्या होता है;
  • किस प्रकार एक बेसिक WordPress प्लगइन बनाएं, एक सही लाइसेंस चुने और वर्जन नंबर के लिए फॉर्मेट करें;
  • एक्शन और फिल्टर हुक क्या होते हैं और प्लगइन को बनाते समय इन का प्रयोग कैसे करें;
  • पहले से मौजूद सेटिंग स्क्रीन पर एक नई सेटिंग कैसे जोड़ें;
  • कस्टम ऑप्शंस का प्रयोग करके प्लगइन को और फ्लैक्सिबल कैसे बनाएं।

आज, हम चीजों को आगे बढ़ाएंगे और हमारे प्लगइन को खत्म करेंगे: हम अपने और ऑन-डिमांड इमेज जनरेट करने, हमारे प्लगइन को इंटरनॅशनलाइज़ करने और भी बहुत कुछ को हैंडल करेंगे।


स्टेप 1: अवतार इमेज को रीसाइज करना

आइए निम्नलिखित फंक्शन को लिखकर शुरुआत करें:

सारांश

  • avatar_manager_avatar_resize() फंक्शन स्पेसिफिक अवतार इमेज की कॉपी को रीसाइज करके जनरेट करता है।
  • wp_upload_dir() की कॉल एक ऐरे को रिटर्न करता है जिसमें अपलोड डायरेक्टरी की इस वक्त कनफिगर पाथ की इंफॉर्मेशन शामिल है।
  • str_replace() फंक्शन सर्च की गई सभी स्ट्रिंग को रिप्लेसमेंट स्ट्रिंग के साथ बदल देता है।
  • pathinfo() फंक्शन फाइल के पाथ की इनफार्मेशन रिटर्न करता है।
  • wp_basename() फंक्शन basename() का i18n फ्रेंडली वर्जन है जो पाथ के अंत के name कॉम्पोनेंट को रिटर्न करता है।
  • file_exists() फंक्शन चेक करता है कि क्या यह फाइल है या डायरेक्टरी मौजूद है।
  • skip फ्लैग true होता है यदि डेस्टिनेशन इमेज फाइल पहले से ही मौजूद है, नहीं तो एक नई इमेज जनरेट होती है।
  • wp_get_image_editor() फंक्शन एक WP_Image_Editor इंस्टेंस को रिटर्न करता है और इसमें फाइल को लोड करता है। इसके साथ हम इस पर मेथड को कॉल करके इमेज को मैनिपुलेट कर सकते हैं।
  • is_wp_error() फंक्शन चेक करता है कि क्या पास किया गया वेरिएबल एक WordPress का एरर है।
  • फिर, हम $image ऑब्जेक्ट के resize() और save() मेथड्स को कॉल करके इमेज को रीसाइज और सेव करते हैं।
  • do_action() add_action() द्वारा बनाए गए एक hook को एक्जिक्यूट करता है; यह थीम और प्लगइन को avatar_manager_avatar_resize एक्शन पर बुक करने की अनुमति देता है जो एक अवतार इमेज के रीसाइज करने के बाद ट्रिगर होता है।

स्टेप 2: अवतार इमेज को डिलीट करना

प्रोफाइल अपडेट पर ध्यान देने से पहले, हमें एक और फंक्शन को डिफाइन करना होगा:

सारांश

  • wp_delete_attachment() द्वारा अटैचमेंट हटा दिए जाने पर delete_attachment एक्शन hook को कॉल किया जाता है।
  • get_post_meta() स्पेसिफाई की गई फील्ड से स्पेसिफाई की गई key के साथ कस्टम फील्ड की वैल्यू रिटर्न करता है। सबसे पहले, हम टेस्ट करते हैं कि स्पेसिफाई की गई ID के साथ अटैचमेंट एक अवतार इमेज है या नहीं।
  • is_array() की कॉल यह पता लगाती है कि क्या वेरिएबल एक ऐरे है या नहीं।
  • इसके बाद, हम unlink() फंक्शन का प्रयोग अवतार इमेज को डिलीट करने के लिए करते हैं जिनमें इसकी रीसाइज की गई कॉपी भी होती है, पर उन्हें छोड़ दिया जाता है जिनमें skip फ्लैग true पर सेट है।
  • delete_post_mera() फंक्शन सभी कस्टम फील्ड को डिलीट करता है जिनमें बताई गई key बताए गए पोस्ट में से होती हैं।
  • get_user() फंक्शन यूज़र्स का एक ऐरे प्राप्त करता है जो $args में दिए गए क्राइटेरिया से मैच करते हैं।
  • delete_user_meta() फंक्शन यूजर में क्राइटेरिया से मैच करने वाले मेटाडाटा को हटाता है।
  • अंत में, हम avatar_manager_delete_avatar एक्शन hook को एग्जीक्यूट करते हैं.

स्टेप 3. यूजर की प्रोफाइल को अपडेट करना

यूजर प्रोफ़ाइल को अपडेट करते समय, हमें न केवल यूजर द्वारा ऑप्शंस को सेव करने के लिए बल्कि अवतार अपलोड और रिमूवल को संभालने की आवश्यकता होती है। आईये इसे करते हैं:

सारांश

  • edit_user_profile_update और personal_options_update एक्शन्स आमतौर पर कस्टम फ़ील्ड को सेव करने के लिए उपयोग किये जाते हैं जो WordPress प्रोफाइल पेज में जोड़े गए हैं।
  • sanitize_text_field() फ़ंक्शन यूजर इनपुट या डेटाबेस से स्ट्रिंग को सेनिटाइज़ करता है।
  • update_user_meta() फ़ंक्शन यूजर ID के आधार पर यूजर मेटा फ़ील्ड को अपडेट करता है, जबकि get_user_meta() किसी दिए गए यूजर के लिए एक मेटा फ़ील्ड या यूजर मेटाडेटा के सभी फ़ील्ड रिट्रीव करता है।
  • update_post_meta() फ़ंक्शन स्पेसिफाइड पोस्ट के लिए मौजूदा मेटा key (कस्टम फ़ील्ड) की वैल्यू को अपडेट करता है।

अवतार अपलोड हैंडलिंग

अवतार अपलोड को संभालने के लिए, निम्न कोड लिखें:

सारांश

  • function_exists() true रीटर्न करता है यदि दिया गया फंक्शन डिफाइन है, इसके बाद require_once() स्टेटमेंट चेक करती है कि स्पेसिफाइड फ़ाइल पहले ही इंक्लूड की जा चुकी है, और यदि ऐसा है, तो इसे फिर से इंक्लूड नहीं किया जाता है।
  • wp_handle_upload() फ़ंक्शन WordPress में PHP अपलोड को संभालता है, फ़ाइल के नामों को सेनिटाइज़िंग, माइम टाइप के लिए एक्सटेंशन की जांच, और uploads डायरेक्टरी के भीतर फ़ाइल को उचित डायरेक्टरी में ले जाया जाता है।
  • नई अवतार इमेज जोड़ने से पहले, अगर कोई सेट हो, तो पुराने अवतार को हटाने के लिए हम avatar_manager_delete_avatar() फ़ंक्शन को कॉल करते हैं।
  • wp_insert_attachment() फ़ंक्शन मीडिया लाइब्रेरी में अटैचमेंट डालता है।
  • wp_generate_attachment_metadata() फ़ंक्शन किसी इमेज अटैचमेंट के लिए मेटाडेटा जेनेरेट करता है; यह Settings Media Screen पर डिफाइन आकारों के आधार पर इमेज अटैचमेंट के थंबनेल और अन्य इंटरमीडिएट आकार भी बनाता है।
  • wp_update_attachment_metadata() फ़ंक्शन एक अटैचमेंट के लिए मेटाडेटा अपडेट करता है।
  • इसके बाद, हम avatar_manager_avatar_resize() फ़ंक्शन को डिफ़ॉल्ट आकार पर अवतार इमेज की एक कॉपी जेनेरेट करने के लिए कहते हैं।
  • अंत में, हम अटैचमेंट के लिए मेटाडेटा और वर्तमान में एडिट किये जा रहे यूजर को अपडेट करते हैं।

अवतार इमेज को हटाना

अब, यह समय है की रिक्वेस्ट किये जाने पर एक अवतार इमेज को सचमुच डिलीट करें:

सारांश

  • यदि रेक्वेस्टेड एक्शन की वैल्यू remove-avatar तो हम avatar_manager_delete_avatar() को कॉल करते हैं ताकि यह स्पेसिफाइड इमेज को डिलीट करें।
  • get_edit_user_link() फ़ंक्शन WordPress एडमिन में प्रोफाइल पेज एडिट करने वाले यूज़र्स के लिए लिंक प्राप्त करता है।
  • urlencode() फ़ंक्शन एक स्ट्रिंग को URL के एक क्वेरी भाग में इस्तेमाल करने के लिए एन्कोड करता है।
  • फ़ंक्शन के अंत में, हम यूजर को अपडेट की हुई यूजर प्रोफ़ाइल पर रीडायरेक्ट करने के लिए wp_redirect() फ़ंक्शन को कॉल करते हैं।
  • exit कॉल स्क्रिप्ट के एक्सेक्यूशन को समाप्त करता है; यह एक लैंग्वेज कंस्ट्रक्ट है और यदि कोई status पास नहीं होता है तो इसे बिना किसी पैरेंथेसेस के कॉल किया जा सकता है।

स्टेप 4. कस्टम अवतार इमेज को रिट्रीव करना

इसके बाद, हम कस्टम अवतार इमेज को रिट्रीव करने के लिए एक हेल्पर फंक्शन लिखने जा रहे हैं:

सारांश

  • avatar_manager_get_custom_avatar फ़ंक्शन अवतार इनेबल नहीं होने पर यूजर ID या false पर आधारित कस्टम अवतार इमेज देता है। फ़ंक्शन प्लगइन ऑप्शन रिट्रीव करता है, $size पैरामीटर को सेनिटाइज़ और $alt वेरिएबल से HTML एट्रिब्यूट से बच निकलता है।
  • फिर, अगर अवतार रेटिंग मेल नहीं खाती है तो अवतार इमेज के बजाय उपयोग करने के लिए यह एक डिफ़ॉल्ट इमेज रिट्रीव करता है। अगर रेक्वेस्टेड साइज किसी मौजूदा इमेज फ़ाइल से मेल नहीं खाता है तो अवतार इमेज की एक रीसाइज कॉपी ऑन-डिमांड जेनेरेट होती है।
  • get_userdata() फ़ंक्शन एक WP_User ऑब्जेक्ट को उस यूजर से संबंधित जानकारी के साथ देता है जिसकी ID पास की जाती है।
  • md5() फ़ंक्शन प्रदान की गई स्ट्रिंग के लिए MD5 हैश देता है।
  • strtolower() फ़ंक्शन प्रदान की गई स्ट्रिंग देता है लेकिन सभी अल्फाबेटिक करैक्टर को लोअरकेस में परिवर्तित कर दिया जाता है।
  • is_ssl() कॉल चेक करती है की क्या SSL का प्रयोग हो रहा है.
  • sprintf() फ़ंक्शन एक फॉर्मटेड स्ट्रिंग रीटर्न करता है।
  • hexdec() फ़ंक्शन स्पेसिफाई किये गए हेक्साडेसिमल नंबर का डेसीमल एक्विवैलेन्ट देता है।
  • strpos() कॉल haystack स्ट्रिंग में needle की पहली ओकरैंस की न्यूमेरिक पोजीशन को ढूंढता है।
  • wp_get_attachment_image_src() फ़ंक्शन एक इमेज अटैचमेंट फाइल के इमेज ऐट्रिब्यूट्स url, width और height के साथ एक ऐरे को रीटर्न करता है।
  • अंत में, हम avatar_manager_get_custom_avatar फ़िल्टर हुक में जोड़े गए फंक्शन्स को कॉल करने के लिए apply_filters() फ़ंक्शन का उपयोग करते हैं।

स्टेप 5. अवतार इमेज को रिट्रीव करना

असल में, अगला फ़ंक्शन हमारे प्लगइन का मुख्य फंक्शन है:

सारांश

  • avatar_manager_get_avatar() फ़ंक्शन उस यूजर के लिए अवतार रीटर्न करता है जिसने यूजर ID या ईमेल एड्रेस प्रदान किया है, या अगर अवतार प्रदर्शित नहीं किया गया है तो false होगा।
  • get_avatar() फ़ंक्शन के आउटपुट को बदलने के लिए हम get_avatar फ़िल्टर का उपयोग करते हैं। हमारा फ़ंक्शन प्लगइन ऑप्शन रिट्रीव करता है, $size पैरामीटर को सेनिटाइज़ और स्पेसिफाइड यूजर की ID फाइंड करता है।
  • फिर, यह avatar_manager_get_custom_avatar() फ़ंक्शन कॉल, या get_avatar() के अनमोडिफाइड आउटपुट का परिणाम देता है अगर यूजर एक कस्टम अवतार का उपयोग नहीं करता।
  • is_object() कॉल फाइंड करता है कि वेरिएबल एक ऑब्जेक्ट है या नहीं।
  • email_exists() फ़ंक्शन जांचता है कि किसी दिए गए ईमेल एड्रेस को यूजर नाम पर पहले ही रजिस्टर कर दिया गया है या नहीं, और यूजर ID को रीटर्न करता है, नहीं तो false अगर कुछ मौजूद नहीं है।

रिजल्ट का टेस्ट करने के लिए, Users->Your Profile Screen पर जाएं।

The Avatar Manager plugin options under the User Your Profile Screen
अवतार मैनेजर प्लगइन ऑप्शन User Your Profile Screen के अंडर में

किसी इमेज को अपलोड करने के लिए ब्राउज़ करें। अब, आप Gravatar या कस्टम अवतार इमेज का उपयोग करने के बीच चुनने में सक्षम होने चाहिए जो आपने अभी अपलोड की है।


स्टेप 6. अनावश्यक फ़िल्टर हुक को हटाना

यदि आप Settings Discussion Screen पर जाते हैं तो आप देखेंगे कि डिफ़ॉल्ट अवतार सेटिंग से अवतार आपके कस्टम अवतार के साथ रीप्लेस किए गए हैं। इस समस्या को ठीक करने के लिए, जब हम avatar_defaults फ़िल्टर हुक की सहायता से इसकी आवश्यकता नहीं होती है तो हम अपने कस्टम फ़ंक्शन को हटाकर डिफ़ॉल्ट अवतार को रिस्टोर करेंगे। ऐसा करने के लिए, निम्न कोड जोड़ें:

कस्टम अवतार सेटिंग को डिफ़ॉल्ट अवतार सेटिंग पर लागू करने से रोकने के लिए, हम remove_filter() फ़ंक्शन को कॉल करते हैं। यह एक स्पेसिफाइड फिल्टर हुक से जुड़े एक फंक्शन को हटा देता है। इस मेथड का उपयोग किसी स्पेसिफिक फ़िल्टर हुक से जुड़े डिफ़ॉल्ट फंक्शन्स को हटाने के लिए किया जा सकता है और संभावित रूप से उन्हें एक ऑप्शन के साथ रीप्लेस कर सकता है।


स्टेप 7. कस्टम मीडिया स्टेट को प्रदर्शित करना

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

display_media_states फ़िल्टर का उपयोग मीडिया लाइब्रेरी में जोड़े गए अटैचमेंट के लिए कस्टम मीडिया स्टेट्स को प्रदर्शित करने के लिए किया जाता है। वर्तमान अटैचमेंट की ID को पकड़ने के लिए हम $post ग्लोबल वैरिएबल का उपयोग करते हैं। यदि _avatar_manager_is_custom_avatar कस्टम फ़ील्ड खाली नहीं है, तो अटैचमेंट अवतार इमेज है, इसलिए हम इसके लिए एक कस्टम मीडिया स्टेट को जोड़ते हैं।

यदि आपके पास कोई कस्टम अवतार इमेज सेटअप नहीं है, तो एक अपलोड करें और Media Library Screen पर जाएं।

The Avatar Manager plugin media states under the Media Library Screen
Media Library Screen स्टेट के अंडर में अवतार मैनेजर प्लगइन मीडिया

ध्यान दें कि एक कस्टम अवतार इमेज के रूप में उपयोग किए जाने वाले प्रत्येक अटैचमेंट में अवतार इमेज स्ट्रिंग है जो इसके फ़ाइल नाम के बगल में अपेण्ड है।


स्टेप 8. अनइंस्टॉलर जोड़ना

अनइंस्टॉल प्रोसेस को संभालने के लिए, प्लगइन को register_uninstall_hook() का उपयोग करने के बजाय बेस प्लगइन डायरेक्टरी में uninstall.php नाम की एक फ़ाइल बनाना चाहिए। अनइंस्टॉल करने के प्रोसेस के दौरान अनइंस्टॉल हुक को छोड़कर यह फ़ाइल कॉल की जाएगी, अगर यह मौजूद है। ऐसा करने के लिए, avatar-manager/uninstall.php खोलें और निम्न कोड जोड़ें:

uninstall.php का उपयोग करते समय प्लगइन को एक्सेक्यूट करने से पहले हमेशा WP_UNINSTALL_PLUGIN कांस्टेंट की जांच करनी चाहिए। प्लगइन अनइंस्टॉल करते समय WP_UNINSTALL_PLUGIN निरंतर WordPress द्वारा रनटाइम पर परिभाषित किया जाता है और अगर uninstall.php से सीधे रिक्वेस्ट किया जाता है तो यह मौजूद नहीं होगा। defined() जांचता है कि दिए गए नाम का कांस्टेंट मौजूद है या नहीं। include_once स्टेटमेंट स्क्रिप्ट के एक्सेक्यूशन के दौरान स्पेसिफाइड फ़ाइल को शामिल और मूल्यांकन करता है; अगर फ़ाइल से कोड पहले से ही शामिल किया गया है, तो इसे फिर से शामिल नहीं किया जाएगा। delete_option() फ़ंक्शन ऑप्शन डेटाबेस टेबल से नाम वाले ऑप्शन को हटा देता है।


स्टेप 9. प्लगइन का इंटरनॅशनलाइज़ और ट्रांसलेट करना

एक बार आपके प्लगइन के लिए प्रोग्रामिंग हो जाने के बाद, एक और विचार इंटरनॅशनलाइज़ है। इंटरनॅशनलाइज़, जिसे अक्सर i18n के रूप में संक्षिप्त किया जाता है, सॉफ्टवेयर सेटअप करने के प्रोसेस है ताकि इसे localized किया जा सके; लोकलाइजेशन, या l10n, सॉफ़्टवेयर द्वारा विभिन्न भाषाओं में प्रदर्शित टेक्स्ट का अनुवाद करने का प्रोसेस है। WordPress i18n के लिए gettext लाइब्रेरीज़ और टूल्स का उपयोग करता है।

यह अत्यधिक रेकमेंड किया जाता है कि आप अपनी प्लगइन को इंटरनॅशनलाइज़ करें, ताकि विभिन्न देशों के यूजर इसे लोकलाइज कर सकें।

ट्रांसलेट करने योग्य स्ट्रिंग्स

एक स्ट्रिंग ट्रांसलेट करने योग्य बनाने के लिए, आपको केवल बेसिक स्ट्रिंग को __() फ़ंक्शन कॉल में व्रैप करना होगा। यदि आपके कोड को ब्राउज़र में स्ट्रिंग को echo करना चाहिए, तो इसके बजाय _e() फ़ंक्शन का उपयोग करें। जैसा कि आपने देखा होगा, हमने पहले ही हमारी प्लगइन में ऐसा किया है।

टेक्स्ट डोमेन

एक टेक्स्ट डोमेन एक यूनिक आइडेंटिफायर है, जो सुनिश्चित करता है कि WordPress सभी लोड किए गए ट्रांसलेशन के बीच अंतर कर सकता है। अपनी प्लगइन के basename का उपयोग करना हमेशा एक अच्छा ऑप्शन है। आप load_plugin_textdomain() फ़ंक्शन को कॉल करके प्लगइन के ट्रांसलेटेड स्ट्रिंग्स को लोड कर सकते हैं, जिसे हमने पहले ही हमारे ट्यूटोरियल के पहले भाग में किया है।

PO फाइलें

अब, हमें ट्रांसलेटर के लिए एक .po फ़ाइल बनाने की आवश्यकता है। ऐसा करने के लिए, हम Poedit ट्रांसलेशन सॉफ़्टवेयर का उपयोग करेंगे। एक बार इसे डाउनलोड करने के बाद, एक नई लिस्ट सेट अप करने के लिए File -> New Catalog... पर क्लिक करें। एक नई विंडो खुलनी चाहिए। Project Info टैब पर जाएं और Avatar Manager को प्रोजेक्ट नाम के रूप में एंटर करें।

Poedits Project info tab under the Settings window
Poedit के Project info तब के अंडर में Settings विंडो

Paths टैब पर, आईये बेस पाथ को छोड़ . के रूप में दें। जो डायरेक्टरी को रेफेर करता है जिसमें कैटलॉग है।

Poedits Paths tab under the Settings window
Settings विंडो के अंडर में Poedit का Paths टैब

इसके बाद, Keywords टैब पर जाएं। वहां सभी आइटम निकालें, और इन कीवर्ड में जोड़ें: __, _e, _n और _x

Poedits Keywords tab under the Settings window
Settings विंडो के अंडर में Poedit का Keywords टैब

OK दबाएं और फ़ाइल को avatar-manager/languages/avatar-manager-default.po के रूप में सेव के। अब, फ़ाइल ट्रांसलेशन के लिए तैयार है।

Poedits main window
Poedit की मुख्य विंडो

सभी स्ट्रिंग्स को ट्रांसलेट करें जिन्हे आप चाहते हैं और फिर फ़ाइल को avatar-manager/language/avatar-manager-{locale}.po के रूप में सेव करें। locale लैंग्वेज कोड और/या कंट्री कोड है जिसे आपने फ़ाइल wp-config.php में कांस्टेंट WPLANG में परिभाषित किया है।

MO फ़ाइलें

.mo फ़ाइल एक बाइनरी फ़ाइल है जिसमें सभी बेसिक स्ट्रिंग्स और उनके ट्रांसलेशन तेजी से ट्रांसलेशन एक्सट्रैक्शन के लिए सूटेबल फॉर्मेट में शामिल हैं। यदि आप Edit -> Preferences -> Editor पर जाते हैं तो कन्वर्जन आटोमेटिक रूप से किया जाता है और सेव पर आटोमेटिक रूप से कम्पाइल .mo फ़ाइल जांचें।


स्टेप 10. प्लगइन को रिलीज़ करना और प्रमोट करना

यह सेक्शन आपके द्वारा बनाई गई प्लगइन लेने और इसे व्यापक रूप से वितरित करने के स्टेप्स के माध्यम से जाता है।

WordPress प्लगइन डायरेक्टरी को सबमिट करना

अपनी प्लगइन प्राप्त करने का सबसे तेज़, आसान और सबसे अच्छा तरीका WordPress प्लगइन डायरेक्टरी में अपनी प्लगइन को अपलोड करना है। अपनी प्लगइन सबमिट करने के बारे में अधिक जानकारी के लिए about पेज देखें या सीधे plugin submission page पर जाएं।

अपने प्लगइन को प्रमोट करना और डोक्युमेंटिंग करना

WordPress कम्युनिटी में अपनी प्लगइन सबमिट करने और प्रमोट करने के लिए, पहले अपनी साइट पर पूर्ण और अच्छी तरह लिखित इंस्ट्रक्शन के साथ प्लगइन के लिए एक पेज बनाएं। प्लगइन के हेडर में इस explanation पेज का एक लिंक शामिल करें, ताकि लोग अपडेट और अधिक जानकारी और सहायता के लिए आसानी से चेक कर सकें।

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


निष्कर्ष

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

बोनस के रूप में, अवतार मैनेजर प्लगइन WordPress Plugin Directory और GitHub पर भी उपलब्ध है। नवीनतम रिलीज के साथ अप-टू-डेट रहने के लिए इसे देखें। पढ़ने के लिए धन्यवाद!


रिफरेन्स

  • WordPress कोडिंग स्टैंडर्ड्स - WordPress डेवलपमेंट के लिए कोडिंग स्टैंडर्ड्स के बारे में सामान्य जानकारी।
  • एक प्लगइन लिखना - WordPress प्लगइन्स को डेवेलोप करने के बारे में सीखने के लिए सबसे अच्छी जगह।
  • प्लगइन API - आपके WordPress प्लगइन में एक्शन और फिल्टर हुक का उपयोग करने का तरीका, और मुख्य कार्य जो प्लगइन ओवरराइड कर सकते हैं।
  • फंक्शन रेफरेंस - प्लगइन और थीम डेवलपर्स के लिए उपयोगी कोर WordPress फ़ंक्शंस के साथ एक आर्टिकल; टेम्पलेट टैग को छोड़कर, अधिकांश बेसिक फंक्शन्स की सूची देता है।
  • WordPress डेवलपर्स के लिए I18n - इंटरनॅशनलाइज़ेशन, जिसमें आपकी प्लगइन को इंटरनॅशनलाइज़ करने के तरीके पर एक सेक्शन शामिल है।
  • प्लगइन सबमिशन और प्रमोशन - एक बार जब आप अपनी प्लगइन लिख लेते हैं, तो यहां व्यापक रूप से इसे वितरित करने के कुछ संकेत दिए गए हैं।

एक्सटर्नल लिंक्स

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.