Integrerer diskusjoner i WordPress

Kommentaren infrastruktur av WordPress er ganske pent og tilfredsstillende for mange, men hvis du trenger dine kommentatorer for å koble til nettstedet ditt med sosiale medier kontoer som Facebook, Twitter, Google og så, må du installere plugins som gir denne funksjonaliteten.

Eller du kan bare bruke Disqus.

Disqus er et kommentarsystem som gir nesten alle autentiserings-APIer, inkludert Facebook, Twitter, Google, Yahoo og OpenID. Dessuten kan du logge inn med Disqus-legitimasjonene dine (som lar deg følge hver samtale på hvert nettsted du kommenterte) eller bare kommentere med et navn og en e-postadresse.

Det er en enkel måte å integrere Disqus på i WordPress: Du registrerer bare en ny Disqus-konto og installerer WordPress-plugin. Den synkroniserer selv med dine innfødte WordPress-kommentarer, så du trenger ikke å bekymre deg for dine eksisterende kommentarer. Og det holder dem synkronisert!

Men hvis du ikke trenger å synkronisere med de opprinnelige kommentarene lenger (som meg), og hvis du er en optimaliseringsfreak (som meg) som hater de ekstra databasespørsmålene, gjør plugins, eller hvis du ikke bryr deg om dine eksisterende kommentarer på alt og ønsker å begynne frisk, er det en relativt enkel måte å integrere Disqus på i WordPress-bloggen din.


Første ting først: Registrering av en ny diskonto

Den enkleste delen av denne opplæringen: Bare gå over til Disqus.com og fyll ut dette enkeltskjemaet for å registrere en ny konto:

(Ikke glem å bekrefte kontoen din ved å klikke på bekreftelseslenken som skal sendes til din e-postadresse!)


Konfigurere plugin og eksportere eksisterende kommentarer til diskusjoner

Vel, du kjenner boret: Last ned pluginet, hent arkivet til din plugins mappe (eller søk etter "Disqus Comment System" fra "Install Plugins" siden av admin panelet og installer pluginet derfra) og aktiver det.

Sette opp pluggen

Når du aktiverer pluginet, blir det et WordPress-varsel med en lenke for å konfigurere pluginet ditt. Der må du logge på med Disqus-legitimasjonene dine først:

Deretter velger du ditt nettsted. Gratulerer, du har nettopp installert Disqus på bloggen din!

Klikk nå på Kommentarer-siden din og deretter på avanserte alternativer-linken øverst til høyre på den siden. Det er flere alternativer som skal kontrolleres:

  1. Disqus kort navn: Dette er det korte navnet du angav mens du registrerte deg på Disqus. Det bør settes automatisk for deg når du logget på for et minutt siden.
  2. API-nøklene: Disse er også automatisk satt for deg og du bør ikke endre dem. Hvis du ved et uhell endret eller slettet en av disse to, kan du besøke profilsiden din på Disqus.com for å få de riktige API-nøklene.
  3. Søknad Offentlig og hemmelig nøkkel: Disse brukes til single sign-on (SSO) applikasjoner. Vi dekker ikke i denne opplæringen, så vi vil passere disse.
  4. Hvor å bruke Disqus kommentarer på: Du kan velge å vise Disqus-kommentarsystemet bare på dine innlegg som du deaktiverte kommentering, eller du kan aktivere Disqus for hvert innlegg. La valget være som om du vil vise Disqus på alle innleggene dine.
  5. JS-utgang for kommentar teller: Disqus prøver automatisk å endre "X Kommentarer" -delene av temaet ditt. Hvis det mislykkes, må du kanskje aktivere dette alternativet.
  6. Deaktiver automatisk synkronisering: Hvis du ikke vil synkronisere nye kommentarer (postet på Disqus) med din innfødte WordPress-kommentardatabase, merk av dette alternativet og deaktiver det.
  7. Deaktiver server side gjengivelse: Dette alternativet lar deg legge inn en tekstliste over innleggets kommentarer før Disqus er lastet på siden. Google indekserer nå Facebook og Disqus-kommentarer (og andre kommentarsystemer som dette), men jeg vet ikke om andre søkemotorer, så hvis du vurderer å bli funnet fra andre søkemotorer med kommentarene på bloggen din, la dette valget være ukontrollert; ellers (noe som betyr at du bare bryr deg om Google og / eller du ikke trenger å bli funnet med ordene i kommentarene til innleggene dine), merk av dette alternativet og deaktiver server side gjengivelse.

Sjekk ett av innleggene dine for å se hvordan Disqus laster seg over det opprinnelige kommentarsystemet. Du er god til å gå nå!

Eksportere eksisterende kommentarer til diskusjoner

Under de alternativene vi har undersøkt akkurat nå, er det "Import / Export" -delen der vi kan, du vet, importere og eksportere våre kommentarer:

Eksporteringsprosessen består av å klikke på "Eksporter" -knappen og venter på Disqus for å fullføre "importere" dine kommentarer til sin database:

Det kan ta sekunder til timer for at prosessen skal fullføres - min egen blogg hadde 20.000 kommentarer når jeg byttet til Disqus, og det tok bokstavelig talt timer! Men mens du forberedte denne opplæringen tok det 2 sekunder å eksportere 2 kommentarer (for eksempelblogg):


Greit; Nå er vi ferdige med plugin-vi kan bare kvitte seg med det nå! :)

Deaktiver pluggen, hvis du skal bruke koden i vårt neste trinn. Jeg foretrekker å reaktivere det en gang til for å sikkerhetskopiere Mine Disqus-kommentarer i databasen min (ved å klikke på "Synkroniser kommentarer" på "Import / Export" -delen og vente i flere minutter), men hvis du ikke tror du noen gang går å bruke pluginet på nytt og ikke trenger alternativene som er lagret i databasen, kan du også avinstallere det med "Avinstaller" -knappen.

Integrering av diskusjoner i WordPress uten et plugin

Som vi diskutert tidligere, gjør ting uten plugins hjelper oss å optimalisere nettstedet vårt - en enkelt spørring er en enkelt spørring, til høyre?

Uansett, her er de funksjonene vi skal bruke - som alltid, legg til disse i temaet ditt functions.php fil:

Embedding Disqus Kommentarer

 funksjon disqus_embed ($ disqus_shortname) global $ post; wp_enqueue_script ( 'disqus_embed', 'http: //'.$disqus_shortname.'.disqus.com/embed.js'); ekko '
';

Funksjonen er ganske enkel: Bruk koden hvor som helst du vil ha i din single.php og page.php filer for å legge inn og vise disqus kommentarer for den siden. Du kan søke etter comments_template (); fungere og erstatte den med vår nye funksjon, siden vi ikke kommer til å bruke de opprinnelige kommentarfunksjonene lenger.

La oss undersøke koden litt:

  1. Last inn JS: Som du vet, kan vi ikke gjøre noe hvis vi ikke laster JS! :)
  2. Plasser div for å laste inn kommentarene i: Vi ekkoer
    fordi Disqus trenger dette div med denne IDen for å laste inn kommentarene i.
  3. JS konfigurasjonsvariabler av Disqus: Vi må sette disse variablene for å gjøre siden gjenkjennelig for Disqus. Vi trenger egentlig ikke å sette disqus_title og disqus_url siden Disqus kan hente dem fra sidens URL og </code> tag, men hvis noen besøker nettstedet ditt med en adresse som inneholder, si, <code>...? Utm_source = feedburner</code>, URL-adressen vil være forskjellig fra originalen, og det kan forårsake problemer.</li> </ol> <blockquote> <p><strong>Tips:</strong> Prøv å laste <code>yourdisqusshortname.disqus.com/embed.js</code> i nettleseren din - du blir omdirigert til Disqus 'CDN. Kopier den nye lenken og bruk den i <code>wp_enqueue_script</code> funksjon for å optimalisere koden litt lenger - et halvt sekund er et halvt sekund, til høyre?</p> </blockquote> <h3>Henter kommentarnummeret</h3> <pre> funksjon disqus_count ($ disqus_shortname) wp_enqueue_script ('disqus_count', 'http: //'.$disqus_shortname.'.disqus.com/count.js'); ekko ''; </pre> <p>Vi kan bruke koden (<code><?php disqus_count('myexampleblog'); ?></code>) hvor som helst i våre temafiler <em>så lenge det er i The Loop</em>. Dessverre kan Disqus bare telle kommentarene med en lenke som har <code>#disqus_thread</code> til slutt, hjelp meg med dine kommentarer hvis du finner en annen måte å vise kommentartellingen på.</p> <blockquote> <p><strong>Tips:</strong> Du kan redigere utdatateksten ved å besøke <code>yourdisqusshortname.disqus.com/admin/settings/appearance/</code> og endre "Kommentar Count Link" og "Reaction Count Link" bokser. Du kan til og med bruke HTML!</p> </blockquote> <h2>Konklusjon</h2> <p>Disqus ble grunnlagt i 2007 og har over 75 millioner brukere over hele verden. Det mangler kanskje noen konfigurasjonsfunksjoner, men det er en av de største kommentarsystemene der ute. Denne artikkelen var hovedideen for å vise deg hvordan du registrerer deg med Disqus, installer den på WordPress-bloggen din, overfør kommentarene dine og bruk flere kodelinjer for å vise kommentarene. For en videre gjennomgang av Disqus, kan du referere til en annen artikkel om Wptuts + og bli kjent med det bedre.</p> <p>Og som alltid, er du hjertelig velkommen til å dele dine ideer og kode som er relevante for dette emnet på dine kommentarer!</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">Kode</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">Integrerer Google Play-tjenester 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">Integrering 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="/">no.accentsconagua.com</a><div class="h-block-a"></div></div> <div class="footer-text"> Interessant informasjon og nyttige tips om programmering. Nettstedutvikling, webdesign og webutvikling. Photoshop opplæringsprogrammer. Opprettelse av dataspill og mobile applikasjoner. Bli en profesjonell programmerer fra grunnen av. </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="Søke..."> <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>