If statement for admin page

时间:2013-11-25 作者:Macko Tarana

我该怎么写if 仅当我进入此页面时才显示特定代码的条件:

/wordpress/wp-admin/post-new.php?post_type=slideshow
这就是我想要得到的;)感谢Krzysiek!

function plu_admin_enqueue($hook) {
  $screen = get_current_screen();

if ( \'post.php\' == $hook && $screen->post_type == \'slideshow\' ) {
      wp_enqueue_script(\'plupload-all\');

      wp_register_script(\'cplupload\', get_template_directory_uri() . \'/js/cplupload.js\', array(\'jquery\'));
      wp_enqueue_script(\'cplupload\');

      wp_register_style(\'cplupload\', get_template_directory_uri() . \'/css/cplupload.css\');
      wp_enqueue_style(\'cplupload\');
  };
};

add_action( \'admin_enqueue_scripts\', \'plu_admin_enqueue\', 10 );

2 个回复
最合适的回答,由SO网友:Krzysiek Dróżdż 整理而成

我会使用get_current_screen(); 这样做。它返回一个WP_Screen 对象

您应该记住,如果之前调用过此函数,它将返回NULLadmin_init 行动

在您的情况下,应该如下所示:

$screen = get_current_screen();

if ( $screen && $screen->action == \'add\'
    && $screen->base == \'post\' && $screen->post_type == \'slideshow\' ) {
    // do your stuff
}

SO网友:sun

我相信您想显示一个子菜单,以自定义帖子类型使用add_submenu_page 为了这个。

下面是代码的示例

add_submenu_page(\'edit.php?post_type=slideshow\',\'page_title\',\'menu_title\',\'capability\',\'menu_slug\',\'function_example\');

function function_example ()
{
//here you put your code in order to apper in the sub menu

}
希望这会有所帮助:)

结束

相关推荐

WP_LOGIN_Form()重定向不重定向用户<admin

任何非管理员的用户都不会被重定向到具有以下实例的已定义URLwp_login_form().$args = array( \'echo\' => true, \'redirect\' => site_url( \'/chat/\' ), \'form_id\' => \'loginform\', \'label_username\' => __( \'Username\' ), \'label_pas