Page 1 of 2

Убрать заголовок для определённой страницы

Posted: Wed Mar 30, 2011 6:58 am
by 14m3r
Ребят, подскажите пожалуйста, как убрать заголовок для определённой страницы? Не <title>....</title>, а именно отображаемый заголовок на конкретной странице. Не нашёл такой опции в админке. Возможно это конечно делается одной строчкой в коде, я просто не курсе, просьба не пинать. ::) Лазил по форуму (искал запросами как на русском так и на аглицком), ничего не нашёл. =(

Re: Убрать заголовок для определённой страницы

Posted: Wed Mar 30, 2011 12:52 pm
by Fenik17
Это делается одним условным оператором в шаблоне.
Только надо определиться, по какому признаку не показывать заголовок.

Re: Убрать заголовок для определённой страницы

Posted: Wed Mar 30, 2011 7:52 pm
by 14m3r
Fenik17 wrote:Это делается одним условным оператором в шаблоне.
Только надо определиться, по какому признаку не показывать заголовок.
Ну вобщем-то, задача такова, что нужно оставить заголовок везде, кроме главной страницы. Понимаю, что звучит достаточно тривиально, но тем не менее. ::)

Re: Убрать заголовок для определённой страницы

Posted: Thu Mar 31, 2011 7:26 am
by Fenik17

Code: Select all

{if !$content_obj->DefaultContent()}<h1>{title}</h1>{/if}

Re: Убрать заголовок для определённой страницы

Posted: Thu Mar 31, 2011 7:50 am
by 14m3r
Fenik17 wrote:

Code: Select all

{if !$content_obj->DefaultContent()}<h1>{title}</h1>{/if}
Я так понял, эту конструкцию необходимо вставить в шаблоне, в блоке контента, вместо <h2>{$pagetitle}</h2>? Если да, вставил, не помогло. =(

Re: Убрать заголовок для определённой страницы

Posted: Thu Mar 31, 2011 8:07 am
by Fenik17
Что за {pagetitle}? Т.е. какая версия cmsms?

Re: Убрать заголовок для определённой страницы

Posted: Thu Mar 31, 2011 9:14 am
by 14m3r
Fenik17 wrote:Что за {pagetitle}? Т.е. какая версия cmsms?
CMSка последняя, которая на данный момент доступна для скачивания. 1.9.4.1, правда шаб не "родной" (QuattroSimple), но дело не в этом. Пробовал и на дефолтном, тоже самое - не сработало.

Re: Убрать заголовок для определённой страницы

Posted: Thu Mar 31, 2011 9:47 am
by Fenik17
Fenik17 wrote:Пробовал и на дефолтном, тоже самое - не сработало.
Это странно. У меня работает.
Ну, можно тогда пользовательским тегом сделать. Код тега:

Code: Select all

global $gCms;
$contentObj = $gCms->variables['content_obj'];
return (!$contentObj->DefaultContent()) ? ('<h1 class="title">' . $contentObj->Name() . '</h1>') : '';

Re: Убрать заголовок для определённой страницы

Posted: Thu Mar 31, 2011 12:02 pm
by 14m3r
Fenik17 wrote:...Ну, можно тогда пользовательским тегом сделать. Код тега:

Code: Select all

global $gCms;
$contentObj = $gCms->variables['content_obj'];
return (!$contentObj->DefaultContent()) ? ('<h1 class="title">' . $contentObj->Name() . '</h1>') : '';
Можно поподробнее? Создал пользовательский тэг с указанным выше содержимым и обозвал его "h1title", потом вставил его на страничку
{if !$content_obj->DefaultContent()}{h1title}{/if}
Подозреваю, что то-то не то намудрил. Подскажите пожалуйста, как правильно сделать, чтоб всё-таки это заработало.. ::)

Re: Убрать заголовок для определённой страницы

Posted: Thu Mar 31, 2011 12:07 pm
by Fenik17
14m3r wrote:Подскажите пожалуйста, как правильно сделать, чтоб всё-таки это заработало.. ::)
Надо просто в шаблоне вставить тег {h1title}, все условия уже в коде тега есть. Т.е. {if !$content_obj->DefaultContent()}{h1title}{/if} заменить на {h1title}.

Re: Убрать заголовок для определённой страницы

Posted: Thu Mar 31, 2011 1:57 pm
by 14m3r
Fenik17 wrote:
14m3r wrote:Подскажите пожалуйста, как правильно сделать, чтоб всё-таки это заработало.. ::)
Надо просто в шаблоне вставить тег {h1title}, все условия уже в коде тега есть. Т.е. {if !$content_obj->DefaultContent()}{h1title}{/if} заменить на {h1title}.
Всё сделал как написано, заголовок на главной, ровно как и на всех остальных, по прежнему остался. :(

Re: Убрать заголовок для определённой страницы

Posted: Thu Mar 31, 2011 7:11 pm
by Fenik17
Шаблон в студию.

Re: Убрать заголовок для определённой страницы

Posted: Fri Apr 01, 2011 6:38 am
by 14m3r

Code: Select all

{content assign="capturedcontent"}{if !isset($pagetitle)}{capture assign='pagetitle'}{title}{/capture}{/if}
{* captured the content and title tag so we can reuse it in template *} 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<__html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
  <head>
    <title>{if !empty($pagetitle)}{$pagetitle}{else}{title}{/if} - {sitename}</title>
    {if isset($canonical)}      
    <link rel="canonical" href="{$canonical}" />{elseif isset($content_obj)}
    <link rel="canonical" href="{$content_obj->GetURL()}" />{/if}
    {metadata}
    {cms_selflink dir='start' rellink=1} 
    {cms_selflink dir='prev' rellink=1} 
    {cms_selflink dir='next' rellink=1} 
    {cms_stylesheet} 
    {* get Cuprum font from Google *}
    <link href="http://fonts.googleapis.com/css?family=Cuprum" rel="stylesheet" type="text/css" />
{literal}
<__script__ type="text/javascript" src="/lib/jquery/js/custom/swfobject.js"></__script>
{/literal}
  </head>
  </__body>
<div class="main">
{* Template options, controls for certain blocks *}
{content block="headerteaser" description="Show Slideshow in Header" oneline="true" size="1" default="-" assign="teaser" page_tab="Header Options"}{if empty($teaser)}{assign var="teaser" value="+"}{/if}
{capture assign="gfolder"}{content block="galleryfolder" oneline="true" label="Enter Gallery Module foldername for Header Slideshow" page_tab="Header Options"}{/capture}
{content block="contentmiddle" description="Show sliding content area with Contact form" oneline="true" size="1" default="-" assign="middle" page_tab="Page Options"}{if empty($middle)}{assign var="middle" value="+"}{/if}
{capture assign="midtitle"}{content block="midtitle" oneline="true" label="Enter Title for sliding content area" page_tab="Page Options"}{/capture}
{capture assign="midleft"}{content block="midleft" label="Enter your content for Middle content block on the left" page_tab="Page Options"}{/capture}
{capture assign="midright"}{content block="midright" label="Enter your content for Middle content block on the right" page_tab="Page Options"}{/capture}
{content block="contentbottom" description="Show two content blocks on bottom" oneline="true" size="1" default="-" assign="bottom" page_tab="Page Options"}{if empty($bottom)}{assign var="bottom" value="+"}{/if}
{capture assign="bottomleft"}{content block="bottomleft" label="Enter your content for Bottom content block on the left" page_tab="Page Options"}{/capture}
{capture assign="bottomright"}{content block="bottomright" label="Enter your content for Bottom content block on the right" page_tab="Page Options"}{/capture}
{content block="sidebar" description="Activate right Sidebar." oneline="true" size="1" default="-" assign="sbar" page_tab="Sidebar Options"}{if empty($sbar)}{assign var="sbar" value="+"}{/if}
{content block="sidenews" description="Show News in right Sidebar." oneline="true" size="1" default="-" assign="snews" page_tab="Sidebar Options"}{if empty($snews)}{assign var="snews" value="+"}{/if}
{capture assign="scontent"}{content block="scontent" label="Enter custom Content for right Sidebar" page_tab="Sidebar Options"}{/capture}
{* end of options *}
    <div class="container_full pageTop"> 
      <div class="container_12 clearfix">  
        <div class="grid_3 pageLogo">
          <h1>{cms_selflink dir="start" image='theme/Logo.png' alt=$sitename imageonly='1'}</h1>   
        </div>   
        <!-- Начало Навигации -->  
        <div class="grid_9 pageNavigation" style="position:relative; z-index: 999999;">
         {menu template="theme : pageNavigation"}
          <!-- Окончание Навигации -->
        </div>
        </div>
<div id="sb" style="position:relative; z-index:0;">
<object name="Teaser" id="Teaser" height="200" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="926">
<!-- for IE -->
<param name="movie" value="/123.swf" />
<param name="allowfullscreen" value="false" />
<param name="allowscriptaccess" value="always" />
<param name="flashvars" value="XMLpath=/123.xml" />
<param name="bgcolor" value="#A5C603" />
<param name="wmode" value="opaque" />
<!-- for other browsers -->
<embed name="Teaser" wmode="opaque" bgcolor="#A5C603" allowfullscreen="false" src="/123.swf" id="Teaser" allowscriptaccess="always" height="200" flashvars="XMLpath=/123.xml" width="926" />
</object>
</div>
      <!-- end pageTop -->
    </div>
    <!-- pageBreadcrumbs -->
    <div class="container_full pageBreadcrumbs"> 
      <div class="container_12">  
        <div class="grid_12">
          {breadcrumbs delimiter='&raquo;' starttext='Текущая страница'}   
        </div> 
      </div>
      <!-- end pageBreadcrumbs -->
    </div>
    <!-- Топ контента -->
    <div class="container_full contentWrapper"> 
      <div class="container_12 clearfix">
         {if $sbar == "+"}
        <div class="grid_9">

      <!-- <h2>{$pagetitle}</h2> -->
        
        {h2title} <!-- у меня заголовки используются H2 - соответственно в польз. тэге тоже прописал H2 -->

            {$capturedcontent} 
        </div>
        <div class="grid_3 pageSidebar">
         {* show submenu of current page if there is one *}
         {menu template="sidebarNavigation" childrenof=$page_alias}
         <div class="techpod">
         <a href="#"><img class="techpodimg" src="theme/abon.jpg"></a>
         <a href="#"><img class="techpodimg" src="theme/techpod.jpg"></a>
         </div>
         {* show latest news *}
         {if $snews == "+"}
         {news summarytemplate="sidebarNews" number="4"}
         {/if}
         {* Custom sidebar content *}
         {if isset($scontent)}
         {$scontent}
         {/if}
        </div>
        {else}
        <div class="grid_12">
          <h2>{$pagetitle}</h2>
            {$capturedcontent} 
        </div>
      {/if}
      </div>
      <!-- Конец распорки -->
    </div>
    {if $middle == "+"}
    <!-- Начало среднего блока контента -->
    <div class="container_full contentMiddle"> 
      <div class="container_12 clearfix"> 
        <div class="grid_12"> 
          <a href="#" class="slideButton" title="Нажмите чтобы прочесть подробнее">Подробнее</a> {if !empty($midtitle)}<h3>{$midtitle}</h3>{/if}  
          <div class="slidePanel clearfix">
           <div class="grid_6 alpha">{$midleft}</div>
           <div class="grid_6 omega">{if !empty($midright)}{$midright}{else}{FormBuilder form="pageForm"}{/if}</div>     
          </div> 
        </div>
      </div>
      <!-- Окончание среднего блока контента -->
    </div>
    {/if}
    {if $bottom == "+"}
    <!-- Начало нижнего блока контента -->
    <div class="container_full contentBottom">
     <div class="container_12 clearfix">
      <div class="grid_6">{$bottomleft}</div>
      <div class="grid_6">{$bottomright}</div>
     </div>
      <!-- Окончание нижнего блока контента -->
    </div>
    {/if}
    <!-- Враппер -->
<div class="hFooter"></div>
    <!-- /Враппер -->
</div>
    <!-- Начало подвала -->
<div class="footer">
  <div class="copyright">
     <div class="container_12 clearfix">
      <div class="grid_12"><p>{global_content name='footer'}</p></div>
 </div>
 </div>
</div>
   <!-- Окончание подвала -->
   <!-- Подключение скриптов -->
<__script__ type="text/javascript" src="/lib/jquery/js/jquery-1.4.2.min.js"></__script> 
{* js for Navigation *}
<__script__ type="text/javascript" src="/lib/jquery/js/custom/hoverIntent.js"></__script>   
<__script__ type="text/javascript" src="/lib/jquery/js/custom/superfish.js"></__script> 
{* cycle plugin for teaser slide and news scroller *}
{if ($teaser == "+") or ($snews == "+")}
<__script__ type="text/javascript" src="/lib/jquery/js/custom/jquery.cycle.all.min.js"></__script>
{/if}
<__script__ type="text/javascript" src="/lib/jquery/js/custom/functions.js"></__script>
<__body>
</__html>

Re: Убрать заголовок для определённой страницы

Posted: Fri Apr 01, 2011 6:57 am
by Fenik17
Скорее всего, не выполняется условие:

Code: Select all

{if $sbar == "+"}
что приводит к выводу того, что в else:

Code: Select all

        {else}
        <div class="grid_12">
          <h2>{$pagetitle}</h2>
            {$capturedcontent} 
        </div>
Замените <h2>{$pagetitle}</h2>, которое в else на {h2title}.

Re: Убрать заголовок для определённой страницы

Posted: Fri Apr 01, 2011 8:15 am
by 14m3r
Fenik17 wrote:Замените <h2>{$pagetitle}</h2>, которое в else на {h2title}.
Заменил, тоже самое.
Fenik17, спасибо большое Вам за участие, но я решил забить на эту недоработку девелоперов, нету уже ни сил, ни времени копаться с этим. Вообще, подумалось, насколько всё же можно было бы облегчить такие задачи, если б при создании страничек был бы подобный чекбокс - "Отображать заголовок" или нет. Не пришлось бы устраивать разные "пляски с бубном". Вобщем, нашёл достаточно простое и тупое решение, закрыть этот хидер блоком, надвинув на него шапку заголовка страницы. =) Остаётся лишь надеяться на то, что в будущих версиях добавят эту нужную опцию. Ещё раз, спасибо.