web-dev-qa-db-ja.com

<?php echo get_template_directory_uri();サイドバーで機能しない

誰かがこれに答えられることを願っています!

私は私のヘッダにこれを使っていて、それは働いています:

<img src="<?php echo get_template_directory_uri(); ?>/images/image.jpg">  

しかし、サイドバーのテキストウィジェットで使用しようとすると、画像が表示されません。何か案は?

2
Susan

PHPコードはテキストウィジェット内では実行されません。それを可能にするプラグインがありますが、この種のことは強くお勧めできません。

このコードをあなたのfunctions.phpファイルに追加してください。もっと良いのは、それを単純な小さなプラグインにすることです:

// Enable the use of shortcodes within widgets.
add_filter( 'widget_text', 'do_shortcode' ); 

// Assign the tag for our shortcode and identify the function that will run. 
add_shortcode( 'template_directory_uri', 'wpse61170_template_directory_uri' );

// Define function 
function wpse61170_template_directory_uri() {
    return get_template_directory_uri();
}

管理者で使用するには、テキストウィジェットにショートコード[template_directory_uri]を追加すると、テンプレートディレクトリが出力されます。

[template_directory_uri]/images/image.jpg
7
Dave Romsey

あなたはphpウィジェットを使うことができます、それはphpを実行することができるようになっているプレーンテキストのウィジェットです。 WordPress› PHP Code Widget"WordPressプラグイン by http://ottodestruct.com

0
markratledge

簡単な解決策は、画像をメディアにアップロードし、テキストウィジェットの画像のソースとしてurlを使用することです。

0