anzui / metamodels_openimmo
将OpenImmo数据导入现有MetaModel(用于Contao CMS)
v1.1.0
2016-08-18 12:36 UTC
Requires
- php: >=5.3
- contao/core: >=3.2,<3.6
- metamodels/core: >=2.0.0
Conflicts
- contao/core: 3.4.0
This package is not auto-updated.
Last update: 2024-09-28 06:38:35 UTC
README

此模块使您能够将OpenImmo数据导入现有MetaModel。
安装
需要将contao
文件夹的内容放置在system/modules/metamodels_openimmo/
文件夹中,同时将src
文件夹放置在composer/anzui/metamodels_openimmo/src
。
导入模板
通过导入预制的模板,您可以节省大量的时间和工作。
它包括MetaModel "immo"和预配置的属性以及相应的MetaModel-OpenImmo链接。
- 在后台的"MetaModels - OpenImmo > 设置"下选择您已安装的MetaModels版本。
- 点击"导入模板",这将为您对象目录提供一个良好的起点。
警告:导入模板将删除所有现有的MetaModel和MetaModel-OpenImmo链接。
使用方法
- 创建您的元模型
- 在后台的"MetaModels - OpenImmo > 链接"下添加新的MetaModel-OpenImmo链接
- 选择您的软件将对象数据上传到的文件夹
- 选择应存储对象文件附件的文件夹
- 将您的元模型中的每个字段链接到OpenImmo字段。
- 在您的软件中设置对象数据的上传,以便上传在第3步中选择的目录中的文件
同步
- 在您的软件中触发数据上传
- 在后台的"MetaModels - OpenImmo > 链接"下点击"同步"图标
- 选择要同步的数据文件,默认情况下将选择最旧的未同步文件
- 点击"同步"按钮,如果是zip文件,则将其解压缩,然后您必须再次点击"同步"按钮
- 数据现在已与数据库同步
自动化
对于每个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_
键中)的数组。
它必须返回数组。您对其进行的任何修改都将存储在数据库中。