【问题标题】:Typo3: adds anchor but don't know whyTypo3:添加锚但不知道​​为什么
【发布时间】:2012-01-15 02:23:34
【问题描述】:

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

lib.marker = RECORDS
lib.marker {
  tables=tt_content
    source= 3
    dontCheckPid = 1
  languageField = sys_language_uid
    select.languageField = sys_language_uid
}

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

<a id="c605"></a>

在我最初想要的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

【问题讨论】:

  • 您是说您根本不想要锚点,还是说它的 ID 值错误?
  • 我根本不需要锚点,因为我有一个与该锚点关联的样式表,现在设计有点被破坏了。锚点根本不应该出现。
  • 查看我编辑的关于如何取消锚点的答案。但是请注意,当您链接到内容元素时会使用锚点。也许最好修改锚点,让它有一个 CSS 类,这样你就可以确保它不会弄乱你的布局。
  • 目前我已获取 ID 并将 CSS 设置为 display:none。但我想知道为什么会发生这种情况(什么时候不应该发生)。我也不想使用我的解决方法 (CSS)。
  • 不应该发生什么?锚点“应该出现”,因为它们有很好的用途。看到当您在 RTE 中创建链接时,您可以直接链接到内容元素。然后在浏览器窗口顶部使用给定的内容元素打开页面。锚点通常不会以任何方式影响布局。我不知道您是如何修改链接的,以及为什么它会导致您的情况出现任何问题。

标签: typo3 multilingual typoscript


【解决方案1】:

默认行为应该是即使以默认语言添加锚点。但是,我刚刚检查并意识到 TYPO3 中可能存在错误,因此我实际上使用了不同的设置。

我认为你有两个选择。

a) 完全取消锚点:

tt_content.stdWrap.prepend >

b) 以这种方式修改锚点:

tt_content.stdWrap.prepend {
  if >
  dataWrap = <a id="c{field:_LOCALIZED_UID//field:uid}" class="anchor"></a>
}

这应该会在默认版本和本地化版本中始终为您提供锚点。然后你应该为a.anchor 设置CSS,这样它就不会搞砸你的布局。我不知道它会给你带来什么样的布局问题,所以我目前无法给你更多的建议。

注意:该解决方案在 TYPO3 4.5 中有效可能在以后的版本中有效,但报告无效 在 9.xx 及更高版本中。

【讨论】:

  • 不,它不是以默认语言添加的。对不起,你有如何使用 Typoscript 对象浏览器的链接吗?我目前不知道它是什么以及在哪里可以找到它。
  • Template(在左侧菜单中)然后从选择框中选择 Typoscript Object Browser。你的整个设置就像一棵树。打开节点以探索对象。
  • 似乎是 tt_content.stdWrap.prepend.dataWrap 导致了问题。我认为这是一种默认行为,不应更改?还是我的 CSS 有问题? (但应该使用文本元素,我不能直接设置特定的类)。那么我应该坚持我的解决方法吗?
  • 查看我编辑的答案。我建议选择 b)。
  • 感谢分享b),对sn-p很有帮助!
【解决方案2】:

我使用以下来摆脱不需要的锚标签

tt_content.stdWrap.prepend >
tt_content.stdWrap.innerWrap.cObject.66.10 >

【讨论】:

    【解决方案3】:

    我使用tt_content.stdWrap.prepend &gt; 删除了锚点,但仍然得到它们。

    查看tt_content,锚点也预先添加到“无框架”(section_frame = 66) 的内容元素中。

    这应该摆脱它们:

    tt_content.stdWrap.innerWrap.cObject.66.10 >
    

    (Typo3 v4.6)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-09-10
      • 1970-01-01
      • 1970-01-01
      • 2022-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多