gpt4 book ai didi

css - wp_enqueue_style 将 css 放在页脚而不是页眉中

转载 作者:行者123 更新时间:2023-11-28 12:55:44 25 4
gpt4 key购买 nike

我有以下代码片段,用于在 WordPress 管理区域的设置页面上包含样式和 java 脚本。我有一个带有单例的类,用于启动我的管理页面。我删除了除所需代码之外的所有内容,以使其更具可读性。

我遇到的问题是,通过使用下面的设置,设置页面上的样式表被放置在页面底部而不是页面头部。我可以通过使用其他 Action Hook 将它放在标题中,但这会破坏目的。据我所知,我使用的设置与 wp_enqueue_style 命令中描述的设置相同。

命令“wp_enqueue_style() 现在可以在中间页面(在 HTML 正文中)调用。这将在页脚中加载样式。”有一个小提示。如果那是真的,那将意味着“admin_print_scripts-*” Hook 在页面中间某处而不是在开头调用,这样做会将 css 放在页脚中。

对此有任何想法。我做错了什么?

感谢您的宝贵时间。

这是在 functions.php 文件中调用单例类的方式

theme::instance( );

这是我用来创建管理页面的类的一部分

class theme {
static public function instance( )
{
is_null( self::$instance ) AND self::$instance = new self;

return self::$instance;
}

public function __construct()
{
add_action( 'admin_menu', array( $this, 'initMenu' ), 10, 0 );
add_action( 'admin_init', array( $this, 'registerAssets' ), 10, 0 );
}

public function registerAssets( )
{
// Styles
wp_register_style( 'cen', 'style.css', array( ), '1.0' );
wp_register_style( 'cen-settings', 'settings.css', array( 'cen' ), '1.0' );

// Scripts
wp_register_script( 'cen', 'settings.js', array( 'jquery' ), '1.0', true );
}

public function initMenu( )
{
// Index page
$index =add_menu_page( 'Cen', 'Cen', 'manage_options', 'cen-index', function (){ require_once( get_template_directory( ) . '/pages/index.php' ); }, get_template_directory_uri() . '/images/icons/logo_16.png', "110.00" );

// Settings page
$settings =add_submenu_page( 'cen-index', 'Cen - Settings', 'cen' ), 'Settings', 'manage_options', 'cen-settings', function (){ require_once( get_template_directory( ) . '/pages/settings.php' ); } );

// Add action for assets on the settings page
add_action( 'admin_print_scripts-' . $settings, array( $this, 'initSettingsPage' ));
}

public function initSettingsPage( )
{
// Styles used
wp_enqueue_style( 'cen' );
wp_enqueue_style( 'cen-settings' );

// Scripts used
wp_enqueue_script( 'jquery-ui-tabs' );
wp_enqueue_script( 'cen' );
}
}

最佳答案

您使用的操作 Hook admin_print_scripts 用于添加内联脚本,因此强烈建议使用 admin_enqueue_scripts 在管理中排队脚本/样式。尝试一下。希望它有效!

关于css - wp_enqueue_style 将 css 放在页脚而不是页眉中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22528697/

25 4 0