7
votes

DISQUS Chargement des mêmes commentaires pour les pages dynamiques

J'ai une page dynamique qui charge des idées différentes. J'utilise des disqus pour les commentaires, mais Disqus continue de charger les mêmes commentaires pour chaque idée.

Voici le site web. http://tech-in.org/submited_ideas/index.php . P>

ici Mon code P>

<script type="text/javascript">
    /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
     if( typeof DISQUS != 'undefined' ) { 
      DISQUS.reset({ 
        reload: true, 
         config: function () { 
           this.page.identifier = '<?php echo $title; ?>'; 
           this.page.url = 'http://tech-in.org/submitted_ideas/idea.php?id=<?php echo $idea_id; ?>'; 
         } 
       }); 
    } 
    var disqus_shortname = 'techinorg'; // required: replace example with your forum shortname
    var disqus_identifier = '<?php echo $title; ?>';
    var disqus_url = 'http://tech-in.org/submitted_ideas/idea.php?id=<?php echo $idea_id; ?>';
    var disqus_title = document.getElementById('disqus_post_title').innerHTML;
    var disqus_message = document.getElementById('disqus_post_message').innerHTML;


    /* * * DON'T EDIT BELOW THIS LINE * * */
    (function() {
        var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
        dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
        (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
    })();
</script>


0 commentaires

4 Réponses :


5
votes

DISQUS décide quels commentaires à la charge en fonction du disqus_identifier vous spécifiez. Lorsqu'une "idée" différente est chargée, assurez-vous que vous fournissez un disqus_dentifier unique correspondant à cette idée. (Ce n'est pas clair ce que $ titre représente dans votre script PHP, qui est en cours d'affectation actuellement à disqus_identifier .) .


2 commentaires

Bonjour poulet, $ titre est le titre de chaque idée. Vous verrez que l'identifiant DISQUS est différent lorsque vous souhaitez afficher la source de chaque page d'idée. Cela signifie que le titre est rendu correctement.


Merci Madmartigan, définir le déséquaison_url à la même chose avec DISQUS_Identififier a résolu le problème.



5
votes

On dirait que votre identifiant n'est pas assez unique, voir la documentation de référence ici: http: //docs.disqus .com / help / 14 /

Il étage:

Lorsque des pages compatibles DISQUS sont visitées, DISQUS utilise cet identifiant pour Déterminez le fil de commentaire approprié à la charge. Si le approprié Le thread n'a pas pu être trouvé, un nouveau thread est créé. DISQUS Identificateurs Gardez les threads et les pages associées.


2 commentaires

Merci Jakub, j'ai résolu le problème en utilisant l'URL comme identifiant. Mais mon doute est que chaque idée a son propre titre. N'est-ce pas assez unique pour les disqus à utiliser?


@Stanley, on dirait que ce n'est pas assez unique, parfois plus unique, mieux ce qui se soucie, c'est un identifiant unique, vous pourriez faire un hasch, et cela fonctionnerait toujours.



1
votes

Je suis tombé sur ce même problème sur une page qui utilise Ajax pour charger un nouveau contenu avec un nouveau thread de Disqus. La solution pour moi définit à la fois l'identifiant et l'URL égale à la même chose.

DISQUS.reset({ 
    reload: true, 
     config: function () { 
       this.page.identifier = 'http://example.com/#!' + myPageID;
       this.page.url = 'http://example.com/#!' + myPageID;
     }}); 


1 commentaires

N'est-il pas étrange que toutes les solutions que j'ai trouvées ne fonctionnaient pas, mais le vôtre, c'est certainement une question de désquêne, mais votre commentaire m'a sauvé, merci.



1
votes

J'ai finalement obtenu ce travail comme suit.

Le DISQUS DOCO pour AJAX Sites [1], indique que les exigences doivent définir les deux variables ceci.dentifier.identifier et this.page.url à l'aide d'un Full Hashbang #! xxx

confortablement, l'exemple Recette [2] liée dans le document mentionné ci-dessus, ne fait pas cela.

références:

[1] https://help.disqus.com/customer/portal/articles/472107-utilisation-disqus- Sites sur Ajax

[2] https://github.com/Disqus/disqus-api-recipes/blob/master/snippets/js/disqus-reset/disqus_reset.html


2 commentaires

Cela a amené Google à ramper des centaines de pages en double sur mon site, à l'aide de Hashbang est une mauvaise idée.


@ Idan-Shechter Je suis d'accord ... et pour de nombreuses autres raisons de mentionner ici, j'ai cessé de l'utiliser. Notez que DISQUS ne semble pas avoir de support réel pour les installations non-serveur basées sur le serveur. Il y a beaucoup qui ne sont pas satisfaits de leur offre. Par exemple. randocity.com/2017 / 10/26 / ...