Integrering av Disqus till WordPress

Kommentarsinfrastrukturen i WordPress är ganska snygg och tillfredsställande för många, men om du behöver dina kommentarer till att ansluta till din webbplats med sociala medier, t.ex. Facebook, Twitter, Google och så måste du installera plugins som ger denna funktion.

Eller du kan bara använda Disqus.

Disqus är ett kommonsystem som ger nästan alla autentiserings API inklusive Facebook, Twitter, Google, Yahoo och OpenID. Dessutom kan du logga in med dina Disqus-uppgifter (som låter dig följa varje konversation på varje webbplats du kommenterade) eller bara kommentera med ett namn och en e-postadress.

Det finns ett enkelt sätt att integrera Disqus i WordPress: Du registrerar bara ett nytt Disqus-konto och installerar WordPress-plugin. Den synkroniserar även med dina inbyggda WordPress-kommentarer, så du behöver inte oroa dig för dina befintliga kommentarer. Och det håller dem synkroniserade!

Men om du inte behöver synkronisera med de inhemska kommentarerna längre (som jag) och om du är en optimeringsfreak (som jag) som hatar de extra databasfrågorna gör plugins, eller om du inte bryr dig om dina befintliga kommentarer på allt och vill börja färskt, finns det ett relativt enkelt sätt att integrera Disqus i din WordPress-blogg.


Första sakerna först: Registrering av ett nytt Disqus-konto

Den enklaste delen av denna handledning: Hoppa bara till Disqus.com och fyll i denna enkelsidiga blankett för att registrera ett nytt konto:

(Glöm inte att verifiera ditt konto genom att klicka på verifieringslänken som ska skickas till din e-postadress!)


Ställa in plugin och exportera befintliga kommentarer till disqus

Tja, du vet borren: Hämta plugin, ta ut arkivet till din plugin-program mapp (eller sök efter "Disqus Comment System" från "Install Plugins" på din admin panel och installera plugin därifrån) och aktivera det.

Ställa in plugin

När du aktiverar pluginet kommer det att finnas ett WordPress-meddelande med en länk för att ställa in ditt plugin. Där måste du logga in med dina Disqus-uppgifter först:

Därefter väljer du din webbplats. Grattis, du har just installerat Disqus på din blogg!

Klicka nu på din kommentarer sida och sedan länken Avancerade alternativ längst upp till höger på den sidan. Det finns flera alternativ att kontrollera:

  1. Disqus kort namn: Det här är det korta namnet som du ställde in när du registrerade dig till Disqus. Den ska automatiskt ställas in för dig när du loggade in för en minut sedan.
  2. API-nycklarna: Dessa ställs också automatiskt in för dig och du bör inte ändra dem. Om du av misstag ändrade eller raderade ett av dessa två, besök din profilsida på Disqus.com för att få rätt API-nycklar.
  3. Ansökan Public & Secret Keys: Dessa används för SSO-applikationer (single sign-on). Vi täcker inte i den här handledningen så vi klarar dessa.
  4. Var ska du använda Disqus kommentarer på: Du kan välja att visa Disqus-kommentarsystemet endast på dina inlägg som du inaktiverade kommentera, eller du kan aktivera Disqus för varje inlägg. Lämna alternativet som om du vill visa Disqus på alla dina inlägg.
  5. JS-utgång för kommentarantal: Disqus försöker automatiskt ändra delarna av "X Kommentarer" av ditt tema. Om det misslyckas kan du behöva aktivera det här alternativet.
  6. Inaktivera automatisk synkronisering: Om du inte vill synkronisera nya kommentarer (postat på Disqus) med din inbyggda WordPress-kommentardatabas, markera det här alternativet och inaktivera det.
  7. Inaktivera serverns sidaändring: Med det här alternativet kan du placera en textlista över inläggets kommentarer innan Disqus laddas på sidan. Google indexerar nu Facebook och Disqus-kommentarer (och andra kommentarsystem som det) men jag vet inte om andra sökmotorer, så om du anser att det finns andra sökmotorer med kommentarerna på din blogg, låt det här alternativet vara omarkerat. annars (vilket innebär att du bara bryr dig om Google och / eller du behöver inte hittas med orden i kommentarerna till dina inlägg) markera det här alternativet och inaktivera serverns sidaåtergivning.

Kontrollera en av dina inlägg för att se hur Disqus laddar sig över det inbyggda kommentarsystemet. Du är bra att gå nu!

Exportera existerande kommentarer till Disqus

Nedan de alternativ som vi undersökt just nu finns det "Import / Export" sektionen där vi kan, du vet, importera och exportera våra kommentarer:

Exportprocessen består av att klicka på "Export" -knappen och väntar på Disqus för att slutföra "importera" dina kommentarer till sin databas:

Det kan ta några timmar att processen är klar - min egen blogg hade 20 000 kommentarer när jag bytte till Disqus och det tog bokstavligen timmar! Men när du förberedde denna handledning tog det 2 sekunder att exportera 2 kommentarer (för mitt exempelblogg):


Okej; nu är vi färdiga med plugin-vi kan bara bli av med det nu! :)

Inaktivera plugin, om du ska använda koden i vårt nästa steg. Jag föredrar att återaktivera det en gång till för att säkerhetskopiera mina Disqus-kommentarer till min databas (genom att klicka på "Synkronisera kommentarer" i avsnittet "Import / Export" och vänta i flera minuter) men om du inte tror att du någonsin går att använda plugin igen och behöver inte de alternativ som sparas i din databas, kan du också avinstallera det med knappen Avinstallera.

Integrering av disqus till WordPress utan plugin

Som vi diskuterade tidigare, gör saker utan plugins hjälper oss att optimera vår webbplats - en enda fråga är en enda fråga, höger?

Hur som helst, här är de funktioner som vi ska använda - som alltid, lägg till dessa inuti ditt tema functions.php fil:

Inbäddning Disqus Kommentarer

 funktion disqus_embed ($ disqus_shortname) global $ post; wp_enqueue_script ( 'disqus_embed', 'http: //'.$disqus_shortname.'.disqus.com/embed.js'); eko "
';

Funktionen är ganska enkel: Använd koden var som helst du vill ha i din single.php och page.php filer för att bädda in och visa disqus kommentarer för den sidan. Du kan söka efter comments_template (); funktionen och ersätt den med vår nya funktion, eftersom vi inte kommer att använda de inbyggda kommentarfunktionerna längre.

Låt oss undersöka koden lite:

  1. Ladda JS: Som ni vet kan vi inte göra någonting om vi inte laddar JS! :)
  2. Placera div att ladda in kommentarerna i: Vi echoing
    eftersom Disqus behöver detta div med detta ID för att ladda in kommentarerna i.
  3. JS-konfigurationsvariabler av Disqus: Vi måste ställa in dessa variabler för att göra sidan igenkännbar för Disqus. Vi behöver inte verkligen ställa in disqus_title och disqus_url eftersom Disqus kan hämta dem från sidans URL och </code> tagg men om någon besöker din webbplats med en adress som innehåller, säger, <code>...? Utm_source = feedburner</code>, URL: n kommer att skilja sig från originalet och det kan orsaka problem.</li> </ol> <blockquote> <p><strong>Tips:</strong> Försök ladda <code>yourdisqusshortname.disqus.com/embed.js</code> i din webbläsare - du omdirigeras till Disqus 'CDN. Kopiera den nya länken och använd den i <code>wp_enqueue_script</code> funktion för att optimera koden lite längre - en halv sekund är en halv sekund, höger?</p> </blockquote> <h3>Hämtar kommentarräkningen</h3> <pre> funktion disqus_count ($ disqus_shortname) wp_enqueue_script ('disqus_count', 'http: //'.$disqus_shortname.'.disqus.com/count.js'); eko "; </pre> <p>Vi kan använda koden (<code><?php disqus_count('myexampleblog'); ?></code>) någonstans i våra temafiler <em>så länge som det är i The Loop</em>. Tyvärr kan Disqus bara räkna kommentarerna med en länk som har <code>#disqus_thread</code> i slutändan - hjälp mig med dina kommentarer om du hittar ett annat sätt att visa kommentarräkningen.</p> <blockquote> <p><strong>Tips:</strong> Du kan redigera utmatningstexten genom att besöka <code>yourdisqusshortname.disqus.com/admin/settings/appearance/</code> och ändra rutorna "Kommentar Count Link" och "Reaction Count Link". Du kan även använda HTML!</p> </blockquote> <h2>Slutsats</h2> <p>Disqus grundades 2007 och har över 75 miljoner användare över hela världen. Det saknar kanske vissa konfigurationsfunktioner men det är ett av de största kommentarsystemen där ute. Den här artikelns huvudide var att visa dig hur du registrerar dig med Disqus, installera den på din WordPress-blogg, migrera dina kommentarer och använd flera rader av kod för att visa kommentarer. För en ytterligare översyn av Disqus kan du referera till en annan artikel om Wptuts + och lära känna det bättre.</p> <p>Och som alltid är du mer än välkommen att dela med dig av dina idéer och kod som är relevanta för detta ämne!</p> <div class="rek-block"> <center> <ins class="adsbygoogle" style="display:inline-block;width:580px;height:400px" data-ad-client="ca-pub-3810161443300697" data-ad-slot="9434875811"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </center> </div> <div class="h-alltags"> <a href="articles/code">Koda</a> </div> </div> </div> </div> </div> <div class="next_posts clearfix"> <div class="n_post"> <div class="next_posts-h1 left_nh1"><a href="/articles/code/integrating-google-play-services-on-android.html">Integrerar Google Play-tjänster på Android</a></div> <div class="next_posts-img" style="background-image: url('//accentsconagua.com/img/images_14/integrating-google-play-services-on-android_7.png');"></div> </div> <div class="n_post"> <div class="next_posts-h1 right_nh1"><a href="/articles/code/integrating-cloudflare-with-wordpress.html">Integrera CloudFlare med WordPress</a></div> <div class="next_posts-img" style="background-image: url('//accentsconagua.com/img/images_13/integrating-cloudflare-with-wordpress.gif');"></div> </div> </div> <footer> <div class="container"> <div class="footer-langs"> <ul class="site-langs-list"> <li><a href="https://www.accentsconagua.com"><i class="flag flag-DE"></i>Deutsch</a></li> <li><a href="https://fr.accentsconagua.com"><i class="flag flag-FR"></i>Français</a></li> <li><a href="https://nl.accentsconagua.com"><i class="flag flag-NL"></i>Nederlands</a></li> <li><a href="https://no.accentsconagua.com"><i class="flag flag-NO"></i>Norsk</a></li> <li><a href="https://sv.accentsconagua.com"><i class="flag flag-SE"></i>Svenska</a></li> <li><a href="https://it.accentsconagua.com"><i class="flag flag-IT"></i>Italiano</a></li> <li><a href="https://es.accentsconagua.com"><i class="flag flag-ES"></i>Español</a></li> <li><a href="https://ro.accentsconagua.com"><i class="flag flag-RO"></i>Românesc</a></li> </ul> </div> <div class="h-block"><a href="/">ro.accentsconagua.com</a><div class="h-block-a"></div></div> <div class="footer-text"> Informații interesante și sfaturi utile privind programarea. Dezvoltarea de site-uri, web design si dezvoltare web. Tutoriale Photoshop. Crearea de jocuri pe calculator și aplicații mobile. Deveniți un programator profesionist de la zero. </div> </div> </footer> <div class="search"> <img class="searchico" src="//accentsconagua.com/img/search.svg" alt=""> </div> <div class="modal"> <div class="modal-content"> <span class="close-button">×</span> <input class="searchmain" type="text" id="search-input" placeholder="Căutare..."> <ul class="searchli" id="results-container"></ul> </div> </div> <link rel="stylesheet" href="css/flags.css"> <link rel="stylesheet" type="text/css" href="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.1.0/cookieconsent.min.css" /> <script src="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.1.0/cookieconsent.min.js"></script> <script> window.addEventListener("load", function(){ window.cookieconsent.initialise({ "palette": { "popup": { "background": "#edeff5", "text": "#838391" }, "button": { "background": "#4b81e8" } }, "theme": "classic", "position": "bottom-right" })}); </script> <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <script src="js/scripts.min.js"></script> <script src="js/common.js"></script> <link rel="stylesheet" href="css/fontawesome-all.min.css"> <script> var modal = document.querySelector(".modal"); var trigger = document.querySelector(".search"); var closeButton = document.querySelector(".close-button"); function toggleModal() { modal.classList.toggle("show-modal"); } function windowOnClick(event) { if (event.target === modal) { toggleModal(); } } trigger.addEventListener("click", toggleModal); closeButton.addEventListener("click", toggleModal); window.addEventListener("click", windowOnClick); </script> <script src="https://unpkg.com/simple-jekyll-search@1.5.0/dest/simple-jekyll-search.min.js"></script> <script> SimpleJekyllSearch({ searchInput: document.getElementById('search-input'), resultsContainer: document.getElementById('results-container'), json: '/search.json', searchResultTemplate: '<li><a href="{url}">{title}</a></li>' }) </script> <script src="jquery.unveil2.min.js"></script> <script> $('img').unveil(); </script> </body> </html>