【发布时间】:2017-04-25 14:17:00
【问题描述】:
在我们的网站上,其他管理员通过主页的“资源”选项卡添加图像。这些图像在主页上的滑块中显示为横幅。但是,现在他们希望能够添加指向特定图像的链接。
我对此的第一个想法(在收到一些关于制作要添加到页面的图像的循环的帮助之后)也许是让他们能够将链接添加到我看到的“标题”或“标题”位置那里。然后,在滑块“创建”功能上,从图像中提取所述数据,并在滑块完成构建之前使<a> 环绕图像。我已经测试了具有此功能的滑块插件,并且可以正常工作,但是,我似乎无法从“标题”或“标题”中提取任何内容并以任何方式将其添加到图像中。
我的另一个想法是,有没有办法扩展后端,给他们一个实际的位置来粘贴图像上的链接,这样我就可以拉它并通过打字稿包装图像,或者我可以从标题和wrap image in <a> "if" 链接可用。
换句话说,打字稿有“if”语句的类型吗?到目前为止,感谢maholtz,我所做的如下:
#BANNER IMAGES LOOP BEGIN
page.10.marks.topimage = TEXT
page.10.marks.topimage {
# retrieve data
data = levelmedia: -1, "slide"
override.field = media
# we have some filenames in a list, let us split the list
# and create images one by one
# if there are five images selected, the CARRAY "1" will be executed
# five times where current is loaded with only one filename
split {
# the images are separated via ","
token = ,
# you can do funny stuff with options split, f.e. if you want to give first
# and last image a different class... but thats another topic;)
# we just say, render every splitted object via CARRAY "1"
cObjNum = 1
1 {
# just render the single image,
# now there should be one filename in current only
10 = IMAGE
10 {
file.import.wrap = fileadmin/user_upload/|
file.import.current = 1
border = 0
file.height = 670
file.width = 1800
altText = Banner
titleText = Banner
# attempt to add link to image if available
caption.1.typolink.parameter.field = image_link
caption.1.typolink.parameter.listNum.stdWrap.data = register:IMAGE_NUM_CURRENT
}
}
}
wrap = <div id="slides">|</div>
}
#BANNER IMAGES LOOP END
我在想也许我可以这样做:
10 {
file.import.wrap = fileadmin/user_upload/|
file.import.current = 1
border = 0
file.height = 670
file.width = 1800
altText = Banner
titleText = Banner
# attempt to add link to image if available
caption.1.typolink.parameter.field = ???
caption.1.typolink.parameter.listNum.stdWrap.data = register:IMAGE_NUM_CURRENT
}
但正如您所看到的,我很难理解这是否能正常工作。谁能帮我指出正确的方法。
如前所述,也许我可以做两件事中的一件:
- 从“标题”或“标题”中提取链接并将其添加到输出的图像日期,以便我可以使用该客户端将图像包装在适当的
a标记中,|或 | - 从那里拉链接并使用打字稿将图像包装在
a标签中
【问题讨论】:
-
并非 TYPO3 中的所有内容都需要使用打字稿来完成。您是否考虑过为此进行扩展?这使它更灵活、更容易编辑并且也很容易设置(如typo3.org/extensions/repository/view/flexslider)。我可以推荐它,它很简单。
-
@Michael 我有,到目前为止,我尝试构建的每个扩展都失败了,甚至完全崩溃了后端。到目前为止,这是我发现的唯一简单方法,无需对 content.php 本身进行太多编辑。老实说,我是一名程序员,尽管有外部帮助,阅读所有文档,观看数小时的视频(对于我能找到的英文视频)我真的完全不明白这个东西。我是这里唯一可以让它发挥作用的人。我需要一个适合我所知道的解决方案,或者有“逐步”的小结说明。您可以在 to @mtmww.com 上找到横幅
-
也就是说,我可以通过内容文件上的 php 来完成这一切,但拥有该网站的人不希望这样做,因为他们希望尽可能多地通过“后端”完成,所以他们最终可以学会自己做...
-
试试 flexslider 扩展,它会完全满足这种情况的需要。 Flexslider 也是响应式的,所以我认为它可能是您的解决方案。顺便说一句:
content.php是什么意思? -
您使用哪个 TYPO3 版本?链接在哪里以及如何编辑?哪个表/字段?您的代码示例看起来不错,但主要问题是,您将链接保存在哪个字段中?恕我直言,扩展的主要问题是,它们通常是为一个问题而编写的......这永远不会满足你对 100% 的需求......
标签: typo3 typo3-6.2.x