Я хочу сделать следующее выражение PHP внутри function.php
: если есть загруженное изображение для фона #header h1 a
, сделать отступ текста (удалить) ... Если нет (иначе), оставьте текст (не Сделайте отступ).
Я не очень знаком с PHP, но вот что я сделал:
<?php
// Include functions of Theme Options
require_once(TEMPLATEPATH . '/functions/admin-menu.php');
// If there's an image for the site title, remove it's text
function logo_exists() {
?><style type="text/css">
#header h1 a {
<?php
if ( $options['logo'] == NULL ) { ?>
float: left;
text-indent: 0;
<?php } else { ?>
background: url(<?php echo $options['logo']; ?>) no-repeat scroll 0 0;
float: left;
text-indent: -9999px;
width: 160px;
height: 80px;
}
<?php } ?>
</style><?php
}
header.php:
// Initiate Theme Options
$options = get_option('plugin_options');
var_dump($options['logo'])
?>
<style>
body {
background-color: <?php echo $options['color_scheme']; ?>
}
</style>
</head>
<body <?php body_class(); ?>>
<div id="wrapper">
<div id="header">
<h1>
<a href="<?php echo home_url( '/' ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a>
</h1>
(Я не уверен, что это полезная информация, но plugin_options инициализируется непосредственно перед тегами <style>
.)
Я сделал var_dump
и #options['logo']
дисплеи:
string(63) "http://localhost/wordpress/wp-content/uploads/2010/12/logo3.png"
(значит, изображение работает)
Но сейчас я просто вижу название сайта Wordpress
Должен ли я "активировать" или "инициировать" функцию ** logo_exists ?
или есть другая проблема? **
(все работает нормально, если я не использую операторы PHP If и объявляю $ options [logo] непосредственно из header.php)
Заранее спасибо!