是什么原因会导致get_style heet_directory_uri()失败?

时间:2011-12-02 作者:Zach Lysobey

在我的新worpress安装中,我有如下代码

<img src="<?php get_stylesheet_directory_uri(); ?>/images/logo.jpg" />

这段代码一直有效,直到我开始使用子域(从example.com/dev转到dev.example.com),并在常规设置中更改了这些URL。

现在get_stylesheet_directory_uri() 不输出任何内容:

<img src="/images/logo.jpg" />

我将其替换为以下内容:bloginfo(stylesheet_directory) 这似乎很好,但我习惯了get_stylesheet_directory_uri() 看来这是新的方法。

1 个回复
最合适的回答,由SO网友:chrisguitarguy 整理而成

那是因为get_stylesheet_directory_uri 仅返回值。如果要将其回显到屏幕,则必须包含回显或打印。

<img src="<?php echo get_stylesheet_directory_uri(); ?>/images/logo.jpg" />
bloginfo 也很好,但当你这样做的时候stylesheet_directory 这只是一个包装get_stylesheet_directory_uri

<?php
function get_bloginfo( $show = \'\', $filter = \'raw\' ) {

    switch( $show ) {
        // snip snip

        case \'stylesheet_directory\':
            $output = get_stylesheet_directory_uri();
            break;
        // snip snip
    }
    $url = true;
    if (strpos($show, \'url\') === false &&
        strpos($show, \'directory\') === false &&
        strpos($show, \'home\') === false)
        $url = false;

    if ( \'display\' == $filter ) {
        if ( $url )
            $output = apply_filters(\'bloginfo_url\', $output, $show);
        else
            $output = apply_filters(\'bloginfo\', $output, $show);
    }

    return $output;
}

结束

相关推荐

WordPress自定义SuPerfish CSS问题

可在此处找到问题:http://themeforward.com/demo2/使用“我的菜单”并导航到“功能”>“短代码”>“排版”。注意边框(ul .sub-menu { border:1px solid #000 } ) 将第三级菜单项(排版)下移一个像素。如何消除一个像素间隙,使第三级菜单项正确对齐?这是我的CSS:/*** DEMO SKIN ***/ .sf-menu { float: left; z-index: 900&#