anzui/metamodels_openimmo

将OpenImmo数据导入现有MetaModel(用于Contao CMS)

v1.1.0 2016-08-18 12:36 UTC

This package is not auto-updated.

Last update: 2024-09-28 06:38:35 UTC


README

![Gitter](https://badges.gitter.im/Join Chat.svg)

此模块使您能够将OpenImmo数据导入现有MetaModel。

安装

需要将contao文件夹的内容放置在system/modules/metamodels_openimmo/文件夹中,同时将src文件夹放置在composer/anzui/metamodels_openimmo/src

导入模板

通过导入预制的模板,您可以节省大量的时间和工作。

它包括MetaModel "immo"和预配置的属性以及相应的MetaModel-OpenImmo链接。

  1. 在后台的"MetaModels - OpenImmo > 设置"下选择您已安装的MetaModels版本。
  2. 点击"导入模板",这将为您对象目录提供一个良好的起点。

警告:导入模板将删除所有现有的MetaModel和MetaModel-OpenImmo链接。

使用方法

  1. 创建您的元模型
  2. 在后台的"MetaModels - OpenImmo > 链接"下添加新的MetaModel-OpenImmo链接
  3. 选择您的软件将对象数据上传到的文件夹
  4. 选择应存储对象文件附件的文件夹
  5. 将您的元模型中的每个字段链接到OpenImmo字段。
  6. 在您的软件中设置对象数据的上传,以便上传在第3步中选择的目录中的文件

同步

  1. 在您的软件中触发数据上传
  2. 在后台的"MetaModels - OpenImmo > 链接"下点击"同步"图标
  3. 选择要同步的数据文件,默认情况下将选择最旧的未同步文件
  4. 点击"同步"按钮,如果是zip文件,则将其解压缩,然后您必须再次点击"同步"按钮
  5. 数据现在已与数据库同步

自动化

对于每个MetaModels-OpenImmo链接,您都可以配置自动同步和删除旧文件。

此自动化使用Contao的cron服务。默认情况下,它需要任何网络浏览器定期调用页面才能工作。

您还可以设置Contao的cron服务由您的系统cron执行。

字段回调

您可以为每个字段链接添加回调函数。

它将传递XML的值、字段对象、immo数组、xml树、当前xpath和元模型属性。

它必须返回要设置的字段值。

public static function fieldCallback($value, $field_obj, &$immo, &$xml, $xpath, $metamodelAttribute)
{
    ...

    return $value;
}

钩子

MetaModels - OpenImmo提供了一个钩子,该钩子将针对将同步到数据库的每个项目调用

$GLOBALS['TL_HOOKS']['metaModelsOpenImmoSync'][] = array('MyClass', 'myMethod')

它传递一个包含所有同步字段和特定对象的原始XML树(在数组的_xml_键中)的数组。

它必须返回数组。您对其进行的任何修改都将存储在数据库中。