WordPress 作者存檔頁面顯示自定義文章類型的內容

WordPress 默認會創建一個作者存檔頁面,例如 https://www.wpdaxue.com/author/cmhello 會顯示該作者發佈的所有文章,但是如果你的網站使用瞭自定義文章類型,默認情況下,在這個存檔頁面是不顯示該作者發佈的自定義文章類型的內容的。如果你希望它顯示,可以在主題的 functions.php 添加下面的代碼:

1
2
3
4
5
6
7
8
9
10
11
12
/**
 * WordPress 作者存檔頁面顯示自定義文章類型的內容
 * https://www.wpdaxue.com/custom-post-types-author-archives.html
 */
function post_types_author_archives($query) {
	// 添加 questions 這個自定義文章類型到作者存檔
	if ( $query->is_author )
		$query->set( 'post_type', array('questions', 'post') );	// 運行後移除這個掛載動作,防止無限執行
	remove_action( 'pre_get_posts', 'post_types_author_archives' );
}
add_action( 'pre_get_posts', 'post_types_author_archives' );

/**
* WordPress 作者存檔頁面顯示自定義文章類型的內容
* https://www.wpdaxue.com/custom-post-types-author-archives.html
*/
function post_types_author_archives($query) {
// 添加 questions 這個自定義文章類型到作者存檔
if ( $query->is_author )
$query->set( ‘post_type’, array(‘questions’, ‘post’) );
// 運行後移除這個掛載動作,防止無限執行
remove_action( ‘pre_get_posts’, ‘post_types_author_archives’ );
}
add_action( ‘pre_get_posts’, ‘post_types_author_archives’ );

請根據自己的實際,修改第 8 行的文章類型。

發佈留言