简体   繁体   English

TYPO3-TypoScript添加链接参数

[英]TYPO3 - TypoScript add Link Parameters

is it possible to add extra link parameters only to the first menu item (menu-itemfirst) 是否可以仅将额外的链接参数添加到第一个菜单项(菜单项第一)

item1
<div class="menu-itemfirst">
<a onfocus="blurLink(this);" href="planner/">planner</a></div>
item2
<div class="menu-item">
<a onfocus="blurLink(this);" href="concept/">Concept</a>
</div>
etc….

it should look like this… 它应该看起来像这样……

item1
<div class="menu-itemfirst">
<a onfocus="blurLink(this);" href=„int/kdb/eng/planner/">planner</a></div>
item2
<div class="menu-item">
<a onfocus="blurLink(this);" href="concept/">Concept</a>
</div>
etc….

add the parameters: int/kdb (static) and eng (dynamic, the language key) 添加参数:int / kdb(静态)和eng(动态,语言键)

My TS: 我的TS:

lib.mainNavigation = HMENU
    lib.mainNavigation {
      special = 
      excludeUidList = 
      1 = TMENU
      1 {

        noBlur = 0
        NO {
          allWrap = <div class="menu-itemfirst"> | </div><div class="menuline"></div> || <div class="menu-item"> | </div><div class="menuline"></div> || <div class="menu-item"> | </div><div class="menuline"></div>
          stdWrap.htmlSpecialChars = 1
        }

        ACT = 1
        ACT {

            allWrap = <div class="menu-itemfirst-act" style="padding-left:0;"> | </div><div class="menuline"></div> || <div class="menu-item-act"> | </div><div class="menuline"></div> || <div class="menu-item-act"> | </div><div class="menuline"></div>
          stdWrap.htmlSpecialChars = 1
       }    


        }

    }

You can split your menu in two parts and use COA . 您可以将菜单分为两部分,并使用COA Eg something, like this: 例如,像这样:

lib.mainNavigation = COA
lib.mainNavigation.10 = HMENU
lib.mainNavigation.10 {
  1 = TMENU
  1 {
    maxItems = 1
    NO {
      allWrap = <div class="menu-itemfirst"> | </div><div class="menuline"></div>
      stdWrap.htmlSpecialChars = 1
      doNotLinkIt = 1
      stdWrap.wrap = <a onfocus="blurLink(this);" href="int/kdb/{$config.language}/planner/">|</a>
    }

    ACT = 1
    ACT < .NO
    ACT.allWrap = <div class="menu-itemfirst-act" style="padding-left:0;"> | </div><div class="menuline"></div>
  }
}

lib.mainNavigation.20 = HMENU
lib.mainNavigation.20 {
  1 = TMENU
  1 {
    noBlur = 0
    begin = 2
    NO {
      allWrap = <div class="menu-item"> | </div><div class="menuline"></div>
      stdWrap.htmlSpecialChars = 1
    }

    ACT = 1
    ACT < .NO
    ACT.allWrap = <div class="menu-item-act"> | </div><div class="menuline"></div>
  }
}

Please, note, that you need to have then a constant with name config.language , which corresponds to your language mapping and changes within language TS consitions. 请注意,然后需要一个名称为config.language常量 ,该常量与您的语言映射和语言TS条件内的更改相对应。 Sure, you may change the name to more suitable, but then don't forget to change it in TS of the menu. 当然,您可以将名称更改为更合适的名称,但是不要忘记在菜单的TS中进行更改。

Also I didn't test this code, but you should get an idea, what to do. 我也没有测试此代码,但是您应该知道如何做。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM