Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
HMENU浏览-即使ATagTitle为空也显示链接环绕(TYPO3 8.7.x)_Typo3_Typoscript_Typo3 8.x - Fatal编程技术网

HMENU浏览-即使ATagTitle为空也显示链接环绕(TYPO3 8.7.x)

HMENU浏览-即使ATagTitle为空也显示链接环绕(TYPO3 8.7.x),typo3,typoscript,typo3-8.x,Typo3,Typoscript,Typo3 8.x,我使用下面的打字稿来制作一个特别的菜单。当然,如果ATagTitle.dataWrap为空,现在就没有linkWrap。如果{field:title}为空以便使用linkWrap,那么将作为ATagTitle.dataWrap的内容的最佳方法是什么 [treeLevel = 3,4,5] lib.navHorizon = COA lib.navHorizon { stdWrap.wrap = <nav class="row nav

我使用下面的打字稿来制作一个特别的菜单。当然,如果
ATagTitle.dataWrap
为空,现在就没有linkWrap。如果
{field:title}
为空以便使用
linkWrap
,那么将
作为
ATagTitle.dataWrap
的内容的最佳方法是什么

  [treeLevel = 3,4,5]
        lib.navHorizon = COA
        lib.navHorizon {
            stdWrap.wrap = <nav class="row nav_horizontal">|</nav>
            10 = HMENU
            10 {
                special = browse
                special {
                    items = prev
                }

            1 = TMENU
            1.noBlur = 1
            1.NO {
                ATagTitle.dataWrap = {field:title}
                linkWrap = <div class="d-none d-md-block col-4 nav_prev"><i class="fa fa-angle-double-left"></i> |</div>    
            }
        }

        25 = HMENU
        25 {
            special = browse
            special {
                items = up
            }

            1 = TMENU
            1.noBlur = 1
            1.NO {
                ATagTitle.dataWrap = {field:title}
                linkWrap = <div class="d-none d-md-block col-4 nav_up">|</div>
            }
        }

        20 = HMENU
        20 {
            special = browse
            special {
                items = next
            }

            1 = TMENU
            1.noBlur = 1
            1.NO {
                ATagTitle.dataWrap = {field:title}
                linkWrap = <div class="d-none d-md-block col-4 order-3 nav_next">| <i class="fa fa-angle-double-right"></i></div>
            }
        }
    }

[global]
[treeLevel=3,4,5]
lib.navHorizon=COA
lib.navHorizon{
stdWrap.wrap=|
10=汉努
10 {
特殊=浏览
特别的{
项目=上一个
}
1=t菜单
1.noBlur=1
1{
ATagTitle.dataWrap={field:title}
linkWrap=|
}
}
25=汉努
25 {
特殊=浏览
特别的{
项目=向上
}
1=t菜单
1.noBlur=1
1{
ATagTitle.dataWrap={field:title}
链接包裹=|
}
}
20=汉努
20 {
特殊=浏览
特别的{
项目=下一个
}
1=t菜单
1.noBlur=1
1{
ATagTitle.dataWrap={field:title}
linkWrap=|
}
}
}
[全球]
扩展解释: 我有一行有三列。如果包含上一页链接的第一列为空,则该列的HTML也将丢失,因此布局不再正确

由于(几乎)typoscript中的每个对象都具有stdWrap功能,因此您可以“包装”数据包装:

ATagTitle.dataWrap = {field:title}
ATagTitle.dataWrap.ifEmpty = &nbsp;
由于(几乎)typoscript中的每个对象都具有stdWrap功能,因此您可以“包装”数据包装:

ATagTitle.dataWrap = {field:title}
ATagTitle.dataWrap.ifEmpty = &nbsp;

从您的补充信息中,我了解到问题不在于标题是空的,而在于根本没有页面。因此,如果没有上一页,它将根本不会“执行”lib.navHorizon.10.1

您可以通过不在链接上设置环绕,而是在Humenu上设置环绕来解决此问题:

10 = HMENU
10 {
  special = browse
  special {
    items = prev
  }

  wrap = <div class="d-none d-md-block col-4 nav_prev"><i class="fa fa-angle-double-left"></i> |</div>    

  1 = TMENU
  1.noBlur = 1
  1.NO {
    ATagTitle.dataWrap = {field:title}
  }
}
10=HMENU
10 {
特殊=浏览
特别的{
项目=上一个
}
包裹=|
1=t菜单
1.noBlur=1
1{
ATagTitle.dataWrap={field:title}
}
}

这将确保始终呈现换行符,即使没有页面。

从您的其他信息中,我了解到问题不是标题为空,而是根本没有页面。因此,如果没有上一页,它将根本不会“执行”lib.navHorizon.10.1

您可以通过不在链接上设置环绕,而是在Humenu上设置环绕来解决此问题:

10 = HMENU
10 {
  special = browse
  special {
    items = prev
  }

  wrap = <div class="d-none d-md-block col-4 nav_prev"><i class="fa fa-angle-double-left"></i> |</div>    

  1 = TMENU
  1.noBlur = 1
  1.NO {
    ATagTitle.dataWrap = {field:title}
  }
}
10=HMENU
10 {
特殊=浏览
特别的{
项目=上一个
}
包裹=|
1=t菜单
1.noBlur=1
1{
ATagTitle.dataWrap={field:title}
}
}

这将确保始终呈现换行符,即使没有页面。

{field:title}
是否为空?这是书名。我不认为你可以创建一个没有标题的页面(在常规工作流程中),如果没有上一页,那么菜单中的页面标题是空的。
{field:title}
是空的吗?这是书名。我不认为你可以创建一个没有标题的页面(在正常的工作流程中),如果没有上一页,菜单中的页面标题是空的。我只是在TYPO3 9中尝试了这个,但它不起作用。我认为ifEmpty是在{field:title}被title字段中的值替换之前解析的,这意味着它不会将其视为空。使用
ATagTitle.dataWrap.field=title
确实有效。如果在解决
{field:title}
之前计算了
ifEmpty
(并替换内容),则这是一个非常严重的错误。在您的情况下,
.field
的使用是可能的,因为您的包装中只有字段内容,但是如果使用需要更多,该怎么办?然后它将失败。对于以后的
ifEmpty
评估,您可以插入一个额外的
stdWrap
层,使用:
ATagTitle.dataWrap.stdWrap.ifEmpty=
我只是在TYPO3 9中尝试了这个方法,但它不起作用。我认为ifEmpty是在{field:title}被title字段中的值替换之前解析的,这意味着它不会将其视为空。使用
ATagTitle.dataWrap.field=title
确实有效。如果在解决
{field:title}
之前计算了
ifEmpty
(并替换内容),则这是一个非常严重的错误。在您的情况下,
.field
的使用是可能的,因为您的包装中只有字段内容,但是如果使用需要更多,该怎么办?然后它将失败。对于以后的
ifEmpty
评估,您可以插入另一层
stdWrap
,其中包含:
ATagTitle.dataWrap.stdWrap.ifEmpty=
,感谢您的帮助,但这并不能解决我的问题。我将扩展对我的问题的解释,使其更易于理解。这太完美了。谢谢!谢谢你的帮助,但这并不能解决我的问题。我会进一步解释我的问题,让它更容易理解。太好了。谢谢!