Adding Comments to your Blog

Thanks for bringing this up @salis. I am tempted to remove Commento from the list entirely if it gives that much trouble to you and others with little pay off in return. Honestly at this point Hypothesis and Commento are the top two solutions beyond a link to email for commenting.

If anyone knows of any other solutions we’re all ears!

1 Like

Maybe for others it’s working well, but I’d also add that they removed the “pay-what-you-can” option bumping monthly at $10/mo. It’d be okay if they had any support at all: I like the project but it’s clear that the service version is just a MRR machine at the expense of support. I think I’ll just wait for remark.as for now.

1 Like

I had no idea that they did that. (Ack I see “Start your 30 day Free Trial” on their site with no free option)

Fair enough! I removed them from the list and will now focus on finding free and open source options for everyone until Remark.as comes along. Thanks again for mentioning this @salis! It’ll help save a lot of people the frustration.

2 Likes

Not sure whether this is still relevant, since Commento is off the list, but overall — and aside from them being a bit steep — my experience has been good and there really isn’t anything as clean looking, which embeds straight to your blog, from what I’m seeing.

Anyways, on to my question. For some reason, the upvote/downvote/reply (and in the case where I’m logged in as a mod, the delete) buttons aren’t visible. When you lion at pics of the UI or use their demo, they’re visible as they should be. I’ve tested this on multiple browsers (I’m stuck to using an iPhone, but in each it looks like they appear in the demo). Any suggestions on a fix?

Demo:

Mine:


Nice information.
Thanks alot

Regards,
Jody

Was able to add Hyvor Talk using the custom JavaScript below. But as salis has mentioned above, it is pretty bloated. They also no longer have a free plan. I was just lucky that I signed up for one before they changed their plans. So I managed to keep my free plan.

// src: https://talk.hyvor.com/web-api/embed
var HYVOR_TALK_WEBSITE = 0000; // REPLACE WITH YOUR 4 DIGITS
var HYVOR_TALK_CONFIG = {
    url: false,
    id: false
};

var hyvorTalkDiv = '<div id="hyvor-talk-view"></div>'
if (document.getElementById("post-body")) {
    document.getElementsByTagName("article")[0].insertAdjacentHTML('beforeend', hyvorTalkDiv);
}

Hi everyone,

Just tried to implement “utterances” following @cjeller1592 's instruction but can’t make it work. Here is the piece of code I use:

comments.src = 'https://utteranc.es/client.js';
comments.async = true;
comments.crossOrigin = 'anonymous'; 
comments.setAttribute('repo', 'user/repo'); // (replaced with my proper user/repo)
comments.setAttribute('issue-term', 'pathname');
comments.setAttribute('label', 'NE');
comments.setAttribute('theme', 'github-dark');
document.getElementById('post-body').appendChild(comments); 

My GitHub repository is public and utterances is installed on it.

What am I doing wrong ?

Thank you for the help.
MC

I compared your custom JavaScript to one where utterances is working and the only difference I see is on this line:
comments.setAttribute('label', 'NE');

Robert Xu has it working on his blog and he uses comments.setAttribute('label', 'write.as');.

Thank you dino for the answer, but the NE label isn’t really an issue. Just found that there is a conflict between utterances and two others custom javascript codes… don’t know why though.

Ah dang it, I was hoping it was an easy fix haha.

Try moving the scripts for utterances to the top of your Custom JavaScript entries so it will run first. If I’m not mistaken, the scripts are evaluated top to bottom.

1 Like

Yes, this works :+1:

Then I adapted Robert Xu code to prevent the comment section to appear under pinned post and it works well, no more conflict. Here is the code for the fictive domain name “yourdomain.com”, three pinned post named “menu”, “about” and “contact” and the dark theme.

if (window.location.hostname === 'yourdomain.com') {
if (!(/^\/$|^\/page|^\/menu|^\/about|^\/contact/.test(window.location.pathname))) {
    var comments = document.createElement("script");
    comments.src = 'https://utteranc.es/client.js';
    comments.async = true;
    comments.crossOrigin = 'anonymous';
    comments.setAttribute('repo', 'user/repo');
    comments.setAttribute('issue-term', 'pathname');
    comments.setAttribute('label', 'write.as');
    comments.setAttribute('theme', 'github-dark');
    document.getElementById('post-body').appendChild(comments);
}}

Hope this help. Thank you again @dino :handshake:

PS: well, in fact there is still some conflict with the two other javascript code. Fixed ! Just needed to add “/page” into the prevent list of pinned posts. But still need to put it at the top !

1 Like

You are welcome!

I’ve wanted @mention/Webmention support on Hypothes.is for a long time. I had URL hacked my way into a solution a while back but never wrote about it.

I was reminded today that one can subscribe to an RSS/ATOM feed of annotations on their site (or any site for that matter) using the feed format https://hypothes.is/stream.rss?wildcard_uri=https://www.example.org/* and replacing the example.org URL with the desired one. Nota bene: the /* at the end makes the query a wildcard to find anything on your site. If you leave it off you’ll only get the annotations on your homepage.

If you’re using Hypothes.is in an off-label use case as a commenting system on your website, this can be invaluable. I recall Tom Critchlow and CJ Eller trying this out in the past.

To go a step further, one can also use this scheme to get a feed of @mentions of their Hypothes.is username too. If I’m not mistaken, based on some preliminary tests, this method should work for finding username both with and without the @ being included.

These are a few interesting tidbits for those who are using Hypothes.is not only for the social annotation functionality, but as a social media site or dovetailing it with their own websites and related workflows.

(originally posted at Hypothes.is as a comment system: Receiving @​mentions and notifications for your website)

I’ve explored Remark.as but I’d like to find a way of adding comments inline to blog posts. I’ve tentatively tried a couple of solutions but by problem is getting them to actually work. And I want to know they will work before I commit, so I’m in a bit of a Catch-22 situation.

For example, if I paste the sample code from https://fastcomments.com into the custom Javascript field in my blog (mattpedals.bike) I get nothing at all showing up.

This is the code:

<script src="https://cdn.fastcomments.com/js/embed-v2.min.js"></script> <div id="fastcomments-widget"></div> <script> FastCommentsUI(document.getElementById('fastcomments-widget'), { tenantId: 'demo' }); </script>

What am I doing wrong? And how can I get it to work. If @support or anyone else can help I’d be grateful. (Bear in mind I’m not technical, so need a cut and paste solution. Thanks.)

Hyvor Talk still works for me. I have it on 3 of my blogs. See this comment.

As for your script, I think, I’m not sure, I think this is what you need in your Custom JavaScript section:

// src: https://cdn.fastcomments.com/js/embed-v2.min.js
FastCommentsUI(document.getElementById('fastcomments-widget'), { 
tenantId: 'demo' });

This needs to be typed inside your blog posts, or can be added via the Signature feature.

 <div id="fastcomments-widget"></div> 

The part that I think won’t work for this is this piece: // src: https://cdn.fastcomments.com/js/embed-v2.min.js. I don’t think you can import JavaScript like that. There has to be a different option from fastcomments to embed their script.

Thanks for the reply, @dino. Hyvor is a bit pricey (I see you’ve managed to hang on to a free account).

I can’t see another code option for fastcomments. Two other options – Cusdis and Chirpy – seem to use very similar approaches.

Cusdis:

<div id="cusdis_thread"
data-host="https://cusdis.com"
data-app-id="713cc27d-e74b-4b58-8ed1-e32f0955c3f7"
data-page-id="{{ PAGE_ID }}"
data-page-url="{{ PAGE_URL }}"
data-page-title="{{ PAGE_TITLE }}"
></div>
<script async defer src="https://cusdis.com/js/cusdis.es.js"></script>

Chirpy:

<script defer src="https://chirpy.dev/bootstrap/comment.js" data-chirpy-domain="mattpedals.bike"></script>
<div data-chirpy-comment="true"></div>

Presumably these won’t work either?

Actually that’s exactly what the // src: ... code is for – importing JS like that.

So @mattpedals, the code block @dino shared should work fine. Just remember to also include the <div>... code in your posts too, as mentioned.

1 Like

Thanks @matt. I’ve done exactly that (JS in custom JS box, div in post) for this post and it’s just blank at the foot of the post where the comments box should appear.

Looks like the code is running before their library loads… Try this full code block instead:

// src: https://cdn.fastcomments.com/js/embed-v2.min.js
addEventListener("load", (event) => {
    FastCommentsUI(document.getElementById('fastcomments-widget'), { 
    tenantId: 'demo' });
});

Yep, that’s it – it’s there now. Thanks.

@matt What would I need to do to the above Cusdis and Chirpy JS for these to work?