Announcing Tinythread threaded discussion plugin for WordPress

** Note ** : The Tinythread plugin is no longer being developed. The version(s) available for download are AS IS – I will no longer provide support for them.

The Tinythread plugin is available for adoption. If you would like to take over development of Tinythread, please email me.

Tinythread is a threaded discussion plugin for WordPress. It is based largely on Brians threaded comments and dodos threaded comments hack.

Features

  • Elegant, easy-to-use discussion interface.
  • Minimal Javascript – no thread collapsing, nesting or the like. Just straightforward threaded comments.
  • Doesn't alter WordPress database tables – uses the "comment_parent" field available in more recent versions of WordPress.
  • Relatively easy to install.
  • Integrates with the WordPress gravatar plugin.
  • "Wandering forms" – forms that appear when you click on "reply" links, sort of like the forms found in Brians threaded comments.
  • Degrades gracefully – if you deactivate the plugin, comments still look decent.

To see a demonstration of Tinythread, take a look at any discussion on this blog. Feel free to post comments in this entry if you want to try it out.

Current version is 0.6.2.

Updates:

v. 0.6.2 (06-25-2006): The "I got a job, so development is slow" release. Patched code base to fix Akismet bug. Added "comment minimization" (after X replies in a thread, comments appear as links with just the date and a short teaser), configurable from the Options page.

Advisory (05-29-2006): After some testing, the current version of Tinythread does not appear to work with many human-verification anti-spam plugins. This includes captcha plugins, the Did You Pass Math> plugin, and possibly others. However, Tinythread works with Akismet.

v. 0.6.1 (05-23-2006): Various Javascript fixes and additions; added tt_delete_comment() to handle comment deletions and update comment_parent value on child comments.

v. 0.6 (05-22-06): Tinythread has undergone a minor code cleanup, and "view thread" and "parent comment" links have been added.

v. 0.5 (05-15-06): Tinythread has been updated to eliminate the need to replace comment-functions.php.

v. 0.4.1 (5-10-06): Tinythread has been updated to remove a few small errors. I've also added the ability to quote a comment in a reply.

The Tinythread plugin for WordPress may be downloaded here:

tar.gz: tinythread-0.6.1.tar.gz

zip: tinythread-0.6.1.zip

Be sure to read the instructions carefully before installing. Tinythread 0.6.1 is beta.

Quick Install Instructions

(I'm placing these here so you know what you're getting yourself into)

  1. Copy the tinythread folder to wp-content/plugins/.
  2. Backup wp-content/themes/your-current-theme/comments.php. Copy wp-content/pugins/tinythread/comments.php to your current theme folder.
  3. Go to your WordPress installation's plugin interface (wp-admin/plugins.php). Find Tinythread and click on "Activate."

You're set!

Manual Install

If you want to keep your current comments.php page, you'll need to follow these instructions. As different templates structure comments.php in different ways, your mileage may vary.

The implementation here is simple – on the HTML/CSS side, the comment section of comments.php needs to be enclosed in a DIV whose ID is "comments." On the PHP side, comments.php needs to use the tt_comments() function if it exists, and the standard comments_template() function if tt_comments() is nonexistent/deactivated.

  1. Copy the tinythread folder to wp-content/plugins.
  2. In your favorite text editor, open comments.php from your current theme.
  3. Look for:

    <?php if ($comments) : ?>


    replace it with:

    <div id="comments">
    <?php
    if (function_exists('tt_comments')) {
        if (
    $_GET['thread_id'] && $_GET['thread_id'] != '') {
            
    tt_comments($_GET['thread_id'],'thread');
        } elseif (
    $_GET['comment_id'] && $_GET['comment_id'] != ''){
            
    tt_comments($_GET['comment_id'],'single');
        } else {
            
    tt_comments();
        }
    } else {
           if (
    $comments) :
    ?>


  4. Find a section of comments.php that looks like this:

    <!-- If comments are closed. -->
            <p class="nocomments">Comments are closed.</p>
            
        <?php endif; ?>
    <?php 
    endif; ?>


    and alter it to look like this:

    <!-- If comments are closed. -->
            <p class="nocomments">Comments are closed.</p>
            
        <?php endif; ?>
    <?php 
    endif;
    // closing bracket for tinythread plugin
    ?>


  5. At the very end of comments.php, add:
  6. </div>

    Activate the plugin, and it should work.

37 Responses to “Announcing Tinythread threaded discussion plugin for WordPress”

  1. tin Says:

    Hi,

    My short question: Does it work also with the captcha plugin?

  2. Preston Says:

    I’m not sure if it works with the captcha plugin – I’ll look into it and let you know.

  3. Preston Says:

    tin wrote:

    Hi,
    My short question: Does it work also with the captcha plugin?

    I’ve tested the tinythread plugin against the captcha plugin, and it appears to work.

  4. WordPress Station » Blog Archive » Tinythread: threaded discussion plugin for WordPress Says:

    [...] Journalese [...]

  5. Preston Says:

    I’ve done some additional testing – the current version of tinythread (v.0.6.1) appears to fail with the captcha plugin. I’m looking into it.

  6. the quintessential enigma · xdForum and Threaded comments. Says:

    [...] Now this one has me perplexed. I am using xdForum and did have Tinythread on for a while. But it seemed like a waiste to have both on one hand and necessary on the other. [...]

  7. the quentissential enigma · xdForum and/or Threaded comments. Says:

    [...] Now this one has me perplexed. I am using xdForum and did have Tinythread on for a while. But it seemed like a waiste to have both on one hand and necessary on the other. [...]

  8. Thomas Lee Elifritz Says:

    Preston wrote:

    I’ve done some additional testing – the current version of tinythread (v.0.6.1) appears to fail with the captcha plugin. I’m looking into it.

    It also bonks the AJAX commenting hack, but otherwise it works well. People that implement AJAX commenting generally disable captcha anyways.

  9. Preston Says:

    Thanks for letting me know, Thomas – I’ll look into the AJAX commenting hack and see if I can’t make Tinythread play well with it. If you have any suggestions, I’m certainly open to them.

  10. Everton Blair Says:

    Hi

    Thanks for a great plugin. I installed it manually first time and I was shocked when the gravatar’s I couldn’t get to work also appeared – bonus!

    I need some help though please. I had a ‘Paged comments’ plugin working as well as the colours of each comment alternating. The relevant lines are still in my comments code which I’ve posted below, but I can’t work out how to include it within your loop. Could you take a quick look please?

    thanks

    Everton

    post_password)) { // if there's a password
            if ($_COOKIE['wp-postpass_' . COOKIEHASH] != $post->post_password) {  // and it doesn't match the cookie
                ?>
                
                This post is password protected. Enter the password to view comments.
                
                

    <!-- You can start editing here. -->

      var blogTool               = "WordPress";
      var blogURL                = "";
      var blogTitle              = "";
      var postURL                = "";
      var postTitle              = "";
      
          var commentAuthor          = "";
      
          var commentAuthorFieldName = "author";
      
      var commentAuthorLoggedIn  = ;
      var commentFormID          = "commentform";
      var commentTextFieldName   = "comment";
      var commentButtonName      = "submit";

     to &#8220;&#8221; 

    Place a <a>" rel="trackback"></a> to '' or 

    subscribe to comments with RSS</abbr>')); ?>.

         to &#8220;&#8221; 

    Place a <a>" rel="trackback"></a> to '' or 

    subscribe to comments with RSS</abbr>')); ?>.

        <!-- Comment page numbers -->
        pager->num_pages() > 1): ?>
         
        
        <!-- End comment page numbers -->

        

        

            " id="comment-">

                
                

                    Comment by  
                

                comment_approved == '0') : ?>
                <em>Your comment is awaiting moderation.</em>
                
                
    <i>
                on  at 
    </i>

                

            

        

        

        

    <!-- Comment page numbers -->
    pager->num_pages() > 1): ?>
     

    <!-- End comment page numbers -->

     

      comment_status) : ?> 
            <!-- If comments are open, but there are no comments. -->

    Place a <a>" rel="trackback"></a> to '' or

    subscribe to comments with RSS</abbr>')); ?>.

            
         
            
            Comments are closed.
            
        

    comment_status) : ?>

    Leave a Reply

    You must be <a>/wp-login.php?redirect_to=">logged in</a> to post a comment.

    /wp-comments-post.php" method="post" id="commentform">

    Logged in as <a>/wp-admin/profile.php"></a><a>/wp-login.php?action=logout" title="Log out of this account">Log off?</a>

    " size="22" tabindex="1" />
    Name 

    " size="22" tabindex="2" />
    Mail (will not be published) 

    " size="22" tabindex="3" />
    Website

    <!--<strong>XHTML:</strong> You can use these tags: -->

    " />

    ID); ?>

  11. Preston Says:

    Hi Everton -

    Thanks for your kind comments, and for sharing your problem with me. The tinythread plugin is going through numerous (slow) revisions at the moment, most of which are aimed at making it play well with other popular plugins. I’ll take a look at the code you have here and see if I can figure something out. Also, if you have the exact names/URLs of those plugins, I’d greatly appreciate them. Thanks again.

  12. Everton Blair Says:

    Hi

    The plugins are:

    paged commments and Live comment preview

    Thanks for agreeing to have a look.

    Everton

  13. Everton Blair Says:

    Hi

    I’ve just spotted another bug. It displays spam comments automatically even if Akismet has put them in the ‘spam folder’ to be approved.

    regards

    everton

  14. Preston Says:

    Hmm – that hasn’t happened to me for some reason, and I get tons of spam comments. I’ll look into it.

  15. Preston Says:

    Hey Everton -

    Just wanted to let you know that the Akismet bug appears to be a relatively easy fix. I’m including the fix in the next release of Tinythread – it should be out Sunday or Monday.

  16. Everton Blair Says:

    great thanks.

    I’m trying to crack the alternating colours and paging right now, but not having much joy as I’ve never edited a plugin b4.

    EB

  17. Preston Says:

    Hi Everton,

    Just wanted to let you know that a new version of tinythread is out, with the Akismet fix. Sorry it took awhile – work has been crazy.

  18. links for 2006-07-01 — 7 seconden — Cuiusvis hominis est errare Says:

    [...] Announcing Tinythread threaded discussion plugin for WordPress « Journalese Reageren op reacties. Het wordt alleen maar duidelijker . (tags: wordpress plugin) [...]

  19. Joe Says:

    2nd nesting testing

  20. TokBlog » An unsere Stammleser Says:

    [...] Für alle WordPress-Betreiber, die ebenso wie ich nach dieser Funktion gesucht haben, moechte ich hier zwei Loesungswege vorstellen. Zum einen koenntet ihr das Plugin Edit Comments ausprobieren. Das hat jedoch ein paar Nachteile. Man kann einen Kommentar nur innerhalb einer bestimmten Zeitspanne editieren und die Zugriffspruefung erfolgt recht unsicher ueber die IP. Wahrscheinlich wuerde es sich auch mit Tinythread nicht so einfach vertragen, aber ausprobiert habe ich es nicht. [...]

  21. dghf Says:

    dfgdfgd

  22. Andy Says:

    I’ve just installed and got 0.6.2 working – sadly with a lot of hacking to get it to look how I wanted it(!)

    I have two small problems:
    (1) I hold comments in moderation for first time commenters. If on the moderation page I delete a comment iget the following error:

    WordPress database error: []
    UPDATE wp_comments SET comment_parent = ” WHERE comment_ID = ’4′

    I have no idea where the ’4′ is coming from by the way.

    (2) I also have comments appearing directly if de-spammed in Akismet instead of going to moderation.

    I will take a look at the delete code to see I can fathom the problem.

    Otherwise – it’s great. Although it would be nice if we could work towards a single copy of the comment form…

  23. Andy Says:

    As far as I can work out you are using the ‘comments’ object and mine is empty. Comment_id is passed as a parameter to the ‘delete_comment’ hook. This fails every time for me but always, weirdly, with a ’4′…

  24. Dennis Says:

    What I want to do on my blog, is every few hours take the oldest post and move it to the
    front of the queue, all automatically. Anyone know if there is a plugin that can do this or
    a simple way to set up another plugin to do this (use my own feed perhaps)?
    Thanks.

  25. fgd Says:

    dfg

  26. fgd Says:

    /home/space/public_html/wordpress/wp-content/plugins/tinythread-current/comments.php

  27. fgd Says:

    ertertert

  28. fgd Says:

    ghhh

  29. new test Says:

    Hello this is a test

  30. Preston Says:

    test comment.

  31. Preston Says:

    test reply.

  32. Dennis Says:

    same for me, tesing

  33. Dennis Says:

    yeah, testing

  34. Dennis Says:

    one more

  35. Blogs Says:

    Where can I find the current version?

    Thanks!
    John

  36. Preston Says:

    Hi Sue,

    Did you use the comments.php file provided with Tinythread, or did you alter your theme’s comments.php file?

  37. Wayde Christie Says:

    Testing…

Leave a Reply

You must be logged in to post a comment.

@ somniloquy.org

, , , , , , , ,