Info
- 20 posts
- 9 voices
- Started 4 years ago by Inquirer
- Latest reply from answerthink
- This topic is resolved
How do you change the Freshness of post date format?
-
- Posted 4 years ago #
What is the code to change the Freshness of post format to the Date - Hours - Minutes ?
-
- Posted 4 years ago #
http://uk3.php.net/manual/en/function.date.php
Don't have access to the code right now so not sure where in bbPress you need to edit.
-
- Posted 4 years ago #
Remember that the date will be relative to worldwide visitors unless you list the timezone (which will be meaningless to people far outside the timezone).
What I do on some code is list the freshness in plain english but make the title of the element the original time.
ie.
<span class=timetitle title="<?php echo date("r",strtotime($topic->topic_time)); ?>"><?php topic_time(); ?></span>Then when you mouse over the "3 days ago" it will show you the original time (in mysql format which can be changed). Then use CSS to make a light underline so the user knows it has some kind of function.
-
- Posted 4 years ago #
Hi ck:
[Remember that the date will be relative to worldwide visitors unless you list the timezone (which will be meaningless to people far outside the timezone).]
The time isn't of concern. I would like it to initialize to my time zone of U.S Central.
Actually, I prefer to display the date format you have implemented in the the mouseover without implementing a mouseover rather than the current number of days format.
What would be the code and which file is it located?
Thank you for your response to my inquiry.
-
- Posted 4 years ago #
The following code is in the front-page.php file
<th><?php _e('Freshness'); ?></th>
What file contains the code to change the Freshness of post format from the default of Days to the Date - Hours - Minutes ?
-
- Posted 4 years ago #
That php _e('Freshness') just echoes the table header. A couple lines beneath that you will find the call to the function that provides the time elapsed (i.e. the Freshness):
<?php topic_time(); ?>Instead of that topic_time, you could just insert the code like _ck_ has shown, modified a little bit, so instead of this in your template files:
<?php topic_time(); ?>use this:
<?php echo date("date format here", strtotime($topic->topic_time)); ?>where date format here is some combination of characters from here: http://www.php.net/date
For example:
<?php echo date("D M j Y G:i:s", strtotime($topic->topic_time)); ?>
prints like Sun Aug 19 2007 1:53:54 right now, but it would be based on the topic time of the post in your case.You would need to look at these files, at least, in your template directory:
./favorites.php
./forum.php
./front-page.php
./tag-single.php
./view.phpIt's safe to modify your own template files. You're not modifying the core bbPress files. But maybe this would be better as a plugin, I'm not sure.
Good luck.
-
- Posted 4 years ago #
Hi chrishajer:
I moved the files you listed to my-templates folder then edited using the code
<?php echo date("D M j Y G:i:s", strtotime($topic->topic_time)); ?>
I FTPed the files to my server.
The new date time format appears to be working.
Thanks.
-
- Posted 4 years ago #
I believe you can do this...
<?php topic_time('D M j Y G:i:s'); ?>But I've never tried it.
-
- Posted 3 years ago #
bump
Sam's code works but still it displays the time in GMT rather than in my timezone. That doesn't seem right cause it display the proper time since. How do I get that correctly?
(same thing with _ck_'s code - off the time zone and into GMT)EDIT:
looking through some bbPress code I think I've got it right at last! The time has to be filtered through bb_offset_time, so the code should be(for post times):
echo date("date-format-goes-here", bb_offset_time(strtotime($bb_post->post_time)));Still wonder why isn't the time filtered when using sam's code...
EDIT again:
and it does not localize - the date is in English... wonder how to set that up?
-
- Posted 2 years ago #
I like ck's method of displaying the dates and I tried applying her code to the front-page.php file. But when I change the code under '$super_stickies' and '$topics' from
<td class="num"><a href="<?php topic_last_post_link(); ?>"><?php topic_time(); ?></a></td>to
<td class="num"><a href="<?php topic_last_post_link(); ?>"><span class=timetitle title="<?php echo date("r",strtotime($topic->topic_time)); ?>"><?php topic_time(); ?></span></a></td>There is no change.
If I change it to
<td class="num"><a href="<?php topic_last_post_link(); ?>"><?php echo date("r",strtotime($topic->topic_time)); ?>"></a></td>I get a properly formatted time description. But I can't get the title to work. What am i doing wrong?
-
- Posted 2 years ago #
Bump
-
- Posted 2 years ago #
You don't have title anywhere in there.
And I don't understand what you are trying to do.
Do you want the regular text to read the "days ago" part or the title to hold it? -
- Posted 2 years ago #
<td class="num"><a href="<?php topic_last_post_link(); ?>"><span class=timetitle title="<?php echo date("r",strtotime($topic->topic_time)); ?>"><?php topic_time(); ?></span></a></td>I was referring to the title in this line.
And I'm trying to implement the code you gave above.
I want the regular text to read the freshness and the title to hold the exact date. -
- Posted 2 years ago #
Based on what you showed me that is working, mine should work fine.
Here is a simplified version:<td class="num"><a href="<?php topic_last_post_link(); ?>" title="<?php echo date("r",strtotime($topic->topic_time)); ?>"><?php topic_time(); ?></a></td>I think the problem with the old example is I used a php shortcode (
<?) instead of the full<?phpand some servers have a problem with it, maybe yours. I've now edited all examples on this page to use the full<?phpto prevent confusion by future viewers. -
- Posted 2 years ago #
I don't think it's a problem using <? as I was able to change it to a timestamp format with that.
I tried the simplified code, still the same problem. Only the regular freshness, no title.
-
- Posted 2 years ago #
Just to be certain, you understand how titles work right? You mouse over it to see it.
Maybe try doing a "view source" to make sure it's there.
You've already proved that the code will output the date, all we've done is just move it into the hidden, mouse-over title.Show me the view source part just for what it outputs.
-
- Posted 2 years ago #
Great, I misunderstood how it works. When you said mouse over, I thought the text should change to show the date. Sorry, for the misunderstanding. Thanks again.
-
- Posted 2 years ago #
Thanks for this, _ck_, dragunoff and all!
-
- Posted 1 year ago #
I installed _ck_'s Forum Last Poster plugin to show FRESHNESS for my forums, but I am trying to convert it to the exact time/date.
I have tried various permutations with no luck.
The following code doesn't work:
<td class="num"><?php forum_time("D M j, Y"); ?></td>The following code just gives a static date of Wed Dec 31, 1969:
<td class="num"><?php echo date("D M j, Y", bb_offset_time(strtotime($bb_forum->forum_time))); ?></td>Any ideas how I can do this?
Thanks.
-
- Posted 1 year ago #
To expand a bit on my above post...
1. This gives me the correct time in topic.php: <?php topic_time("D M j, Y g:i a"); ?>
2. This gives me the wrong time (+4hrs) in post.php: <?php echo date("D M j, Y g:i a", (strtotime($bb_post->post_time))); ?>
3. This gives me a static date of Wed Dec 31, 1969 in front page.php: <td class="num"><?php echo date("D M j, Y", bb_offset_time(strtotime($bb_forum->forum_time))); ?></td>
If anybody knows how I can correct the final two, I would be grateful.
Thanks.
-
You must log in to post.