Forums

Admin Comments: Different CSS (7 posts)

  1. stumpcrash
    Member
    Posted 5 months ago #

    http://www.stumpcrash.com

    I want to reply to my visitors who comment on my blog and I want the comment structure (or the style) to be different when I'm logged in and I reply.

    How do I do so?

  2. Kafkaesqui
    Moderator
    Posted 5 months ago #

    You can define a class (let's say 'comment-admin') you can style in your theme's style.css. In the comments loop (of your comments.php):

    <?php
    $comment_class = (1 == $comment->user_id) ? 'comment-admin' : 'comment';
    ?>

    Make sure to change the 1 to the user ID of your login if different. Then where you want to insert the class (for example we'll use a div, but it can be any element you plan to modify):

    <div class="<?php echo $comment_class; ?>">

  3. stumpcrash
    Member
    Posted 5 months ago #

    <div class="<?php echo $comment_class; ?>">

    Where will I place this?

    In the loop?

  4. Kafkaesqui
    Moderator
    Posted 5 months ago #

    As I note it is an example. You would want to echo $comment_class as a value for 'class' on whatever HTML element you need to affect. This can be a div, and span, a paragraph (<p>) tag. Whatever.

    But yes, it would certainly be in the comments loop of your comments template.

  5. Thomas-DK
    Member
    Posted 4 months ago #

    Why not keep it even more simple :)

    <div class="author-id-<?php echo $comment->user_id; ?>">

    And then just style .author-id-1

  6. natalie
    Member
    Posted 3 weeks ago #

    I came across this thread in a search for something else, but I have a solution for anyone who has multiple blog authors.

    This will allow you to set the class for a comment based on who wrote a post instead of just the blog owner:

    Different Content for Different Authors

  7. wyldwolf
    Member
    Posted 2 weeks ago #

    I'm using the following:

    <?php// Comment loop
    if ($comments):
    	foreach ($comments as $comment):
    	// Test if Comment Author == Post Author
    		if ($comment->user_id == $post->post_author):
    			$CommentAuthorIsPostAuthor = True;
    		else:
    			$CommentAuthorIsPostAuthor = False;
    		endif;
    
    	// NoFollow sucks, we need an "alt" tag
    		$AuthorName = $comment->comment_author;
    		$AuthorURL = $comment->comment_author_url;
    		if ( ($AuthorURL == '') || ($AuthorURL == 'http://') ):
    			$AuthorData = "Comment by $AuthorName";
    		else:
    			$AuthorData = "Comment by <a href='$AuthorURL' alt='URL for comment author $AuthorName'>$AuthorName</a>";
    		endif;
    ?>

    So this chunk of code does the following:

    1. Identify the author based on user id. This means you will only be identified as the author if are actually logged in. (keeping email high-jackers from being identified as the author erroneously).
    2. Allow for custom comment author links. In my case I'm adding an "alt" tag, and removing the "rel" tag.

    Kevin

Reply

You must log in to post.

About this Topic