【问题标题】:Picture-Sitemap for Google with TYPO3带有 TYPO3 的 Google 图片站点地图
【发布时间】:2019-09-24 22:48:29
【问题描述】:

如何使用 TYPO3 为我可以提交给 Google 的图片创建站点地图?

这不是关于从菜单内容元素中扩展图像的站点地图元素,而是我网站所有已发布图像的列表。

【问题讨论】:

    标签: typo3 typo3-9.x typo3-extensions


    【解决方案1】:

    有一个扩展来创建使用图像的 XML 站点地图。但它还不兼容 9 LTS。 https://extensions.typo3.org/extension/tgm_copyright/

    2019 年 12 月更新

    该扩展现在也与 9 LTS 兼容。

    【讨论】:

    • 是的,我知道这个应用程序。但是对于 TYPO3 和 tx_seo,这个 EXT 可能已经过时了。至少我无法在 TYPO3 9.5 上实现 egrnes 更新。
    • 感谢 Paul Beck 我 trotz the EXT。
    【解决方案2】:

    我认为您无法以简单的方式获得所有图像的列表。

    包含图片的方法有多种,所有方法都需要一个副作用来标记图片站点地图的图片。
    此外,您可能会使用不应列出的图像,因为应列出以相同方式使用的其他图像。例如一些背景图片可能值得一提,有些只是像阴影或结构这样的样式。

    在 TYPO3 的早期,您可以为上传中的所有文件建立索引,因为每个使用的图像都被复制到那里,但现在您只能索引您的原始文件夹,并且可能包括未使用的图像。

    您可以使用爬虫扫描所有生成的页面以了解图像的使用情况,但现在可以通过多种方式包含图像。除了旧的img 标签之外,还有picture 和更难的 CSS 在背景属性中隐藏图像以避免容易复制。

    【讨论】:

    • 谢谢 Bernd,很遗憾这不是我想听到的答案。 ;-) 我包含标准 TYPO3 函数的每个图像不是都有一个 ref 索引,只有在 Project drn 计数器中多次包含时才会计数?所以你可以通过 DataProcessor 搜索来自 filadmin 的所有图像并输出流体模板的结果?
    • 我认为这个索引不可靠。在没有管理引用的核心功能的情况下,有时引用会丢失或失效。而且您仍然可能会错过以不寻常方式(例如 css)使用的图像,您还可以从禁用的记录中获取参考。
    【解决方案3】:

    我相信,您可以使用自 TYPO3 7.6 以来可用的数据处理器做一些事情。

    例如使用 DatabaseQueryProcessor 和 FilesProcessor 的组合来获取用户有权访问的所有内容元素:

    lib.yourFluidTemplate = FLUIDTEMPLATE
    lib.yourFluidTemplate {
        10 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
        10 {
            table = tt_content
            pidInList = 1
            # all subpages as well
            recursive = 99
            as = contentElements
    
            dataProcessing {
                10 = TYPO3\CMS\Frontend\DataProcessing\FilesProcessor
                10 {
                    # use field "assets"
                    references.fieldName = assets
                    as = files
                }
            }
        }
    }
    

    lib.yourFluidTemplate 可以是您页面的模板或任何 fluid_styled_content 模板。只要它使用FLUIDTEMPLATE 内容对象。

    应用上面的打字稿后,您的流体模板中应该有一个名为 contentElements 的新变量(as 变量定义了它的名称),并且每个项目都应该有一个带有文件名的 files 键。

    这当然会从您的根页面(在本例中为 1)开始获取所有内容元素不管如果它们有图像或注释,这可能是负载过大。

    编辑:您必须为每种类型的记录添加一个这样的配置,如果它有多个引用图像的字段,则可能为每个记录添加多个 FilesProcessor 配置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-05-01
      • 2017-02-04
      • 2017-11-23
      • 2014-06-21
      • 2021-06-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多