承接 ujamii/openimmo-neos 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

ujamii/openimmo-neos

Composer 安装命令:

composer require ujamii/openimmo-neos

包简介

NEOS CMS package for showing OpenImmo based data on a NEOS based website

README 文档

README

Packagist

OpenImmo and the OpenImmo logo are registered trademarks of the OpenImmo e.V. Neither is this package an official distribution nor am I associated with this organisation!

This NEOS package uses the openImmo API to generate everything NEOS needs to work with this data. All the code is generated:

  • all yaml config files (NodeTypes)
  • fusion files for accesssing the properties and childnodes
  • fusion files in Atomic Design style. Mainly to be overwritten by your own styles

As a result, you will have a load of special new content elements to be used inside the new document type. You can use NEOS to create/edit the data or import it from a OpenImmo export archive.

The content tree might look like this:

An example content tree An example content tree

TODOs / contributions

If you like the features listed below, or maybe some your own additions, feel free to fork and open a pull request.

  • the UPDATE xml action does not delete things at the moment
  • currently, the package uses the German OpenImmo labels for everything, so make use of default NEOS translation features
  • export data into xml/zip format
  • do all changes in a separate workspace and publish the changes to its base workspace instead of doing things live

Installation

composer req ujamii/openimmo-neos

Usage

  1. Install composer package.
  2. (optional) Create root node for import (see below)
  3. Done :-)

Importing OpenImmo XML into the NEOS Content Repository

Importing new data assumes you have zip file(s) located on your server filesystem. The import command will extract the zip file(s) into a new folder, parse the xml and update the content repository.

In your document tree, you have to create an import root document node. This node will be the root object for all the imported data.

./flow openimmo:import

The sourceFolder is import/ by default. The command expects *.zip file(s) in that directoy. The content will be extracted into a new directory with the same name as the zip file and the archive will be deleted after the import is done (also the deflated directory).

The command does not check the content in any way. Every zip file is expected to contain exactly one xml file.

Possible customizations

Icons and labels

Please have a look at ./Configuration/Settings.yaml. You can see how icons and labels for the different content node types may be adjusted. You have to re-generate the package files with the command below.

Templates

The fusion view for the root element is pretty basic, so will probably want to overwrite it:

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

If you want to adjust the renderen of the single content elements, just overwrite them as you like. All the rendering is done with the files located in Resources/Private/Fusion/Component/Molecule.

Import settings

You can customize the source directory for the import (where the zip files are located) and the default root node (by node type) to which the data will be imported.

Housekeeping

With the ./flow openimmo:clear command, all nodes of type Ujamii.OpenImmo:Document.Immobilie are removed from the content repository, which might be handy if you want to clean up.

If you like to clean up all the assets as well, you can use the builtin command ./flow media:removeunused --assume-yes --only-tags=openimmo because all the assets created during an import will have the tag openimmo.

Update code based on newer API classes

  1. Update the composer package, including dev packages AND --optimize-autoloader, otherwise the class loading will fail!
  2. ./flow openimmo:generate will fill the Configuration/ and Resources/Private/Fusion directories with new files.

License and Contribution

GPLv3

As this is OpenSource, you are very welcome to contribute by reporting bugs, improve the code, write tests or whatever you are able to do to improve the project.

If you want to do me a favour, buy me something from my Amazon wishlist.

ujamii/openimmo-neos 适用场景与选型建议

ujamii/openimmo-neos 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1.73k 次下载、GitHub Stars 达 1, 最近一次更新时间为 2020 年 08 月 29 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 ujamii/openimmo-neos 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 ujamii/openimmo-neos 我们能提供哪些服务?
定制开发 / 二次开发

基于 ujamii/openimmo-neos 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 1.73k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: GPL-3.0-only
  • 更新时间: 2020-08-29