ujamii/openimmo-neos

NEOS CMS 包,用于在基于 NEOS 的网站上展示基于 OpenImmo 的数据

安装次数: 1,716

依赖项: 0

建议者: 0

安全: 0

星标: 1

关注者: 3

分支: 1

开放问题: 0

类型:neos-package

v0.9.5 2021-10-08 13:11 UTC

This package is auto-updated.

Last update: 2024-09-08 19:46:26 UTC


README

Packagist

OpenImmo 和 OpenImmo 标志是 OpenImmo e.V. 的注册商标。此包不是官方发行版,并且我与此组织没有关联!

此 NEOS 包使用 openImmo API 生成 NEOS 需要与这些数据一起工作的所有内容。所有代码都是自动生成的

  • 所有 yaml 配置文件(NodeTypes)
  • 用于访问属性和子节点的 fusion 文件
  • 遵循 Atomic Design 风格的 fusion 文件。主要目的是被您自己的样式覆盖

因此,您将有一堆特殊的新内容元素可用于新文档类型。您可以使用 NEOS 创建/编辑数据或从 OpenImmo 导出存档中导入数据。

内容树可能看起来像这样

An example content tree An example content tree

TODOs / 贡献

如果您喜欢以下列出的功能,或者可能添加了一些自己的改进,请随时进行分支并提交拉取请求。

  • 目前,UPDATE xml 动作不会删除任何内容
  • 目前,该包使用德国 OpenImmo 标签来表示所有内容,因此请使用默认的 NEOS 翻译功能
  • 将数据导出为 xml/zip 格式
  • 在单独的工作空间中进行所有更改,然后将更改发布到其基本工作空间,而不是直接进行更改

安装

composer req ujamii/openimmo-neos

用法

  1. 安装 composer 包。
  2. (可选) 创建导入的根节点(见下文)
  3. 完成 :-)

将 OpenImmo XML 导入 NEOS 内容库

导入新数据假定您已经在服务器文件系统中找到 zip 文件。导入命令将解压 zip 文件到新文件夹,解析 xml 并更新内容库。

在您的文档树中,您必须创建一个导入根文档节点。该节点将成为所有导入数据的根对象。

./flow openimmo:import

默认情况下,sourceFolder 是 import/。该命令期望在该目录中存在 *.zip 文件。内容将被提取到与 zip 文件同名的新的目录中,并且在导入完成后(也包括压缩目录)将删除存档。

该命令 不会以任何方式检查 内容。每个 zip 文件都期望包含一个精确的 xml 文件。

可能的定制

图标和标签

请查看 ./Configuration/Settings.yaml。您可以看到如何调整不同内容节点类型的图标和标签。您必须使用以下命令重新生成包文件。

模板

根元素的融合视图非常基础,因此您可能想要覆盖它

prototype(Ujamii.OpenImmo:Document.OpenImmoRoot) < prototype(Neos.Fusion:Component) {
    renderer = 'Bitte eine Immobilie im Baum auswählen!'
}

如果您想调整单个内容元素的渲染方式,只需按照您喜欢的样子覆盖它们即可。所有渲染都是使用位于 Resources/Private/Fusion/Component/Molecule 的文件完成的。

导入设置

您可以自定义导入的源目录(zip 文件所在的目录)以及数据将被导入的默认根节点(按节点类型)。

维护

使用 ./flow openimmo:clear 命令,可以删除内容库中类型为 Ujamii.OpenImmo:Document.Immobilie 的所有节点,这在您想要清理时可能很有用。

如果您想清理所有资产,可以使用内置命令 ./flow media:removeunused --assume-yes --only-tags=openimmo,因为所有在导入过程中创建的资产都将带有标签 openimmo

根据更新的API类更新代码

  1. 更新composer包,包括开发包以及--optimize-autoloader,否则类加载将失败!
  2. ./flow openimmo:generate 将填充 Configuration/Resources/Private/Fusion 目录中的新文件。

许可和贡献

GPLv3

由于这是开源软件,您可以通过报告错误、改进代码、编写测试或您能做的任何其他事情来贡献,我们非常欢迎。

如果您想帮我个忙,可以从我的 Amazon心愿单 购买一些东西。