在WordPress儀表盤“概況”小工具顯示自定義文章類型的數據

在WordPress儀表盤的“概況(Right Now)”小工具會顯示文章、分類、迴響等數據,今天就分享下在WordPress儀表盤“概況”小工具顯示自定義文章類型的數據的方法。

Include-custom-post-types-in-dashboard-wpdaxue_com

將下面的代碼添加到當前主題的 functions.php 文件即可:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
//在WordPress儀表盤“概況”顯示自定義文章類型數據(在WP 3.5.2 測試通過)
function wph_right_now_content_table_end() {
	$args = array(
		'public' => true ,
		'_builtin' => false
	);
	$output = 'object';
	$operator = 'and';
	$post_types = get_post_types( $args , $output , $operator );
	foreach( $post_types as $post_type ) {
		$num_posts = wp_count_posts( $post_type->name );
		$num = number_format_i18n( $num_posts->publish );
		$text = _n( $post_type->labels->singular_name, $post_type->labels->name , intval( $num_posts->publish ) );
		if ( current_user_can( 'edit_posts' ) ) {
			$num = "<a href='edit.php?post_type=$post_type->name'>$num</a>";
			$text = "<a href='edit.php?post_type=$post_type->name'>$text</a>";
		}
		echo '<tr><td class="first num b b-' . $post_type->name . '">' . $num . '</td>';
		echo '<td class="text t ' . $post_type->name . '">' . $text . '</td></tr>';
	}
	$taxonomies = get_taxonomies( $args , $output , $operator ); 
	foreach( $taxonomies as $taxonomy ) {
		$num_terms  = wp_count_terms( $taxonomy->name );
		$num = number_format_i18n( $num_terms );
		$text = _n( $taxonomy->labels->singular_name, $taxonomy->labels->name , intval( $num_terms ));
		if ( current_user_can( 'manage_categories' ) ) {
			$num = "<a href='edit-tags.php?taxonomy=$taxonomy->name'>$num</a>";
			$text = "<a href='edit-tags.php?taxonomy=$taxonomy->name'>$text</a>";
		}
		echo '<tr><td class="first b b-' . $taxonomy->name . '">' . $num . '</td>';
		echo '<td class="t ' . $taxonomy->name . '">' . $text . '</td></tr>';
	}
}
add_action( 'right_now_content_table_end' , 'wph_right_now_content_table_end' );

//在WordPress儀表盤“概況”顯示自定義文章類型數據(在WP 3.5.2 測試通過)
function wph_right_now_content_table_end() {
$args = array(
‘public’ => true ,
‘_builtin’ => false
);
$output = ‘object’;
$operator = ‘and’;
$post_types = get_post_types( $args , $output , $operator );
foreach( $post_types as $post_type ) {
$num_posts = wp_count_posts( $post_type->name );
$num = number_format_i18n( $num_posts->publish );
$text = _n( $post_type->labels->singular_name, $post_type->labels->name , intval( $num_posts->publish ) );
if ( current_user_can( ‘edit_posts’ ) ) {
$num = "<a href=’edit.php?post_type=$post_type->name’>$num</a>";
$text = "<a href=’edit.php?post_type=$post_type->name’>$text</a>";
}
echo ‘<tr><td class="first num b b-‘ . $post_type->name . ‘">’ . $num . ‘</td>’;
echo ‘<td class="text t ‘ . $post_type->name . ‘">’ . $text . ‘</td></tr>’;
}
$taxonomies = get_taxonomies( $args , $output , $operator );
foreach( $taxonomies as $taxonomy ) {
$num_terms = wp_count_terms( $taxonomy->name );
$num = number_format_i18n( $num_terms );
$text = _n( $taxonomy->labels->singular_name, $taxonomy->labels->name , intval( $num_terms ));
if ( current_user_can( ‘manage_categories’ ) ) {
$num = "<a href=’edit-tags.php?taxonomy=$taxonomy->name’>$num</a>";
$text = "<a href=’edit-tags.php?taxonomy=$taxonomy->name’>$text</a>";
}
echo ‘<tr><td class="first b b-‘ . $taxonomy->name . ‘">’ . $num . ‘</td>’;
echo ‘<td class="t ‘ . $taxonomy->name . ‘">’ . $text . ‘</td></tr>’;
}
}
add_action( ‘right_now_content_table_end’ , ‘wph_right_now_content_table_end’ );

參考資料:http://wordpress.stackexchange.com/questions/1567/best-collection-of-code-for-your-functions-php-file

發佈留言