标签: typoscript

Typoscript导航设置

我是typo3的新手,我必须设置导航.我已经完成了在Timerate找到的教程,并且我已经构建了演示导航(教程中的第2周).

现在我必须设置一个必须如下的导航:

Link 1 | Link 2 | Link 3 | Link 4
Run Code Online (Sandbox Code Playgroud)

back en结构如下:

Link 1
Link 2
Link 3 (shortcut to sub link 1)
    Sublink 1
    Sublink 2
Link 4
Run Code Online (Sandbox Code Playgroud)

当我在链接1,链接2和链接4指定的部分时,整个菜单工作正常,但是当我点击链接3时没有任何显示.

这些Sublinks将在辅助导航中显示

这是我在root ts模板上的typoscript(我正在使用TemplaVoila):

lib.field_topmenu = HMENU
lib.field_topmenu {
    special = directory
    special.value = {$idMain}
    entryLevel = 2
    1 = TMENU
    1.NO = 1
    1.wrap = <div id="menu"><ul> | </ul></div>
    1.NO.wrapItemAndSub = <li>|</li>
    1.ACT < .1.NO
    1.ACT.ATagParams = class='active'
    2 < .1
}
Run Code Online (Sandbox Code Playgroud)

实现这一目标的最佳方法是什么?

typo3 typoscript

2
推荐指数
1
解决办法
3199
查看次数

Typo3:添加锚但不知道​​为什么

我在页面上有一个页面内容元素.它有ID 3,它有一个翻译.使用以下Typoscript读出此元素

lib.marker = RECORDS
lib.marker {
  tables=tt_content
    source= 3
    dontCheckPid = 1
  languageField = sys_language_uid
    select.languageField = sys_language_uid
}
Run Code Online (Sandbox Code Playgroud)

对于默认语言,一切正常.但是对于我的其他语言,我得到了

<a id="c605"></a>
Run Code Online (Sandbox Code Playgroud)

div我最初想要的之前显示.我查看了页面内容的HTML,并且应该有类似的内容.有任何想法吗?

编辑:

这里是通过TS对象浏览器收集的内容:

[tt_content] = CASE
    [key]
    [stdWrap]
        [innerWrap]
        [innerWrap2] = | <p class="csc-linkToTop"><a href="#">{LLL...
        [prepend] = TEXT
            [dataWrap] = <a id="c{field:_LOCALIZED_UID}"></a>
            [if]
                [isTrue]
                    [field] = _LOCALIZED_UID
Run Code Online (Sandbox Code Playgroud)

multilingual typo3 typoscript

2
推荐指数
1
解决办法
2267
查看次数

typoscript:根据Page-ID和GET参数构建URL

我必须使用typoscript替换我的typo3页面上的标记来构建到另一个页面的链接(即同一页面的另一种类型).

对于此链接,我必须设置与当前页面相同的查询参数,以及当前页面的页面ID <a href="index.php?id=11&param1=abc&param2=def&type=123">

到目前为止,我将收到的QUERY_STRING传递给以下站点.当前页面的路径没有id参数时会出现问题,例如由RealURL设置.

所以我需要的是这样的映射:

mysite.com/about_us  
     ==>  mysite.com/index.php?id=11&type=123&L=1

mysite.com/index.php?id=33&param1=abc&param2=def&L=1
     ==>  mysite.com/index.php?id=33&param1=abc&param2=def&L=1
Run Code Online (Sandbox Code Playgroud)

这是我试过的:

page.10.marks.printlink = HTML
page.10.marks.printlink.value = dummy
# For plugin pages with querystring
page.10.marks.printlink.value.data= getIndpEnv:QUERY_STRING
# For other Typo3 pages
page.10.marks.printlink.value.ifEmpty.data = page:uid
page.10.marks.printlink.value.ifEmpty.dataWrap = id=|
page.10.marks.printlink.value.wrap = <a target="_blank" href="index.php?|&type=123">print</a>
Run Code Online (Sandbox Code Playgroud)

这适用于大多数情况,但是如果RealURL PREVar就位则不适用,在这种情况下会映射以下内容:

mysite.com/de/über_uns
  ==>  mysite.com/de/index.php?L=2&type=123
Run Code Online (Sandbox Code Playgroud)

所以,没有id传递!(大概是因为RealURL替换了/de/prevar L=2,但没有设置id)

我的问题是:有没有办法简单地连接page:uidQUERY_STRING?或者我是否还要做更多的typoscript魔术?

谢谢你的任何提示!

typo3 typoscript

2
推荐指数
1
解决办法
6785
查看次数

TypoScript:{field:uid}替换不工作| 每个菜单项不同的CSS类

我有一个标题菜单,并尝试为每个项目定义不同的CSS类.

这就是我所拥有的:

20 = HMENU
  20 {
    special = directory
    special.value = 107
    1 = TMENU
    1 {
      wrap = <ul class="foo" id="mymenu">|</ul>
      expAll = 1
      NO = 1
      NO.allWrap = <li class="first menu_{field:uid}">|</li> || <li class="menu_{field:uid}">|</li> || <li class="last menu_{field:uid}">|</li>
    }
  }
Run Code Online (Sandbox Code Playgroud)

但是在HTML输出中我只是得到了class="first menu_{field:uid}",没有任何东西被替换.

顺便说一下:菜单中的页面条目是指向外部页面的链接.

编辑:

当我们的设计师抱怨非说话类ID时,我们现在滥用了body-class属性:

  NO.allWrap = <li class="first {field:bodyclass_wrap_class}">|</li> || <li class="{field:bodyclass_wrap_class}">|</li> || <li class="last {field:bodyclass_wrap_class}">|</li>      
Run Code Online (Sandbox Code Playgroud)

typo3 typoscript

2
推荐指数
1
解决办法
7161
查看次数

TYPO3多域名

我有一个关于TYPO3中更多域名的问题.

我想构建一个有2个域的树.

如果我加载第一个网址,我想加载第一个网站,

如果我加载第二个网址,我想加载第二个网站.

域存储在每个站点中.

是否可以在不使用.htaccess文件的情况下执行此操作?

有人给我一个教程或帮助吗?

谢谢

typo3 cross-domain typoscript

2
推荐指数
1
解决办法
1578
查看次数

Typoscript数组并在FLUID中使用它们

假设我有一个包含以下网页的项目(请参见屏幕截图)

在此输入图像描述

红色,蓝色,帖子和博客页面的uid分别为1,2,3和4.

现在,我想在Typoscript中定义一个数组或某种列表,其中包含所有根网页的标题.这个数组,我可以在我的FLUID模板中使用它并显示所有标题.

例:

这是可能的吗?

arrays typo3 fluid typoscript

2
推荐指数
1
解决办法
4490
查看次数

Typo3 styles.content.getLeft

实际上我在Typo 7.6.12的typo3模板上工作.我的问题是我无法从左,右或边栏列中获取我的内容.只有正常工作.

我的想法是,用户可以编辑左列的页脚元素和普通列的基本内容.

那是我的代码:

...
10 = FLUIDTEMPLATE
10 {
file = fileadmin/templates/gtstemplate/index.html
layoutRootPath = fileadmin/templates/gtstemplate/layouts/
partialRootPath = fileadmin/templates/gtstemplate/html/partials/

variables {
    content < styles.content.get

    footer < styles.content.getLeft
    footer.slide = -1
  }
}
...
Run Code Online (Sandbox Code Playgroud)

和我的HTML代码.

<div id="containerStart" class="container">
    <f:format.html parseFuncTSPath="">{content}</f:format.html>
</div>

<footer>
  <f:format.html parseFuncTSPath="">{footer}</f:format.html>
  <f:debug title="Results of customers query">{footer}</f:debug>
</footer>
Run Code Online (Sandbox Code Playgroud)

使用footer.slide = -1我希望在所有页面上继承页脚模块.

它真的很混乱,因为正常的列正在处理任何问题,如果我使用它上面的模块.但是任何其他专栏都不起作用.Debug输出NULL.使用较旧的Typo3版本,它可以毫无问题地工作

CSS内容包括在内.

如果有人有任何想法会很酷.最好的答案谢谢.

fluid typoscript typo3-7.6.x

2
推荐指数
1
解决办法
936
查看次数

使用TYPO3的数据处理器8

我尝试使用TYPO3 8的数据处理器来制作我的菜单.

我在TypoScript脚本中有这个代码:

page = PAGE
page{
  10 = FLUIDTEMPLATE
  10 {
      file = fileadmin/abis/templates/BootstrapTmpl.html
      partialRootPath = fileadmin/abis/Partials/
      layoutRootPath =  fileadmin/abis/Layouts/
  }
  dataProcessing {
    10 = TYPO3\CMS\Frontend\DataProcessing\MenuProcessor
    10 {
      entryLevel= 0
      excludeUidList = 27,30,31
      levels = 5
      #includeSpacer = 1
      titleField = nav_title // title
      as = huhu
    }
  }
  ...
}
Run Code Online (Sandbox Code Playgroud)

这部分在一节中:

<f:section name="myMenu" >
    <f:debug title="title">{huhu}</f:debug>
    <f:cObject typoscriptObjectPath="obj.logo" />
    <ul class="nav navbar-nav navbar-left">
        <f:for each="{huhu}" as="menuItem">
             <li>
                {menuItem.text}
                <f:if condition="menuItem.subItems">
                    <f:render section="myMenu" arguments="{myMenu: menuItem.subItems}" />
                </f:if>
            </li>
        </f:for> …
Run Code Online (Sandbox Code Playgroud)

typo3 fluid typoscript typo3-8.7.x

2
推荐指数
1
解决办法
1965
查看次数

搜索TYPO3扩展:全局变量

我正在搜索TYPO3扩展,它允许我定义变量并在TYPO3后端的任何地方使用它们(类似于%CEO_NAME%).

客户想要集中定义名称和地址(例如他们的CEO),以便当另一个人获得工作时,他们可以只更改一次,并在每个RTE,页面标题,关键字等中替换它.

是否有一些扩展可以让我轻松地做到这一点,或者有一个简单的方法可以通过TS实现吗?

如果可能的话,我想避免为此编写自己的扩展,因为该项目的预算有点紧张.

typo3 typoscript typo3-8.x

2
推荐指数
1
解决办法
199
查看次数

TYPO3-是否有(简便)方法来查看静态模板的内容?

在TYPO3中,您通常需要包括扩展中的“静态模板”以使扩展起作用。

来自typo3文档的图像

但是,似乎在TYPO3后端中没有办法看到这些静态模板中实际上是什么印刷字。

我的问题是:有没有办法查看这些静态模板的内容而不浏览扩展的源代码?

typo3 typoscript typo3-extensions

2
推荐指数
1
解决办法
56
查看次数