B2 主題帶了一個【作者面板】小工具,可以在外觀 – 小工具界面,添加到包含“內(nèi)頁”字樣的小工具區(qū)域:

然后在前端側(cè)邊欄就會顯示出來:

如果你點擊上面的【Ta的全部動態(tài)】就可以看到關于該作者發(fā)布的最新消息,默認包含'文章post','圈子circle','文檔document','快訊newsflashes'四種文章類型的動態(tài),如果你需要新增或刪除某些文章類型,那就是我們這個教程的用意了。
查看B2主題的 b2/Pages/tastream.php 文件,我們可以看到預留了一個鉤子 b2_stream_author_post_type,代碼片段如下:
$args = array(
'post_type'=>apply_filters('b2_stream_author_post_type', array(
'post','circle','document','newsflashes'
)),
'posts_per_page' => $count,
'orderby' => 'modified',
'offset'=>$offset,
'author'=>$author_id,
'post_status'=>'publish',
'include_children' => true,
'paged'=>$paged
);
所以,我們通過鉤子就可以修改了,具體的代碼片段如下,可添加到子主題的 functions.php 中:
/*
* 修改作者動態(tài)的文章類型
* http://www.ydqwiac.cn/docs/b2/b2-dev/stream-author-post-type
*/
function b2child_stream_author_post_type( $post_types ) {
$post_types = array('post','circle','document','newsflashes','shop');
return $post_types;
}
add_filter('b2_stream_author_post_type', 'b2child_stream_author_post_type' );
注意看代碼的第7行的數(shù)組array()的值,就是你希望顯示的文章類型數(shù)組,在上面的的樣例中,我們添加了【商品shop】這個類型。
如果你要查看文章類型的值,可以在后臺點擊對應文章類型導航菜單下的第一個子菜單,比如頁面-全部頁面,就可以在網(wǎng)址中看到 /wp-admin/edit.php?post_type=page,其中 post_type= 后面的值,就是文章類型的值了,比如頁面就是 page。
2023年11月9日補充:
注意,以上代碼只會影響【Ta的全部動態(tài)】頁面的文章類型,下圖的【作者小工具】顯示的文章類型不會改變,因為這個小工具沒有添加鉤子。

解決辦法就是我們要添加鉤子給它,在 b2/Modules/Templates/Widgets/Author.php 文件的 166 行左右的位置,有設置文章類型的代碼:
'post_type'=>array('post','circle','document','newsflashes','shop'),
將上面的代碼替換為下面的,保存即可:
'post_type'=>apply_filters('b2_stream_author_post_type', array('post','circle','document','newsflashes','shop')),
注:該問題已經(jīng)反饋給春哥,以后版本應該會添加,如果你編輯的時候,發(fā)現(xiàn)已經(jīng)有上面這行代碼了,就不需要編輯了。




這個地方的怎么修改呢?
這個教程說的就是改這個地方的文章類型的呀,你只能改這個地方調(diào)用該作者哪些文章類型的內(nèi)容
好的,謝謝