Defective Code Logo

Total Downloads Latest Stable Version Latest Stable Version

English | العربية | বাংলা | Bosanski | Deutsch | Español | Français | हिन्दी | Italiano | 日本語 | 한국어 | मराठी | Português | Русский | Kiswahili | தமிழ் | తెలుగు | Türkçe | اردو | Tiếng Việt | 中文

परिचय

यह पैकेज आपके Laravel एप्लिकेशन में शेयर लिंक्स जोड़ने की प्रक्रिया को सरल बनाता है। यदि आप देखते हैं कि हम किसी सेवा को मिस कर रहे हैं, तो कृपया एक पुल अनुरोध खोलने के लिए स्वतंत्र महसूस करें!

एक शेयर लिंक एक URL है जो सामाजिक मीडिया के आधार URL को आपके वेबसाइट या ऐप से कंटेंट साझा करने के लिए प्रश्न मापदंडों के साथ जोड़ता है। इन मापदंडों में आमतौर पर कंटेंट का URL और एक पूर्व निर्धारित संदेश शामिल होते हैं। इस पैकेज का उपयोग करके उपयोगकर्ता आसानी से ट्विटर, फेसबुक, और टेलीग्राम जैसे प्लेटफार्मों पर पोस्ट साझा कर सकते हैं। Laravel के ब्लेड कंपोनेंट सिस्टम के माध्यम से जल्दी शेयर लिंक्स बनाने के लिए इस ओपन-सोर्स पैकेज का उपयोग करें।

उदाहरण

<x-link-sharer सेवा="twitter" पाठ="Share me!" url="https://www.defectivecode.com" हैशटैग="awesome,links" class="p-4">
<!-- शेयर बटन की रूपरेखा और अनुभव को नियंत्रित करने के लिए यहां आपका HTML कोड -->
<span class="bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded">मुझे क्लिक करें!</span>
</x-link-sharer>

स्थापना

  1. सबसे पहले, निम्नलिखित कंपोज़र कमांड चलाकर PHP पैकेज स्थापित करें:
    composer require defectivecode/link-sharer
  2. बस इतना ही! हमारा पैकेज स्वचालित रूप से Laravel के पैकेज डिस्कवरी का उपयोग करके स्थापित हो जाएगा।

सेवाएँ

सेवा प्रदाता कभी-कभी पूर्व नोटिस के बिना अपने शेयर लिंक्स को अपडेट करते हैं। हम इन परिवर्तनों के साथ अद्यतित रहने के लिए हर संभव प्रयास करते हैं। हालाँकि, यदि आप किसी गैर-कार्यात्मक सेवा का सामना करते हैं, तो कृपया एक मुद्दा खोलें या एक पुल अनुरोध प्रस्तुत करें। एक नई सेवा जोड़ने के लिए नीचे योगदान देने अनुभाग को देखें।

कुछ सेवाएँ अतिरिक्त मापदंड प्रदान करती हैं जिन्हें कंपोनेंट में पास किया जा सकता है। इन्हें नीचे दी गई तालिका में दस्तावेजित किया गया है।

सेवा टेक्स्ट समर्थन URL समर्थन नोट्स
Blogger ✔️ ✔️ t ब्लॉग पोस्ट का पाठ।
Diaspora ✔️ ✔️
Diigo ✔️ ✔️ description पोस्ट में जोड़ने के लिए एक विवरण।
Douban ✔️ ✔️ comment पोस्ट में जोड़ने के लिए एक टिप्पणी।
Evernote ✔️ ✔️
Facebook ✔️
Flipboard ✔️ ✔️ quote पोस्ट में जोड़ने के लिए एक उद्धरण।
Gmail ✔️ ✔️ bcc BCC के लिए ईमेल पतों की अल्पविराम से अलग सूची।
cc CC के लिए ईमेल पतों की अल्पविराम से अलग सूची।
su ईमेल का विषय।
to भेजने के लिए ईमेल पतों की अल्पविराम से अलग सूची।
HackNews ✔️ ✔️
Instapaper ✔️ ✔️ description पोस्ट का विवरण।
LineMe ❌️ ✔️
LinkedIn ✔️
LiveJournal ✔️ ✔️
Meneame ❌️ ✔️
Okru ❌️ ✔️
Outlook ✔️ ✔️
Pinterest ✔️ ✔️ media पोस्ट में दिखाने के लिए एक छवि URL।
Plurk ❌ ️ ✔️
Pocket ✔️ ✔️
QZone ✔️ ✔️ summary पोस्ट का सारांश।
Reddit ✔️ ✔️
Renren ✔️ ✔️ description पोस्ट का विवरण।
srcUrl पोस्ट का मूल URL।
Skype ✔️ ✔️
Telegram ✔️ ✔️
Threema ✔️ id पोस्ट भेजने के लिए व्यक्ति का आईडी।
Tumblr ✔️ ✔️ caption पोस्ट में जोड़ने के लिए एक शीर्षक।
tags पोस्ट के लिए लागू करने के लिए टैग की अल्पविराम से अलग सूची।
Twitter ✔️ ✔️ hastags ट्वीट पर लागू करने के लिए हैश टैग की अल्पविराम से अलग सूची।
via उस ट्वीटर को श्रेय देने के लिए।
Viber ✔️ ✔️
VKontakte ✔️ ✔️ description पोस्ट का विवरण।
image पोस्ट में दिखाने के लिए एक छवि URL।
Weibo ✔️ ✔️
WhatsApp ✔️ ✔️
Xing ✔️
YahooMail ✔️ ✔️

योगदान

एक सेवा जोड़ना अपेक्षाकृत सीधा है। src/Services फ़ोल्डर के भीतर एक नई सेवा वर्ग बनाएँ। उस सेवा का नाम दें जिसे आप जोड़ रहे हैं। सिस्टम स्वचालित रूप से फ़ैक्ट्री के माध्यम से सेवा को पंजीकृत करता है, इसलिए मैनुअल पंजीकरण की आवश्यकता नहीं है।

नीचे दी गई Gmail सेवा एक अच्छा उदाहरण है।

<?php
 
namespace DefectiveCode\LinkSharer\Services;
 
use DefectiveCode\LinkSharer\Traits\AppendsLinks;
 
class Gmail extends Service
{
use AppendsLinks;
 
protected string $baseUrl = 'https://mail.google.com/mail/u/0';
 
protected array $baseParameterMapping = [
'text' => 'body',
];
 
protected array $additionalParameters = [
'bcc',
'cc',
'su',
'to',
];
 
protected array $defaultParameters = [
'view' => 'cm',
];
}

कृपया ध्यान दें कि केवल baseUrl अनिवार्य है। baseParameterMapping, additionalParameters, और defaultParameters वैकल्पिक हैं लेकिन कार्यक्षमता को बढ़ा सकते हैं।

$baseUrl

एक सेवा का URL HTTPS के साथ शुरू होने की आवश्यकता नहीं है। उदाहरण के लिए, Viber viber://forward का उपयोग करता है।

baseUrl प्रॉपर्टी सेवा का प्राथमिक URL निर्दिष्ट करती है। यह URL शेयर लिंक उत्पन्न करते समय मौलिक होता है, जिस पर प्रश्न मापदंड जोड़े जाते हैं। Gmail के उदाहरण के रूप में, इसका बेस URL https://mail.google.com/mail/u/0 है।

$baseParameterMapping

यह पैकेज दो प्रमुख गुणों की पहचान करता है: text और url, उनके अधिकांश सेवा प्रदाताओं में प्रचलन के कारण। केवल तब इन गुणों को परिभाषित करें जब संबंधित सेवा एक अलग नामकरण सम्मेलन का उपयोग करती है। उदाहरण के लिए, Gmail text के स्थान पर body का उपयोग करता है, जिसके लिए इस स्पष्ट मैपिंग की आवश्यकता होती है। जब Gmail का उपयोग करते समय, ब्लेड कंपोनेंट में पास किया गया कोई भी text गुण शेयर लिंक में body प्रश्न मापदंड में परिवर्तित हो जाता है।

$additionalParameters

कुछ सेवाएँ अधिक विशिष्ट प्रश्न मापदंड स्वीकार करती हैं। Gmail को संदर्भ लेते हुए, यह bcc, cc, su, और to का समर्थन करता है। इन्हें additionalParameters एरे में परिभाषित करें। जब उपयोगकर्ता इन गुणों को ब्लेड कंपोनेंट में शामिल करते हैं, तो ये शेयर लिंक में जोड़े जाते हैं। सुनिश्चित करें कि ये मापदंड भी समर्थित सेवाओं तालिका में सूचीबद्ध हैं, जिसमें संक्षिप्त विवरण के साथ।

$defaultParameters

कुछ सेवाएँ शेयर लिंक के कार्यात्मक होने के लिए विशिष्ट प्रश्न मापदंडों की आवश्यकता होती हैं। उदाहरण के लिए, Gmail को view=cm शामिल करने की आवश्यकता होती है। ऐसे अनिवार्य गुणों को defaultParameters एरे में परिभाषित किया गया है। वे हमेशा शेयर लिंक में जोड़े जाते हैं और इन्हें छोड़ नहीं सकते।

prepareAttributes()

शेयर लिंक उत्पन्न करने से पहले गुणों को संशोधित करने के लिए, अपनी सेवा में prepareAttributes विधि जोड़ें। यह विधि गुणों को generateLink विधि को पास करने से पहले सक्रिय होती है, जिससे कस्टम गुण संशोधन की अनुमति मिलती है। नीचे AppendsLinks ट्रेट का उपयोग करके एक प्रदर्शन है।

<?php
 
namespace DefectiveCode\LinkSharer\Traits;
 
trait AppendsLinks
{
protected function prepareAttributes(): void
{
if (isset($this->attributes['text']) && isset($this->attributes['url'])) {
$this->attributes['text'] = $this->attributes['text'] . "\n" . $this->attributes['url'];
return;
}
 
if (isset($this->attributes['url'])) {
$this->attributes['text'] = $this->attributes['url'];
}
}
}

सेवा में पास किए गए गुण $attributes एरे के माध्यम से उपलब्ध हैं। दी गई उदाहरण में:

समर्थन दिशानिर्देश

हमारे ओपन सोर्स पैकेज को चुनने के लिए धन्यवाद! कृपया इन समर्थन दिशानिर्देशों को देखने के लिए एक क्षण निकालें। ये आपको हमारे प्रोजेक्ट का अधिकतम लाभ उठाने में मदद करेंगे।

सामुदायिक संचालित समर्थन

हमारा ओपन-सोर्स प्रोजेक्ट हमारी शानदार सामुदायिक द्वारा संचालित होता है। यदि आपके पास प्रश्न हैं या सहायता की आवश्यकता है, तो StackOverflow और अन्य ऑनलाइन संसाधन आपके लिए सबसे अच्छे विकल्प हैं।

बग और विशेषता प्राथमिकता

एक ओपन-सोर्स प्रोजेक्ट का प्रबंधन करने की वास्तविकता का मतलब है कि हम तुरंत हर रिपोर्ट की गई बग या विशेषता अनुरोध को संबोधित नहीं कर सकते। हम मुद्दों को निम्नलिखित क्रम में प्राथमिकता देते हैं:

1. हमारे भुगतान किए गए उत्पादों को प्रभावित करने वाले बग

जो बग हमारे भुगतान किए गए उत्पादों को प्रभावित करते हैं, वे हमेशा हमारी सर्वोच्च प्राथमिकता होंगे। कुछ मामलों में, हम केवल उन बग को संबोधित कर सकते हैं जो हमें सीधे प्रभावित करते हैं।

2. सामुदायिक पुल अनुरोध

यदि आपने एक बग पहचाना है और एक समाधान है, तो कृपया एक पुल अनुरोध जमा करें। हमारे उत्पादों को प्रभावित करने वाले मुद्दों के बाद, हम इन सामुदायिक संचालित सुधारों को अगली उच्चतम प्राथमिकता देते हैं। एक बार समीक्षित और अनुमोदित होने के बाद, हम आपके समाधान को मिलाएंगे और आपके योगदान को मान्यता देंगे।

3. वित्तीय समर्थन

उक्त श्रेणियों के बाहर के मुद्दों के लिए, आप उनके समाधान के लिए धन देने का विकल्प चुन सकते हैं। प्रत्येक खुले मुद्दे को एक आदेश फॉर्म से जोड़ा गया है जहाँ आप वित्तीय रूप से योगदान कर सकते हैं। हम प्रदान किए गए धनराशि के आधार पर इन मुद्दों को प्राथमिकता देते हैं।

सामुदायिक योगदान

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

दोहराने के लिए, DefectiveCode हमारे भुगतान किए गए उत्पादों पर प्रभाव, सामुदायिक पुल अनुरोध और मुद्दों के लिए प्राप्त वित्तीय समर्थन के आधार पर बग को प्राथमिकता देगा.

लाइसेंस - MIT लाइसेंस

कॉपीराइट © डेफेक्टिव कोड, एलएलसी। सर्वाधिकार सुरक्षित

इस सॉफ़्टवेयर और संबंधित दस्तावेज़ फ़ाइलों (जिसे "सॉफ़्टवेयर" कहा जाता है) की एक प्रति प्राप्त करने वाले किसी भी व्यक्ति को बिना किसी शुल्क के समझौता किया जाता है, सॉफ़्टवेयर में बिना किसी रोक-टोक के, जिसमें बिना सीमा के निम्नलिखित अधिकार शामिल हैं: उपयोग करने, कॉपी करने, संशोधित करने, विलय करने, प्रकाशित करने, वितरित करने, उप-लाइसेंस देने और/या सॉफ़्टवेयर की प्रतियों को बेचने के लिए, और उन व्यक्तियों को अनुमति देने के लिए जिन्हें सॉफ़्टवेयर प्रदान किया गया है कि वे ऐसा कर सकें, निम्नलिखित शर्तों के अधीन:

उपरोक्त कॉपीराइट सूचना और यह अनुमति सूचना सभी प्रतियों या सॉफ़्टवेयर के महत्वपूर्ण भागों में शामिल की जानी चाहिए।

सॉफ़्टवेयर "जैसा है" प्रदान किया गया है, बिना किसी प्रकार की वारंटी के, स्पष्ट या अंतर्निहित, जिसमें वाणिज्यिकता, किसी विशेष उद्देश्य के लिए उपयुक्तता और अवमानना की वारंटी शामिल नहीं हैं, लेकिन इनमें सीमित नहीं हैं। किसी भी स्थिति में लेखकों या कॉपीराइट धारकों को किसी भी दावे, क्षति या अन्य दायित्व के लिए उत्तरदायी नहीं ठहराया जाएगा, चाहे वह अनुबंध, टॉर्ट या अन्यथा में हो, जो सॉफ़्टवेयर या सॉफ़्टवेयर के उपयोग या अन्य लेन-देन से उत्पन्न हो।