在functions.php中使用bloginfo('template_directory')

时间:2017-12-30 19:22:56

标签: php wordpress

我想通过在我的主题中使用外部css文件来提供我的wordpress仪表板自定义css样式。这是我的代码:

<?php
// Custom Dashboard Styles by Loading assets/css/admin.css
function filmview_admin_css() {
    echo '<link rel="stylesheet" href="bloginfo('template_directory')/assets/css/admin.css" type="text/css" media="all" />';
}
add_action('admin_head', 'filmview_admin_css');
?>

2 个答案:

答案 0 :(得分:0)

您无法同时使用bloginfo()echo因为bloginfo()已在输出字符串。

无论如何,我建议您使用get_template_directory_uri()get_theme_file_uri()get_parent_theme_file_uri(),因为这些功能是为了这种目的而在functions.php上使用的。

此外,要将样式或脚本排入队列,您应该使用WordPress内置函数(如wp_enqueue_style())和钩子admin_enqueue_scripts

function filmview_admin_css() {
    wp_enqueue_style( 'custom_wp_admin_css', get_template_directory_uri() . '/assets/css/admin.css' );
}
add_action( 'admin_enqueue_scripts', 'filmview_admin_css' );

答案 1 :(得分:0)

请参阅此主题https://wordpress.stackexchange.com/questions/41207/how-do-i-enqueue-styles-scripts-on-certain-wp-admin-pages

一般情况下,您可以使用:

function admin_custom_css() { wp_enqueue_style( 'stylesheet_name', 'stylesheet.css'); } add_action('admin_init', 'admin_custom_css' );

不要硬编码像<link rel="...这样的东西,因为这是不好的做法,WordPress可以连贯的方式为你完成所有这些。