我正在使用自适应主题和Corolla和Foo子主题。我需要我的徽标链接,通常会转到该网站的主页,完全转到另一个网址。我查看了Corolla和Adaptive主题目录中的模板(template.php和page.tpl.php),我能找到的就是这段代码:
<?php if ($site_logo): ?>
<div id="logo">
<?php print $site_logo; ?>
</div>
<?php endif; ?>
但我希望在其中找到<front>
的内容。我试着包装:
<?php print $site_logo; ?> with a link, but to no avail.
我也尝试在“打印”一词之后取出$site_logo
,但也无济于事。那么我该怎么做呢?
Ĵ
答案 0 :(得分:1)
您正在寻找的代码位于../ themes / adapthivetheme / at_core / inc / preprocess.inc 文件的function adaptivetheme_preprocess_page(&$vars)
第119行。
所以你应该覆盖主题template.php类似函数中的$ site_logo变量。
答案 1 :(得分:0)
根据TheodorosPloumis的回答建立更多细节。我在template.php中得到了这样的函数。请注意,您需要在调用drupal_static以及主函数名称时更改“MYTHEME_”。
<?php
function MYTHEME_preprocess_page(&$vars) {
// Set up logo element
if (at_get_setting('toggle_logo', $theme_name) === 1) {
$vars['site_logo'] = &drupal_static('MYTHEME__preprocess_page_site_logo');
if (empty($vars['site_logo'])) {
$logo_image_alt = check_plain(variable_get('site_name', t('Home page')));
$logo_link = variable_get('logo_link', '<front>');
if (at_get_setting('logo_title') == 1) {
$vars['site_logo'] = $vars['logo_img'] ? l($vars['logo_img'], $logo_link, array('attributes' => array('title' => $logo_image_alt), 'html' => TRUE)) : '';
}
else {
$vars['site_logo'] = $vars['logo_img'] ? l($vars['logo_img'], $logo_link, array('html' => TRUE)) : '';
}
}
// Maintain backwards compatibility with 7.x-2.x sub-themes
$vars['linked_site_logo'] = $vars['site_logo'];
}
}
答案 2 :(得分:0)
我会试试。很高兴你添加了向后兼容功能。 Ĵ