【问题标题】:Typo3 getting image path with CONTENTTypo3 使用 CONTENT 获取图像路径
【发布时间】:2014-12-30 11:10:07
【问题描述】:

我在typo3 上设置了一个新站点,页眉中有一个引导轮播。这个轮播位于网站的每个页面的顶部,所以我为此创建了一个部分。问题是我希望轮播的图片可以通过后端进行交换。所以我在一个隐藏的网站上创建了一个图像元素,并试图用打字稿来获取图片。到目前为止,它看起来像这样:

lib.slider=CONTENT
lib.slider {
    table=tt_content


    wrap=<div class="item"><img src="|" /></div>

    select {
        pidInList=12
        where=uid=10

    }


}

我以这种方式获取图片,它们显示在滑块中,但仅以格式化的方式显示,所有 &lt;csc-textpic&gt;-crap 围绕它。有没有办法只获取图像路径,以便它只需要由&lt;img src""/&gt; 包装?或者,如果有更优雅的方式来插入轮播,我也愿意接受新的建议。

【问题讨论】:

    标签: typo3 typoscript typo3-6.1.x typo3-6.2.x


    【解决方案1】:

    您可以使用页面的“资源”标签,而不是在隐藏页面上使用内容元素,您可以在其中上传文件(在您的案例中为图片)。通常您会为此使用 TYPO3 页面树的顶级上的页面,因此您可以继承选定的图像到所有子页面。

    在您将图像上传/选择到页面后,您可以使用以下 TypoScript 来渲染图像滑块。

    lib.slider = FILES
    lib.slider {
      references {
        data = levelmedia:-1, slide
      }
      renderObj = IMAGE
      renderObj {
        file.import.data = file:current:uid
        file.treatIdAsReference = 1
        altText.data = file:current:title
        wrap = <div class="slide">|</div>
      }
      stdWrap.wrap = <div class="slider">|</div>
    }
    

    在上面的示例中,我使用levelmedia:-1, slide 将所选图像从当前页面继承到所有子页面。如果您只想在前端输出img 标签,请删除上面示例中的所有换行。

    【讨论】:

    • 到目前为止效果很好,谢谢。有没有办法指定页面 id,以便打字稿仅从一个页面加载图像?据我所知,现在它首先从页面即时加载资源(如果即时在子页面上,它加载存储在那里的图片)。而且由于我不是很擅长排版,有没有办法计算轮播导航的图片?
    • 可以,可以指定从一页加载图片,使用references { table = pages uid.data = YOUR-PAGE-UID fieldName = media } 不知道是否可以统计TS中的图片数量,但是如果使用JS轮播的话,那么我建议你使用 JavaScript 来计算图像的数量。
    • 如何随机显示图片?
    • @raj 请创建一个新问题。
    • @derhansen 我找到了答案,我们需要在引用选项中添加 listNum = rand 以随机显示图像。即)引用 { data = levelmedia:-1, slide listNum = rand }
    猜你喜欢
    • 1970-01-01
    • 2014-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多