You want the comment style to be different for comments added by the author of a node — who's commenting on his own node. For example, you may want to highlight the node's author's comments, so that any visitor skimming through the comments will easily differentiate them from other comments.
Edit comment.tpl.php to add a new class (let's say 'comment-by-author-of-post') that...
you can style in your theme's style.css.
Your file comment.tpl.php may look like this before the edit (I am only providing a snippet of the template here):
<div class="comment<?php print ($comment->new) ? ' comment-new' : ''; print ' '. $status ?> clear-block">
If it does, then you will change the above snippet to that:
<div class="comment<?php print ($comment->new) ? ' comment-new' : ''; print ($comment->uid == $node->uid) ? ' comment-by-author-of-post' : ''; print ' '. $status ?> clear-block">
You could now add these two rules to your style.css file, for example:
/** * Comment styling rules */ .comment-by-author-of-post { border: 1px solid #ccc; background-color: #eee; } /* reset to default values when previewing */ .preview .comment-by-author-of-post { border: none; background-color: transparent; }
This will work in Drupal 5 as well. No, it won't. The $node object is not passed to the comment.tpl.php template. Read the comments below for the Drupal 5 recipe. This solution works only for PHPTemplate-powered themes. If your theme does not provide a template file for comments, copy the one from modules/comment/ to your theme folder, and edit it. And yes, the $node object is available in comment.tpl.php. It is the node the comment is attached to. Possible variations: special-style all comments authored by those who have the 'admin' role; special-style anonymously-submitted comments; etc.
Comments
Drupal 5?
I am sorry, but this one seems not working with Drupal 5? The snippets from the template for Drupal 5 is supposed to be this one:
In Drupal 5, no $node object in comment.tpl.php
What you do have is the nid of the node the comment is attached to.
So what you need to do is pass the node's author uid, along to comment.tpl.php.
Something like this needs to be done in the file template.php of your theme:
Then you can use $node_uid in comment.tpl.php — that'll be the uid of the node author.
<div class="comment<?php if ($comment->status == COMMENT_NOT_PUBLISHED) print ' comment-unpublished'; print ($comment->new) ? ' comment-new' : ''; print ($comment->uid == $node_uid) ? ' comment-by-author-of-post' : ''; print ' '. $status; ?>">
Just one author?
Just one blogger on your web site? Do not bother with checking who is the author of the node. Do not bother with passing an additional variable to your comment template.
In the case where you have only one blogger... you could do as I do here (and yes, my web site still runs on Drupal 5...). Using a hard-coded value for the author of the node, eg: 1 (the Administrator of the site):
<div class="comment<?php print ($comment->uid == 1) ? ' comment-by-author-of-post' : ''; print ($comment->new) ? ' comment-new' : ''; print ($comment->status == COMMENT_NOT_PUBLISHED) ? ' comment-unpublished' : ''; print ' '. $zebra; ?>">
Thanks
Sorry for my noobness, but thanks! It works wonderfully on my site. Thanks, once again.
It was my mistake
It was my mistake.
I corrected my 'tutorial', and I am now saying:
Thanks to you!
Thanks for the confirmation
Thanks for the confirmation - had to come back to tell you it didn't work... but of course now it does!
Want to know more
I have a little bit knowledge about drupal 5.So I have faced so many problem like you.I want to get more information about it.Help me please..:)
Ah. Thanks for the good
Ah. Thanks for the good info. I saw this happening on some websites, but didn't know how to implement it. Thanks Caroline!
Drupal 5
Thanks for the comments on Drupal 5. I was having trouble. Now I know why.
Good Info
Good Info, thanks
Nice write up
Nice write up
Which Drupal version does this work for?
Hi guys,
Just reading the comments, what version of Drupal does the above example work for? I read issues with Drupal 5 so does this mean its a Drupal 6 solution? Or is it Druapl 4?
I'm looking for the Drupal 6 solution.
Cheers,
Gavin.
PS: What WSYIWIG are you using with Drupal?
Hi Gavin
Drupal 6.
None. I use BUEditor. It's not WSYIWIG per say, although it's an editor and has a really nice ajaxified preview button. I loooove it: http://drupal.org/project/bueditor.
Ah, finally. I was wondering
Ah, finally. I was wondering why I was having trouble.
Off to implement this code...
this works
This works rally well, and I think it is crucial to the comments on a blog to be able to distinguish this. thanks
I would agree that this is
I would agree that this is an awesome fix to a problem I've been having for almost a month! Thank you for the insight.. Going to change it right now.
Thank you so much for the
Thank you so much for the information
Thanks
Thanks! Good info!
good tutorial
admin,
I think I will update my site following your tutorial.
Hope it is easy like you explained it because I'm a beginner.
Page bookmarked.
it works
thanx for your information
it works
nice article
Great information
As a noob and has no knowledge in php programming, this infomation can greatly teach me on how to do hard things easy.
Theme coding for authors/admins
Edited the comment.tpl.php and added the two rules to the css file and it worked like a charm. Thanks Caroline, for providing the code, I was spending a lot of time searching Google and couldn't find anything on how to change the admin highlighting style to distinguish them from regular users until I found this post.
- Brian
I looked all over google for
I looked all over google for it!! Thanks for the info..pfff! :)
What about the CAPTCHA
How did you create this unique CAPTCHA? Are you using any commercial extension?
comment style
That comment style tip is very helpful, thank you!
Thanks. Although I'm not a
Thanks. Although I'm not a big fan of Drupal (i'm a .net developer) I have a new client that wants a website developed with drupal and I'm still trying to learn it :)
Thanks for the good info. I
Thanks for the good info. I saw this happening on some websites, but didn't know how to implement it
Good idea and detailed instructions!
It would be prudent to synchronize and back-up all your hard work with a service that provides online backup.
Thank you.
I was stuck in the middle
I was stuck in the middle while trying it in my Joomla 1.5 site. The border is solid here but by default I have a nice border from the template maker though the solid code didn't worked as I applied that.
nice post.
Will try to use this today and see how it goes..
That was new blog i never
That was new blog i never thought of that. Many interesting blog that you brought to us is about the a centering point of component parts of the author which bring me for applying it i needed. So for now i say it is good and all i wanted to know from your blog the answer of my question.
Simply wish to say thanks.
Simply wish to say your article is as astonishing. The clarity in your post is just cool and i could assume you are an expert on this subject. Well with your permission allow me to grab your feed to keep up to date with forthcoming post. Thanks a million and please keep up the gratifying work.