我有一个网站,我需要能够编辑仪表板小部件,以便它向网站显示相关信息。
目前所显示的只是即时小部件。在这个小部件中,我不需要讨论部分,也不需要帖子和标签。我真正需要的是自定义帖子类型,例如产品和新闻。所以它会说产品,然后说有多少产品,就像页面一样。
如果您可以显示来自其他插件的信息,那也太好了。例如,我使用一个名为Support Ticket Center, 如果你能展示有多少张公开的支持票,有多少张已经关闭等等,那就太好了。
有没有可以进行这种定制的插件?还是更复杂?
谢谢
EDIT:我已经尝试将以下代码添加到我的函数中。php文件。这有点可行,但输出中添加了许多其他div和东西。我不明白他们是从哪里来的。
// wp_dashboard_setup is the action hook
add_action(\'wp_dashboard_setup\', \'mycustom_dashboard_stats\');
// add dashboard widget
function mycustom_dashboard_stats() {
wp_add_dashboard_widget(\'site_stat_widget\', \'Site Stats\',\'wp_dashboard_custom_post_types\');
}
function wp_dashboard_custom_post_types() {
global $wp_registered_sidebars;
$num_posts = wp_count_posts( \'Product\' );
echo "\\n\\t".\'<div class="table table_content">\';
echo "\\n\\t".\'<p class="sub">\' . __(\'Content\') . \'</p>\'."\\n\\t".\'<table>\';
echo "\\n\\t".\'<tr class="first">\';
// Posts
$num = number_format_i18n( $num_posts->publish );
$text = _n( \'Product\', \'Products\', intval($num_posts->publish) );
if ( current_user_can( \'edit_posts\' ) ) {
$num = "<a href=\'edit.php\'>$num</a>";
$text = "<a href=\'edit.php\'>$text</a>";
}
echo \'<td class="first b b-products">\' . $num . \'</td>\';
echo \'<td class="t products">\' . $text . \'</td>\';
echo \'</tr>\';
}
这是它正在输出的html代码。
<div class="table table_content">
<p class="sub">Content</p>
<div class="postbox-container" style="width:49%;">
<div class="postbox-container" style="display:none;width:49%;">
<div class="postbox-container" style="display:none;width:49%;">
<p>
<div class="clear"></div>
<div class="clear"></div>
<div class="clear"></div>
<div class="clear"></div>
<div class="clear"></div>
<table>
</div>
这将输出“内容”,然后是巨大的差距,然后是产品数量。我不知道为什么要插入所有清晰的div和东西。
我如何让它输出与“立即”小部件相同的html,以便它正确显示并使用相同的css。
最合适的回答,由SO网友:v0idless 整理而成
你可以再想象一点,但这应该让你开始。
add_action( \'right_now_content_table_end\', \'wpse_3809\');
function wpse_3809() {
$types = get_post_types( array( \'_builtin\' => false ) );
foreach( $types as $type ) :
$num_posts = wp_count_posts( $type );
$num = number_format_i18n( $num_posts->publish );
?>
<tr>
<td class="first b b_<?php echo $type; ?>">
<a href="edit.php?post_type=<?php echo $type; ?>"><?php echo $num; ?></a>
</td>
<td class="t <?php echo $type; ?>">
<a href="edit.php?post_type=<?php echo $type; ?>"><?php echo $type; ?></a>
</td>
</tr>
<?php
endforeach;
}
Edit:“立即”仪表板小部件的代码可以在/wp admin/includes/dashboard中找到。php函数为
wp_dashboard_right_now
. 遗憾的是,似乎没有允许您删除帖子、页面、类别、标记或评论的筛选器。如果要删除它们,可以使用JavaScript从DOM中删除元素,或者可以使用CSS隐藏它们(如果有CSS父选择器?)。或者,您可以复制代码并删除/添加任何需要的内容。如果不想列出所有自定义帖子类型,请删除
get_post_types
和foreach循环,并更换
$type
使用自定义帖子类型名称。