我对Codex和PHP完全陌生,两天前刚开始学习它。 我正在将我的html和css转换为Wordpress。
我有两个样式表,一个用于我的静态首页,另一个用于其余页面的主样式表。我完全忘记了。我试图找出如何制作if
和else
声明。
因此,如果首页已加载,请打开此样式表。如果没有,请加载主样式表。
这是我迄今为止所尝试过的:
function register_more_stylesheets() {
wp_enqueue_style( 'style', get_stylesheet_directory_uri() );
}
function add_my_stylesheet() {
if ( is_front_page() )
wp_register_style( 'homestyle', get_template_directory_uri() . '/homestyle.css' );
}
add_action( 'init', 'register_more_stylesheets' );
add_action( 'wp_enqueue_scripts', 'add_my_stylesheet' );
另一件让我搞砸的事情就是我对这一切的依赖......
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>">
<link rel="stylesheet" type="text/css" href="<?php bloginfo("template_directory"); ?>/homestyle.css" />
这一切都在header.php中,我将两者联系起来,但两者似乎都在碰撞我的样式表。
答案 0 :(得分:-1)
遵循 Codex WordPress 或默认主题的基本代码约定,您可以轻松处理此问题。
wp_enqueue_style( $handle, $src, $deps, $ver, $media );
/**
* Proper way to enqueue scripts and styles
*/
function wpdocs_theme_name_scripts() {
wp_enqueue_style( 'style-name', get_stylesheet_uri() );
wp_enqueue_script( 'script-name', get_template_directory_uri() . '/js/example.js', array(), '1.0.0', true );
}
add_action( 'wp_enqueue_scripts', 'wpdocs_theme_name_scripts' );
答案 1 :(得分:-1)
使用这样的东西:
<?php if(is_home()) { ?>
<link rel="stylesheet" type="text/css" href="<?php bloginfo("template_directory"); ?>/homestyle.css" />
<?php } else { ?>
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>">
<?php } ?>
答案 2 :(得分:-1)
将以下代码放入functions.php
文件:
add_action( 'wp_enqueue_scripts', 'register_plugin_styles' );
function register_plugin_styles() {
wp_register_style( 'single-style', get_stylesheet_directory_uri() );
wp_register_style( 'home-style', get_template_directory_uri() . '/homestyle.css' );
if( is_single() )
wp_enqueue_style( 'single-style' );
else
wp_enqueue_style( 'home-style' );
}