2012-01-21 4 views
0

私のPrestashopインストールでtmheaderlinks.tplで次のコードを編集しようとしています。「About Us」をクリックすると、他のリンクと同じように「アクティブ」になります。 :「PrestaShopの中Prestashopヘッダーリンク用のtplファイルでリンクを有効にする

<ul id="header_links"> 
<li><a href="{$link->getPageLink('index.php')}"{if $page_name == 'index'} class="active"{/if}>{l s='home' mod='tmheaderlinks'}</a></li> 
<li><a href="{$link->getPageLink('prices-drop.php')}"{if $page_name == 'prices-drop'} class="active"{/if}>{l s='specials' mod='tmheaderlinks'}</a></li> 
<li><a href="{$link->getPageLink('contact-form.php')}"{if $page_name == 'contact-form'} class="active"{/if}>{l s='contact' mod='tmheaderlinks'}</a></li> 
<li><a href="{$link->getPageLink('cms.php?id_cms=14')}"{if $page_name == 'about-us'} class="active"{/if}>{l s='About Us' mod='tmheaderlinks'}</a></li> 

変数$ PAGE_NAMEは、ページのIDを使用して設定されており、会社概要ページはPrestaShopののCMS機能から供給されているので、idはに設定されていますCMSから表示されるすべてのページに対してリンクをアクティブにするため、あまり役に立ちません。

About Usエントリの$ page_name変数を置き換えることができる変数はありますか?または、名前の代わりにページタイトルをテストし、そのクラスをアクティブとして設定する方法がありますか?

CMSのAbout Usページで、$ page_name変数に特定の値(about-us)を割り当てることはできますか?

私はPrestashopsフォーラムの近くに来たソリューションのカップルを見て、ではなく、かなりました:

http://www.prestashop.com/forums/topic/139344-css-active-in-cms-pages/

すべてのヘルプは非常に高く評価されるだろう!

編集:私は(神はどのように知っている!)私自身、これを解決し、このラインを使用して購入:

<li><a href="{$link->getPageLink('cms.php?id_cms=14')}"{if {$smarty.server.REQUEST_URI} == '/content/14-about-us'} class="active"{/if}>{l s='About Us' mod='tmheaderlinks'}</a></li> 

クマ心の中で、あなたは何に「/コンテンツ/ 14-について-たち」を変更する必要がありますあなたのURIはあなたのインストールのものです。最高の修正ではありませんが、動作します。

誰かを助ける希望!

+0

答えを見つけた場合は、[**質問はOKです。あなた自身の質問に答えてください**](http://blog.stackoverflow.com/2011/07/its-ok-to-あなた自身の質問/答え)。 –

答えて

3
{if $smarty.get.id_cms == '9'} 

これは同じことです。

9は、page idです。それはCMSセクションで見つけることができます。

関連する問題