WordPress.org

Support

Support » How-To and Troubleshooting » Can only leave comment on newest post

Can only leave comment on newest post

  • My blog:
    http://shuttabugs.com/

    It seems that viewers can only leave a comment on my most recent post and ONLY when on my main page and can’t comment at all on my older posts because there is no link to do so.

    Can someone help? I have searched for hours through the support archives and nothing has helped.

    I have everything checked that should be…My options to allow comments have always been checked. I have posts that were commented on when it was my most recent post at that time, but you can’t see them once I post more posts.

    I am confused!

Viewing 8 replies - 1 through 8 (of 8 total)
  • I’m going to guess that you don’t have the link to the comment form (or popup) on your Single Post template. Check that to make sure it’s there, just like it’s there on your Main Index Template.

    Where would I find the Single Post template? Is it the same as the single.php in the WP_content>Themes>Default folder???

    That’s it. You can also get to it through your WordPress admin (Presentation >> Theme Editor >> Single Post).

    It’s not working…nothing happens. Here is the code that I think is effecting the comments. Can someone make sense of this???

    <?php comments_rss_link(‘RSS 2.0’); ?> feed.

    <?php if ((‘open’ == $post-> comment_status) && (‘open’ == $post->ping_status)) {
    // Both Comments and Pings are open ?>
    You can leave a response, or ” rel=”trackback”>trackback from your own site.

    <?php } elseif (!(‘open’ == $post-> comment_status) && (‘open’ == $post->ping_status)) {
    // Only Pings are Open ?>
    Responses are currently closed, but you can ” rel=”trackback”>trackback from your own site.

    <?php } elseif ((‘open’ == $post-> comment_status) && !(‘open’ == $post->ping_status)) {
    // Comments are open, Pings are not ?>
    You can skip to the end and leave a response. Pinging is currently not allowed.

    <?php } elseif (!(‘open’ == $post-> comment_status) && !(‘open’ == $post->ping_status)) {
    // Neither Comments, nor Pings are open ?>
    Both comments and pings are currently closed.

    <?php } edit_post_link(‘Edit this entry.’,”,”); ?>

    </small>
    </p>

    </div>
    </div>

    <?php comments_template(); ?>

    The thing is that you are NOT using the default theme – you are using a very special photoblog theme.
    What you posted above is from default not from your theme.

    You need this line in the single.php of your theme (if there is one):
    <?php comments_popup_link(__('Comments (0)'), __('Comments (1)'), __('Comments (%)')); ?

    That’s the problem…there is NOT a single.php under my specific theme. I created a new file titled single.php and copied everything in my index.php file and put it in the single.php file and that did not do anything either.

    Here are the files I have (before I added the single.php)
    archive.php
    archives.php
    comment-functions.php
    comments-popup.php
    comments.php
    footer.php
    header.php
    index.php
    page.php
    screenshot.png
    style.css

    I should add that I have this very line of code in my index.php, which from what I understand, if you do not have a single.php, then your index.php acts AS the single.php and should control all the pages and not just the main page. Here is my index.php code..maybe you can see the error in it? I have tried every suggestion and come up with nothing that works.

    <?php get_header(); ?>
    <!– begin post –>
    <?php if (! empty($display_stats) ) { get_stats(1); echo “
    “; } else if (($posts & empty($display_stats)) ) : foreach ($posts as $post) : start_wp(); ?> <div class=”entry”>

    <?php global $post, $tableposts;
    $previous = @$wpdb->get_var(“SELECT ID FROM $tableposts WHERE post_date < ‘$post->post_date’ AND post_status = ‘publish’ ORDER BY post_date DESC LIMIT 0, 1”);
    if ($previous) {
    $link = get_permalink($previous);
    echo ‘‘ . $post->post_content . ‘
    ‘;
    } else {
    the_content(‘[More Photos]’);
    } ?>

    </div>

    <div class=”posted”>» <?php the_title(); ?> / ” title=”Permalink”><?php the_time(‘M j, \’y’) ?> / <?php the_category(‘, ‘); ?> / <?php comments_popup_link(__(‘Comments (0)’), __(‘Comments (1)’), __(‘Comments (%)’)); ?> <?php previous_post(‘%’, ‘/ Previous’, ‘no’); ?> <?php next_post(‘%’, ‘/ Next’, ‘no’); ?> <?php edit_post_link(‘/ edit’,'<span class=”editlink”>’,'</span>’); ?>

    </div>

    <!– <?php trackback_rdf(); ?> –>

    <?php endforeach; else: ?>
    <p><b> <h2 class=”center”>Page not found</h2> </b></p>

    <?php endif; ?>

    <!– end post –>

    <div class=”entrycat”>
    <?php $arc_query = new WP_Query(‘orderby=post_date&order=DESC&showposts=5’); ?> <?php while ($arc_query->have_posts()) : $arc_query->the_post(); ?> ” title=”<?php the_title(); ?>”><?php echo $post->post_excerpt; ?>

    <?php endwhile; ?>

    </div>

    <?php get_footer(); ?>

    comment-functions.php
    That’s not a standard WP template file. You’ll need to ask the theme author.

    EDIT. I just noticed you had another post that was “spammed” by Akismet, restored.
    And it seems it is a custom Loop, so you have to figure out how it works.

Viewing 8 replies - 1 through 8 (of 8 total)
  • The topic ‘Can only leave comment on newest post’ is closed to new replies.