2011-12-21 8 views
1

私はdrupal 7のサイトを構築しており、数多くの問題に遭遇しています。 私はpage.tplファイルからロゴのPHP呼び出しを取り出し、ヘッダブロックに入れてすべてのページに追加しました。私はおそらくそれをpage.tplファイルに残すべきだと理解していますが、ヘッダブロックを利用するのは理にかなっていると思っていましたが、もはや動作しません。誰かがこれがなぜ機能していないのか説明できますか?ここブロック内のPHPロゴコール - Drupal 7

は、変数$logoは、それが唯一のpage.tpl.phpに提供され、block.tpl.phpでは使用できないためですコード

<div id="logo"><?php if ($logo): ?> 
     <a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>" rel="home" id="logo"><img src="<?php print $logo; ?>" alt="<?php print t('Home'); ?>" /></a> 
    <?php endif; ?></div> 

答えて

2

です。

あなたが実際にこのような値を自分つかむことができます:あなたが必要なものすべては、それがtemplate.phpにこのコード

function hook_preprocess_region(&$variables) { 
    $variables['logo'] = theme_get_setting('logo'); 
    $variables['front_page'] = variable_get('site_frontpage', 'node'); 
} 

明らかキャッシュ

と$のロゴの追加だ

$theme_name = 'name_of_theme'; 
$settings = variable_get('theme_' . $theme_name . '_settings', array()); 

if (isset($settings['logo_path'])) { 
    $logo = file_create_url($settings['logo_path']); 
} 
0

を$ front_pageはうまくいくでしょう。

関連する問題