Closed imathis closed 9 years ago
It'd be cool to make the commenting system pluggable rather than embedded into any theme itself. Abstract away the engine (like Disqus or what have you) from the UI.
Yes, I plan to add generic support for comments. I only really have experience with disqus and it has been a while since I last looked at their documentation. Basically I'd like to make it easy for people to inject scripts into the template after their posts. It seems like this and being able to add a comments link to blog index pages should take care of it. What do you think @ludwick?
Something pluggable would be great. When I first commented I was on a mental track of "it sure would be nice to get just the basics out!"
I'll see if I can work something out. I played with genesis-theme enough that I ended up deciding to fork (and rename) it to make a theme of my own which gives incentive to come up with a slightly more generic way of doing it.
Okay, step 1: factor out into octopress ink plugin.
https://github.com/ludwick/octopress-basic-comments
Configuration goes in one's website repo at _plugins/octopress-basic-comments/config.yml with the convention. Right now the template has to include the specific comment plugin (example) but that seems easily fixable.
Feel free to comment on anything. While I know ruby pretty well now for work-internal stuff, jekyll, gem packaging, exactly how ink work, etc. are pretty new to me as with octopress 2 I didn't really (need to) dig into how any of it worked.
I've added support for Disqus and Facebook commenting systems by integrating the octopress-social plugin. Configure that plugin and set comments: disqus
or comments: facebook
in your _plugins/theme/config.yml
and posts will have comments in their footer.
With the goal of getting octopress 3 at an MVP state, are you interested in simple disqus support in the theme itself? I know it's not ideal, but better hard-coded in the example theme than in the framework itself, and at some point someone can figure out the right abstraction to make it pluggable. Basically, I just pulled what was in octopress 2 in: https://github.com/ludwick/genesis-theme/commit/96ff6c642477c5e98f363a5c043567a8fee6d87c