在本教程中,我們將嘗試過濾 bbPress 論壇和主題新鮮度鏈接,以顯示我們之後的內容。

使用過濾器之前

應用過濾器後
在上面的屏幕截圖中,我想要實現的只是刪除多個時間差數量,並且只有一個,比如説 2 個月,1 小時,2 分鐘,1 秒前,我們只是説 2 個月前。 在過濾器中,刪除第一個找到的逗號 (,) 之後的新鮮度鏈接文本部分:
// add the following code to your child theme's functions file
add_filter('bbp_get_forum_freshness_link', 'my_filters_for_freshness_link');
add_filter('bbp_get_topic_freshness_link', 'my_filters_for_freshness_link');
function my_filters_for_freshness_link($anchor) {
$return = strpos($anchor, ',') ? substr($anchor, 0, strpos($anchor, ",")) . ' ago' : false;
$return .= strpos($return, 'a href') ? '' : '';
return $return ? $return : $anchor;
}
您還可以顯示其他內容,因為我們可以獲取論壇或主題 ID,我們可以獲取發佈時間和日期,並顯示簡單的日期而不是時間差等。
add_filter('bbp_get_forum_freshness_link', 'my_filters_for_freshness_link', 10, 2);
add_filter('bbp_get_topic_freshness_link', 'my_filters_for_freshness_link', 10, 2);
function my_filters_for_freshness_link($anchor, $post_id) {
$post_date = get_post( $post_id )->post_date;
return $post_date;
}