2010-08-13 14 views
9

chcę sprawdzić za pomocą php, jeśli strona jest stroną cms w Magento. Potrzebuję różnych breadcrumbs dla stron cms, więc próbuję to z warunkiem, ale nie mam pojęcia, jak i gdzie patrzeć. Do tej pory to moja breadcrumbs.phtml.Magento - sprawdź, czy cms strona

<?php if(this is a cms page): ?> 

<p>some content</p> 
<?php else: ?> 
<?php if($crumbs && is_array($crumbs)): ?> 
<div class="breadcrumbs"> 
    <ul> 
    <?php $charsges = 0; ?> 
    <?php foreach($crumbs as $_crumbName=>$_crumbInfo): ?> 
     <?php 
     $charsges = strlen($_crumbInfo['label']) + $charsges; 
     if($charsges > 40){ 
      $chars = 18; 
      if(strlen($_crumbInfo['label']) > $chars){ 
       $_crumbInfo['label'] = substr($_crumbInfo['label'], 0, $chars); 
       $_crumbInfo['label'] = $_crumbInfo['label'].'..'; 
      } 
     } 
     ?> 
     <li class="<?php echo $_crumbName ?>"> 
     <?php if($_crumbInfo['link']): ?> 

     <a href="<?php echo $_crumbInfo['link'] ?>" title="<?php echo $this->htmlEscape($_crumbInfo['title']) ?>"><?php echo $this->htmlEscape($_crumbInfo['label']) ?></a> 
     <?php elseif($_crumbInfo['last']): ?> 
     <strong><?php echo $this->htmlEscape($_crumbInfo['label']) ?></strong> 
     <?php else: ?> 

     <?php echo $this->htmlEscape($_crumbInfo['label']) ?> 
     <?php endif; ?> 
     <?php if(!$_crumbInfo['last']): ?> 
     <span>&nbsp;&gt;&nbsp;</span> 
     <?php endif; ?> 
     </li> 
    <?php endforeach; ?> 
    </ul> 
</div> 
<?php endif; ?> 

Greets Rito

Odpowiedz

29

Poniższy powinien dać ci to, co chcesz

//from a block or phtml script 
$this->getRequest()->getModuleName() 

Gdy ta zwraca string 'CMS', jesteś na stronie CMS.

Gdy rada frontowa i administracyjna Magento nie może znaleźć dopasowania na URL, router CMS przejmuje kontrolę. Jeśli router CMS znajdzie dopasowanie (na podstawie skonfigurowanych stron CMS), przekazuje żądanie do modułu cms i kontrolera Mage_Cms_IndexController.

+0

dzięki, źle wypróbować w poniedziałek. – Rito

+0

działa idealnie! Wielkie dzięki. – Rito

+4

'' 'Mage :: app() -> getRequest() -> getRouteName() === 'cms'''' – cmuench

Powiązane problemy