Today, I had the fun task of changing the way that the “Freshness” dates display in BuddyPress forums. The idea behind “Freshness” is that there is an easy-to-read way to let people know when the forum topic was last updated. By default, it displays something like, “1 week, 5 days, 3 hours”, and I wanted to change that to say, “Sept. 18, 2012”.
The BuddyPress function that is used to make the “Freshness” call is bp_the_topic_time_since_last_post(). Unfortunately for me, this function is hard-wired to echo the value, which means that I cannot use PHP’s strtotime() function to manipulate the date format.
My solution was to find the core code for the bp_the_topic_time_since_last_post() function and rewrite it into my theme like so:
global $forum_template;
echo date ('M d, Y', strtotime($forum_template->topic->topic_time));
In the process of figuring this out, I also discovered the bp_the_topic_time_since_created() and human_time_diff() functions.
Pretty neat!
(Thanks to Mark for helping me troubleshoot this!)
Additional human_time_diff() links:
http://tollmanz.github.com/theres-a-function-for-that/#1
http://wordpress.tv/2012/09/02/zack-tollman-theres-a-function-for-that-more-for-less-with-core-functions/
More posts from themightymo.com
How to Connect a GoDaddy Site to ManageWP
GoDaddy owns ManageWP, and, strangely, they make it very difficult to add GoDaddy-managed WordPress sites to their ManageWP service. Thankfully, there’s a quick workaround: Visit https://yoursite.com/wp-admin/plugins.php?showWorker=1 — This will make the ManageWP “Worker” plugin visible. Copy the connection info from the ManageWP Worker plugin. Add the site per-normal on ManageWP. That’s it! I hope this…
How to check if your current page is the wp-login.php page
I realized this morning that my TMM Maintenance Mode WordPress plugin had a bug that was causing the wp-login.php page to be inaccessible. The solution was to write a simple function that checks whether or not we’re currently on a login page, and then add a call to that function in my code. Here’s the…
WooCommerce Product Image Gallery Not Loading with WP Rocket Active
Today I updated a WooCommerce site, and everything worked fine, except for the images on product pages – they were not displaying at all. After a lot of trial & error, I realized that WP Rocket was to blame. I’m not sure exactly what the issue was (though my hunch is that it had to…