1

我在使用 Devin Price 的 Options Framework Theme 将 css 样式切换器添加到我的主题选项时遇到问题。一切似乎都很好,但是当我输出选项时,我得到 1.css 2.css 3.css 而不是实际的文件名。

这就是我所做的:

我将“样式”目录中的所有样式表拉到一个数组中:

$alt_stylesheet_path = get_template_directory() . '/styles/';
$alt_stylesheets = array();
if ( is_dir($alt_stylesheet_path) ) {
    if ($alt_stylesheet_dir = opendir($alt_stylesheet_path) ) {
        while ( ($alt_stylesheet_file = readdir($alt_stylesheet_dir)) !== false ) {
            if(stristr($alt_stylesheet_file, ".css") !== false) {
                $alt_stylesheets[] = $alt_stylesheet_file;
            }
        }
    }
}

然后我创建选项面板

$options[] = array(
    'name' => __('StyleSheet', 'mytheme'),
    'desc' => __('Select a color scheme', 'mytheme'),
    'id' => 'alt_stylesheet',
    'type' => 'select',
    'options' => $alt_stylesheets,
    "std" => "default.css");

我在 header.php 中这样称呼它

<link rel="stylesheet" href="<?php echo bloginfo('template_directory')?>/styles/<?php echo of_get_option('alt_stylesheet'); ?>.css" type="text/css" media="screen" />

如何输出 css 文件名(例如:green.css blue.css)而不是选项 id (1.css, 2.css)?

任何帮助将不胜感激,因为我已经失去了一天的尝试。谢谢

4

0 回答 0