0

在 Typo3 中以编程方式扩展属性 href 的最佳方法是什么?

链接是由 RTE 设置的,例如

<a class="download" target="_blank" href="fileadmin/ablage/test_material/pdf_1.pdf">

并应改为

<a class="download" target="_blank" href="fileadmin/ablage/test_material/pdf_1.pdf#zoom=100">
4

3 回答 3

0

未经测试的代码:

您可以尝试将该部分添加到参数中

lib.parseFunc_RTE.tags.link.typolink.parameter.append = TEXT
lib.parseFunc_RTE.tags.link.typolink.parameter.append {
  value = #zoom=100
  if.equals.data = parameters:0
  if.equals.substring = -3,3
  if.value = pdf
}

或者您可以尝试使用“部分”

lib.parseFunc_RTE.tags.link.typolink.section.cObject = TEXT
lib.parseFunc_RTE.tags.link.typolink.section.cObject {
  value = zoom=100
  if.equals.data = parameters:0
  if.equals.substring = -3,3
  if.value = pdf
}

但最重要的问题是“if”语句。我假设第一个参数是文件名(我不记得了)。最后 3 个字符应为“pdf”。如果您使用 DAM,则需要检索 UID 并从那里获取文件类型。

只是一个粗略的猜测,这可以给你一个提示,你有哪些参数:

lib.parseFunc_RTE.tags.link.typolink.parameter.append = TEXT
lib.parseFunc_RTE.tags.link.typolink.parameter.append {
  data = parameters : allParams
  htmlSpecialChars = 1
  wrap = ?debug=|
}

附带说明:这将影响所有 RTE 字段!

于 2012-11-16T09:08:58.157 回答
0

如果该链接有固定类,则可以使用 jQuery ...

jQuery(document).ready(function(){
  $('.download').each(function(){
    var linkhref = $(this).attr('href');
    $(this).attr('href', linkhref + '#zoom=100');
  });
});
于 2012-11-15T14:13:44.957 回答
0

这段代码做到了。

parseFunc_RTE.tags.link.typolink.parameter.append = TEXT
parseFunc_RTE.tags.link.typolink.parameter.append {
    value = #zoom=100
    if.equals.data = parameters : allParams
    if.equals.substring = -3,3
    if.value = pdf
}
于 2012-11-20T14:23:24.860 回答