Перепробовал всякие варианты и никак не сделать нормальный. Объясню что вообще хочу... Грубо говоря создал страницу со статьей публикую ее на главной, и так как тайтл и h1 обычно одинаковые выводится некрасиво. Тут нашел всякие варианты как там можно убрать но все не то.
Мне надо что бы на главной выводился h1 или тайтл ссылкой, а на странице оставалось только H1.
Максимум что я смог добиться это что на странице заголовок выглядит вот так:
<h2 class="with-tabs">Секреты настоящего стиля</h2>
Но это не то в плане оптимизации.
Просидел весь день мучаясь над этим глаза уже в кучу помогите люди добрые
Комментарии
page-front.tpl.php?
Вот нашел как на этом блоге http://arn.ro
Я новичек еще в этом что там где делать так поверхностно в ПхП не шарю. Если есть возможность поподробней расписать как и что сделать.....
Заранее спасибо.
Знаете, тут исторически сложилось, что слово "Новичок" имеет несколько другое определение, а именно:
Новичок - человек, может быть даже разумный, вероисповедание достаточно странное, в частности, ему категорически запрещено пользоваться поиском и прилагать усилия для решения задачи. Ждёт когда ему подадут готовый ответ. Так же, может думать, что его проблема никогда не решалась до этого, даже если рядом есть топик с подобной ему проблемой, будет упорно привлекать внимание и требовать, чтобы сообщество решило все проблемы за него. На попытки опытных форумчан обратить в другую веру, как правило, проявляет агрессию, ссылается на недостаток времени или ещё чего-то
Задумайтесь, пожалуйста.
гм.. вообще-то в дефолтной node.tpl.php есть всё что вам нужно
<?php if (!$page): ?>
<h2><a href="<?php print $node_url ?>" title="<?php print $title ?>"><?php print $title ?></a></h2>
<?php endif; ?>
а для самой главной либо page-front.tpl.php где убираете < h1 > с тайтлом, либо в page.tpl.php конструкцию типа
<?php if (drupal_is_front_page()) {}else{?><h1 class="title"><?php print $title ?></h1><?php };?>
P.S. Поиск очень помогает
Да я поиском пользовался написал же сижу с утра уже. Просто что то я неправильно делаю . Выше все команды я находил с ними и мудрил. И нечего нормального у меня не выходит. Может это из-за того что тема моя через артистир сделана. В пхп я не понимаю поэтому разобраться не могу.
Хотели бы вы попасть на операцию к слепому хирургу, при условии, что он не знает, что у вас болит и чем вы лечились?
Если вы пробовали что-то делать, то это надо упомянуть и выложить код, хотя бы те куски, которые не работают
Да все работает вроде но только не так как я хотел бы. http://worldmode.ru/ вот блог.
Вот код
<?php<div class="art-Post">
<div class="art-Post-tl"></div>
<div class="art-Post-tr"></div>
<div class="art-Post-bl"></div>
<div class="art-Post-br"></div>
<div class="art-Post-tc"></div>
<div class="art-Post-bc"></div>
<div class="art-Post-cl"></div>
<div class="art-Post-cr"></div>
<div class="art-Post-cc"></div>
<div class="art-Post-body">
<div class="art-Post-inner">
<?php if ($page == 0): ?>
<?php if (($is_front)|($page == true)): ?><h1 class="node-title"><?php print $title ?></h1>
<?php endif; ?>
<?php if ((!$is_front)&($page == 0)): ?>
<h2><a href="<?php print $node_url ?>" title="<?php print $title ?>"><?php print $title ?></a></h2>
<?php endif; ?>
<h2 class="art-PostHeader"><img src="<?php echo get_full_path_to_theme(); ?>/images/PostHeaderIcon.png" width="30" height="31" alt=""/> <a href="<?php echo $node_url; ?>" title="<?php echo $title; ?>"><?php echo $title; ?></a>
</h2>
<?php endif; ?>
<?php if ($submitted): ?>
<div class="art-PostHeaderIcons art-metadata-icons">
<?php echo art_submitted_worker($date, $name); ?>
С этими по середине я по всякому побывал и по отдельности и то с тем и с другим. А итог того что я хочу как у уникального человека на блоге никак не получить
Подсказаньки пожалуйста дайте. Или может просто даст кто готовый файлик пхп??? Или просто тут полный код выложить кто нибудь может????
не пойму а почему столько много пользователей, у которых логины заканчиваются на drupal.org
начал думать, что это за особые заслуги перед друпал сообществом почтовый ящик дают в этом домене.
А оказывается это просто
понтымода?1. Логические операции это ||,&&,or,and, а не |,&.
2. $is_front - Вы уверены, что эта переменная есть в этом шаблоне? А даже если бы и была, зачем лишние проверки?
У них одна учётка на два сайта.
И то и другое логические операции. Отличие двойных знаков от одинарных всего лишь в прекращении вычисления выражения в том месте, где оно однозначно определено. Иногда это сокращает исполняемый код.
Например,
func1() & func2() & func3()
при любых значениях, возвращаемых функциями они будут вызваны все.А вот в
func1() && func2() && func3()
, если func1() вернёт false, то func2() и func3() вызываться не будут, поскольку значение выражения один фиг false.Причём здесь вызов функии и работа с переменными? Для битовой операции важны все значения, поэтому функции будут вызваны все. Для логической все необязательны. Кстати уже на основе этого можно заключить, что эти операторы работают по разному.
И да, результат битовых может совпасть с логическими, но не факт что совпадёт.
А вообще, учим матчасть:
- логические операторы
- битовые операторы
Я о логических значениях функций. Битовые операции применяются достаточно редко.
Хотя черт с ними. Тут вроде совсем о другом.
Я ничего не понял из ваших ругательств =)))
Я в принципе все сделал что хотел только единственное при выводе анонса на главной у меня и title и h1 показывается. Подскажите как убрать - запретить вывод h1???
<?php if ($page == 0): ?>
<h2 class="art-PostHeader"><img src="<?php echo get_full_path_to_theme(); ?>/images/PostHeaderIcon.png" width="22" height="22" alt=""/> <a href="<?php echo $node_url; ?>" title="<?php echo $title; ?>"><?php echo $title; ?></a>
</h2>
<?php endif; ?>
что там дописать надо или заменить??? Или есть возможность просто убрать вывод тайтла везде и сделать что бы в публикации на главной h1 был ссылкой???
Уберите H1 из node.tpl.php. Оно должно быть только в page.tpl.php.
У меня h1 негде не прописано вообще. Не там и не там. http://worldmode.ru посмотрите пожалуйста может поймете что я имею ввиду.
Как это?
На главной:
</h1>
На полной:
И там и там - h1.
Так это я руками прописал в теле страници
в самих файлах node.tpl.php и page.tpl.php дажее намека нету на h1
Дык в чём вопрос?
У нас разговор про автоматическое формирование заголовков,а Вы их руками ставите.
Вопрос в том как сделать что бы на главной в публикации был лишь только заголовок. Так как у меня h1 и title одинаковы, и это смотрится некрасиво когда повторяется. Мне нужно примерно вот как тут http://arn.ro
Это стандартное поведение. Посмотрите почти в любую тему друпала, например bluemarine.
Так я меняю даже тему h1 то все равно показывается. Я уже 2 раза показал как примерно надо И показал как у меня получается. Ссылки выше. И все по стандарту я уже все варианты попробовал.
Неужели до сих пор непонятно что я хочу??? Я честно признаться уже даже не знаю как объяснить.
Вот весь код ткните меня носом пожалуйста где там что не так.
<div class="art-Post-tl"></div>
<div class="art-Post-tr"></div>
<div class="art-Post-bl"></div>
<div class="art-Post-br"></div>
<div class="art-Post-tc"></div>
<div class="art-Post-bc"></div>
<div class="art-Post-cl"></div>
<div class="art-Post-cr"></div>
<div class="art-Post-cc"></div>
<div class="art-Post-body">
<div class="art-Post-inner">
<?php if ($page == 0): ?>
<h2 class="art-PostHeader"><img src="<?php echo get_full_path_to_theme(); ?>/images/PostHeaderIcon.png" width="22" height="22" alt=""/> <a href="<?php echo $node_url; ?>" title="<?php echo $title; ?>"><?php echo $title; ?></a>
</h2>
<?php endif; ?>
<?php if ($submitted): ?>
<div class="art-PostHeaderIcons art-metadata-icons">
<?php echo art_submitted_worker($date, $name); ?>
</div>
<?php endif; ?>
<div class="art-PostContent">
<div class="art-article"><?php echo $content;?>
<?php if (isset($node->links['node_read_more'])) { echo '<div class="read_more">'.get_html_link_output($node->links['node_read_more']).'</div>'; }?></div>
</div>
<div class="cleared"></div>
<?php ob_start(); ?>
<?php if (is_art_links_set($node->links) || !empty($terms)): ?>
<div class="art-PostFooterIcons art-metadata-icons">
<?php echo art_node_worker($node); ?>
</div>
<?php endif; ?>
<?php $metadataContent = ob_get_clean(); ?>
<?php if (trim($metadataContent) != ''): ?>
<div class="art-PostMetadataFooter">
<?php echo $metadataContent; ?>
</div>
<?php endif; ?>
</div>
</div>
</div>
Это что, node.tpl.php?
Покажите page.tpl.php
<html xmlns="http://www.w3.org/1999/xhtml" lang="<?php echo get_page_language($language); ?>" xml:lang="<?php echo get_page_language($language); ?>">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
<?php echo $head; ?>
<title><?php if (isset($head_title )) { echo $head_title; } ?></title>
<?php echo $styles ?>
<?php echo $scripts ?>
<!--[if IE 6]><link rel="stylesheet" href="<?php echo $base_path . $directory; ?>/style.ie6.css" type="text/css" /><![endif]-->
<!--[if IE 7]><link rel="stylesheet" href="<?php echo $base_path . $directory; ?>/style.ie7.css" type="text/css" media="screen" /><![endif]-->
<script type="text/javascript">if (Drupal.jsEnabled) {$(document).ready(function(){
window.setTimeout("artNoStyleAdding(document)", 2000);});}</script>
<script type="text/javascript"><?php /* Needed to avoid Flash of Unstyle Content in IE */ ?> </script>
</head>
<body>
<div id="art-page-background-glare">
<div id="art-page-background-glare-image"></div>
</div>
<div id="art-main">
<div class="art-Sheet">
<div class="art-Sheet-tl"></div>
<div class="art-Sheet-tr"></div>
<div class="art-Sheet-bl"></div>
<div class="art-Sheet-br"></div>
<div class="art-Sheet-tc"></div>
<div class="art-Sheet-bc"></div>
<div class="art-Sheet-cl"></div>
<div class="art-Sheet-cr"></div>
<div class="art-Sheet-cc"></div>
<div class="art-Sheet-body">
<div class="art-Header">
<div class="art-Header-png"></div>
<div class="art-Header-jpeg"></div>
</div>
<?php if (!empty($navigation)): ?>
<div class="art-nav">
<div class="l"></div>
<div class="r"></div>
<?php echo $navigation; ?>
</div>
<?php endif;?>
<?php if (!empty($banner1)) { echo '<div id="banner-1">'.$banner1.'</div>'; } ?>
<?php echo art_placeholders_output($top1, $top2, $top3); ?>
<div class="art-contentLayout">
<?php if (!empty($left)) echo '<div class="art-sidebar1">' . $left . "</div>";
else if (!empty($sidebar_left)) echo '<div class="art-sidebar1">' . $sidebar_left. "</div>";?>
<div class="<?php $l = null;
if (!empty($left)) $l = $left;
else if (!empty($sidebar_left)) $l=$sidebar_left;
$r = null;
if (!empty($right)) $r = $right;
else if (!empty($sidebar_right)) $r=$sidebar_right;
echo art_get_content_cell_style($l, $r, $content); ?>">
<?php if (!empty($banner2)) { echo '<div id="banner-2">'.$banner2.'</div>'; } ?>
<?php if ((!empty($user1)) && (!empty($user2))) : ?>
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr valign="top"><td width="50%"><?php echo $user1; ?></td>
<td><?php echo $user2; ?></td></tr>
</table>
<?php else: ?>
<?php if (!empty($user1)) { echo '<div id="user1">'.$user1.'</div>'; }?>
<?php if (!empty($user2)) { echo '<div id="user2">'.$user2.'</div>'; }?>
<?php endif; ?>
<?php if (!empty($banner3)) { echo '<div id="banner-3">'.$banner3.'</div>'; } ?>
<?php if (($is_front) or ($node->nid) ): ?>
<?php if (!empty($breadcrumb) || !empty($title) || !empty($tabs) || !empty($tabs2)): ?>
<div class="art-Post">
<div class="art-Post-tl"></div>
<div class="art-Post-tr"></div>
<div class="art-Post-bl"></div>
<div class="art-Post-br"></div>
<div class="art-Post-tc"></div>
<div class="art-Post-bc"></div>
<div class="art-Post-cl"></div>
<div class="art-Post-cr"></div>
<div class="art-Post-cc"></div>
<div class="art-Post-body">
<div class="art-Post-inner">
<div class="art-PostContent">
<?php if (!empty($breadcrumb)) { echo $breadcrumb; } ?>
<?php if (!empty($tabs)) { echo $tabs.'<div class="cleared"></div>'; }; ?>
<?php if (!empty($tabs2)) { echo $tabs2.'<div class="cleared"></div>'; } ?>
</div>
<div class="cleared"></div>
</div>
</div>
</div>
<?php endif; ?>
<?php if (!empty($mission)) { echo '<div id="mission">'.$mission.'</div>'; }; ?>
<?php if (!empty($help)) { echo $help; } ?>
<?php if (!empty($messages)) { echo $messages; } ?>
<?php echo art_content_replace($content); ?>
<?php else: ?>
<div class="art-Post">
<div class="art-Post-tl"></div>
<div class="art-Post-tr"></div>
<div class="art-Post-bl"></div>
<div class="art-Post-br"></div>
<div class="art-Post-tc"></div>
<div class="art-Post-bc"></div>
<div class="art-Post-cl"></div>
<div class="art-Post-cr"></div>
<div class="art-Post-cc"></div>
<div class="art-Post-body">
<div class="art-Post-inner">
<div class="art-PostContent">
<?php if (!empty($breadcrumb)) { echo $breadcrumb; } ?>
<?php if (!empty($tabs)) { echo $tabs.'<div class="cleared"></div>'; }; ?>
<?php if (!empty($tabs2)) { echo $tabs2.'<div class="cleared"></div>'; } ?>
<?php if (!empty($mission)) { echo '<div id="mission">'.$mission.'</div>'; }; ?>
<?php if (!empty($help)) { echo $help; } ?>
<?php if (!empty($messages)) { echo $messages; } ?>
<?php echo art_content_replace($content); ?>
</div>
<div class="cleared"></div>
</div>
</div>
</div>
<?php endif; ?>
<?php if (!empty($banner4)) { echo '<div id="banner-4">'.$banner4.'</div>'; } ?>
<?php if (!empty($user3) && !empty($user4)) : ?>
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr valign="top"><td width="50%"><?php echo $user3; ?></td>
<td><?php echo $user4; ?></td></tr>
</table>
<?php else: ?>
<?php if (!empty($user3)) { echo '<div id="user1">'.$user3.'</div>'; }?>
<?php if (!empty($user4)) { echo '<div id="user2">'.$user4.'</div>'; }?>
<?php endif; ?>
<?php if (!empty($banner5)) { echo '<div id="banner-5">'.$banner5.'</div>'; } ?>
</div>
<?php if (!empty($right)) echo '<div class="art-sidebar2">' . $right . "</div>";
else if (!empty($sidebar_right)) echo '<div class="art-sidebar2">' . $sidebar_right . "</div>";?>
</div>
<div class="cleared"></div>
<?php echo art_placeholders_output($bottom1, $bottom2, $bottom3); ?>
<?php if (!empty($banner6)) { echo '<div id="banner-6">'.$banner6.'</div>'; } ?>
<div class="art-Footer">
<div class="art-Footer-inner">
<?php echo art_feed_icon(url('rss.xml')); ?>
<div class="art-Footer-text">
<?php
if (!empty($footer_message) && (trim($footer_message) != '')) {
echo $footer_message;
}
else {
echo '<p><a href="#">Contact Us</a> | <a href="#">Terms of Use</a> | <a href="#">Trademarks</a> | <a href="#">Privacy Statement</a><br />'.
'Copyright © 2009 '.$site_name.'. All Rights Reserved.</p>';
}
?>
<?php if (!empty($copyright)) { echo $copyright; } ?>
</div>
</div>
<div class="art-Footer-background"></div>
</div>
</div>
</div>
<div class="cleared"></div>
<p class="art-page-footer"><?php echo t('Powered by ').'<a href="http://drupal.org/">'.t('Drupal').'</a>'.t(' and ').'<a href="http://www.artisteer.com/?p=drupal_themes">Drupal Theme</a>'.t(' created with ').'Artisteer'; ?>.</p>
</div>
<?php print $closure; ?>
</body>
</html>
Я таки тюплю по страшному и не пойму что надо (или понимаю что надо, но не понимаю как это вяжеться с оптимизацией).
Давайте напишем ТЗ
Есть главная. На ней есть ссылки на материалы, которые должны быть обёрнуты в h2, а в теге h1 - название сайта. Правильно?
Сами материалы. При отображении анонсом (тизером), должны отображать заголовок в h2, при полном просмотре - h1.
Так?
вроде то что надо.
У меня все в принципе сделано единственное у меня при отображение на главной тизера показывается H1 а мне надо что бы он не показывался. Ну я как понял почти уверен то что вы описали это то что надо.
Поврояюсь - это стандартное проставление заголовков с темах друпала.
То есть в page.tpl.php вставляем между крошками и табами:
<h1 class="title"><?php print $title ?></h1>
<?php if (!empty($tabs)) { echo $tabs.'<div class="cleared"></div>'; }; ?>
В node.tpl.php ничего не меняем.
Что есть крошки и табы???? Я просто попробовал поменять на стандартную тему и у меня все так же и осталось.
Забыл сменить фильтр. См. пост выше.
Ура Огромное СПАСИБО 2 дня этого добивался глаза в кучу. Фух славу богу....
правда теперь на страницах под админом дублируются кнопки просмотр ----- изменить
Вы что,добавили все три строчки что я привёл? Добавить надо одну! Я же написал между крошками и табами и зная что Вы скорее всего меня не поймёте, написал их так же.
Ой я тупанул просто голова уже не соображала на автопилоте делал.я думал заменил просто а оказалось нижнию не заменил.
Все спасибо большое за помощь.