1

I'm trying to find how to edit format of bbp_forum_freshness_link() function in bbpress plugin. E.g. currently it displays how many days ago there was last activity and I would like to display date. So if someone would like to share some thoughts or code snippets, that would be great.

2

I cannot test it right now, but it should work like this:

add_filter( 'bbp_get_forum_freshness_link', 'wpse_77441_change_time_format', 10, 2 );

function wpse_77441_change_time_format( $anchor, $forum_id )
{
    $last_active = get_post_meta( $forum_id, '_bbp_last_active_time', true );

    if ( empty( $last_active ) ) {
        $reply_id = bbp_get_forum_last_reply_id( $forum_id );

        if ( !empty( $reply_id ) ) {
            $last_active = get_post_field( 'post_date', $reply_id );
        } else {
            $topic_id = bbp_get_forum_last_topic_id( $forum_id );

            if ( !empty( $topic_id ) ) {
                $last_active = bbp_get_topic_last_active_time( $topic_id );
            }
        }
    }

    $date       = bbp_convert_date( $last_active );
    $time_since = bbp_get_forum_last_active_time( $forum_id );

    return str_replace( "$time_since</a>", "$date</a>", $anchor );
}
0
function wpse_77441_change_time_format( $anchor, $forum_id )
{
    $last_active = get_post_meta( $forum_id, '_bbp_last_active_time', true );

    if ( empty( $last_active ) ) {
        $reply_id = bbp_get_forum_last_reply_id( $forum_id );

        if ( !empty( $reply_id ) ) {
            $last_active = get_post_field( 'post_date', $reply_id );
        } else {
            $topic_id = bbp_get_forum_last_topic_id( $forum_id );

            if ( !empty( $topic_id ) ) {
                $last_active = bbp_get_topic_last_active_time( $topic_id );
            }
        }
    }

      $date   = get_post_time( get_option( 'date_format' ), $gmt, $reply_id, true );
      $time   = get_post_time( get_option( 'time_format' ), $gmt, $reply_id, true );
      $dt = sprintf( _x( '%1$s at %2$s', 'date at time', 'bbpress' ), $date, $time );    

    $time_since = bbp_get_forum_last_active_time( $forum_id );


    return str_replace( "$time_since</a>", "$dt</a>", $anchor );
}
add_filter( 'bbp_get_forum_freshness_link', 'wpse_77441_change_time_format', 10, 2 );
  • 1
    First, please use the WYSIWYG buttons to format your post. Second, please explain why this is actually helpful. – kaiser Oct 10 '13 at 15:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.