为不同类别的新帖子创建3个按钮

时间:2013-05-15 作者:user32857

我正在自定义WordPress的管理面板。我的用户角色只能写入3个类别。我想设计3个按钮或div来创建一个新的帖子,但每个按钮或div用于不同的类别。仪表板上的那个。

我将为角色用户提供不同的仪表板

有什么想法吗?

explanation image

2 个回复
SO网友:Andy

这是不可能的,因为新帖子没有设置为类别。除此之外,您需要创建新的职位,首先分配选定的类别。

所以只要创建一个函数,点击按钮就可以创建新的帖子。

问题是,如果用户使用该链接,您将发现许多空白帖子

要创建仪表板小部件,您可以检查Office文档wp_add_dashboard_widget

SO网友:birgire

如果要使用自定义帖子类型,则可以使用以下链接:

/wp-admin/post-new.php?post_type=news
/wp-admin/post-new.php?post_type=sport
/wp-admin/post-new.php?post_type=people
在仪表板中,将您带到相应的新帖子页面。

更新:

如果您不能使用自定义帖子类型,必须使用帖子类别,您可以尝试使用如下链接:

/wp-admin/index.php?mycat=20
通过将以下代码添加到functions.php 文件(或使用代码制作插件):

add_action( \'admin_head-index.php\', \'my_post_preset_wpse_99518\' );
function my_post_preset_wpse_99518() {
        global $current_user;
        $allowed_cat_ids = array(10,20); //EDIT  
        if(isset($_GET[\'mycat\'])){
                $mycat = (int) $_GET[\'mycat\']; 
                if(in_array($mycat, $allowed_cat_ids, TRUE)){
                        $newpost = array(
                                \'post_title\' => \' \', // the title must be non-empty
                                \'post_status\' => \'draft\', 
                                \'post_date\' => date(\'Y-m-d H:i:s\'), 
                                \'post_author\' => $current_user->ID, 
                                \'post_category\' => array($mycat), 
                        );
                        $newpostobj = get_post(wp_insert_post($newpost)); 
                        if($newpostobj)
                            wp_redirect(admin_url("post.php?action=edit&post={$newpostobj->ID}"));
                            exit();

                }
        }
}
您可以根据需要编辑此行:

        $allowed_cat_ids = array(10,20); //EDIT  
这将插入带有预设类别的新帖子。

结束

相关推荐

Selecting a post in Dashboard

如何在管理仪表板中设置a<;选择(>);指定职位类型的所有职位列表?我需要这个来保存帖子IDset_option() 呼叫如何做到这一点?