-1

我正在尝试为我的下一个 wordpress 主题创建选项,但在这个主题中,我使用选项树插件,几乎 80% 的选项都是 css,所以我创建了一个style.php文件并将其添加到标题中,就像其他 css 文件一样。

但我收到 500 服务器错误,如果我直接运行文件,我会收到此错误并出现 500 服务器错误:

未声明 HTML 文档的字符编码。如果文档包含 US-ASCII 范围之外的字符,则文档将在某些浏览器配置中呈现乱码。页面的字符编码必须在文档或传输协议中声明。

我的 style.php 文件的代码:

<?php ob_start();
    header("Content-type: text/css");
    include("../../../wp-load.php");
    header("HTTP/1.0 200 OK");
?>
<?php
    if(function_exists('ot_get_option')){
?>
body{
    <?php 
        $option = ot_get_option('website_width'); 
        if(isset($option[0]) && isset($option[1])){
            echo "width:".$option[0].$option[1];
        }
    ?>;
}

.span8{
    <?php 
        $option = ot_get_option('width_with_sidebar'); 
        if(isset($option[0]) && isset($option[1])){
            echo "width:".$option[0].$option[1];
        }
    ?>;
}

.span6{
    <?php 
        $option = ot_get_option('content_width_with_two_sidebar'); 
        if(isset($option[0]) && isset($option[1])){
            echo "width:".$option[0].$option[1];
        }
    ?>;
}

.span12{
    <?php 
        $option = ot_get_option('content_width_for_full_width'); 
        if(isset($option[0]) && isset($option[1])){
            echo "width:".$option[0].$option[1];
        }
    ?>;
}

.span6,.span8,.span12{
    <?php 
        $option = ot_get_option('content_margins'); 
        if(isset($option[0]) && isset($option[1])){
            echo "margin:".$option[0].$option[1];
        }
    ?>;
    <?php 
        $option = ot_get_option('content_padding'); 
        if(isset($option[0]) && isset($option[1])){
            echo "padding:".$option[0].$option[1];
        }
    ?>;
}

body{
    <?php
        $option = ot_get_option('style');
        if(isset($option)){
            if($option=='full_width'){
                echo "width:100% !important";
            }
        }
    ?>;
}

#site-title{
    <?php
        $option = ot_get_option('site_title')
        if(isset($option)){
            if(isset($option['font-color'])){
                echo "color:".$option['font-color'].";";
            }
            if(isset($option['font-family'])){
                echo "font-family:".$option['font-family'].";";
            }
            if(isset($option['font-size'])){
                echo "font-size:".$option['font-size'].";";
            }
            if(isset($option['font-variant'])){
                echo "font-variant:".$option['font-variant'].";";
            }
            if(isset($option['font-weight'])){
                echo "font-weight:".$option['font-weight'].";";
            }
            if(isset($option['letter-spacing'])){
                echo "letter-spacing:".$option['letter-spacing'].";";
            }
            if(isset($option['line-height'])){
                echo "line-height:".$option['line-height'].";";
            }
            if(isset($option['text-decoration'])){
                echo "text-decoration:".$option['text-decoration'].";";
            }
            if(isset($option['text-transform'])){
                echo "text-transform:".$option['text-transform'].";";
            }
        }
    ?>
}
<?php
    }
header("HTTP/1.0 200 OK");
?>
4

1 回答 1

0

我得到了自己的答案 我在代码中有语法错误,但没有在浏览器中显示,只是显示 500 内部服务器错误

当我改变

 $option = ot_get_option('site_title')

 $option = ot_get_option('site_title');

它完美无缺

于 2012-11-10T04:46:28.897 回答