furbo / rentman-for-craft
自动将Rentman产品导入Craft。让访客创建订单。订单将自动发送到Rentman作为项目请求。
1.0.7
2023-12-13 11:16 UTC
Requires
- php: >=8.0.2
- craftcms/cms: ^4.2.0
- dompdf/dompdf: ^2.0
- guzzlehttp/guzzle: ^7.5
- nesbot/carbon: ^2.66
Requires (Dev)
- craftcms/ecs: dev-main
README
Rentman for Craft
自动将Rentman产品导入Craft。允许访客创建订单。订单将自动发送到Rentman作为项目请求。
需求
此插件需要Craft CMS 4.2.0或更高版本,以及PHP 8.0.2或更高版本。
安装
您可以从插件商店或使用Composer安装此插件。
从插件商店
转到项目的控制面板中的插件商店,搜索“Rentman for Craft”,然后按“安装”。
使用Composer
打开终端并运行以下命令
# go to the project directory cd /path/to/my-project.test # tell Composer to load the plugin composer require furbo/rentman-for-craft # tell Craft to install the plugin ./craft plugin/install rentman-for-craft
Craft配置示例
- 转到设置 > 插件 > Rentman for Craft > 主要设置
- 添加API URL,通常是
https://api.rentman.net/
- 添加API密钥,更多信息请参阅:https://support.rentman.io/hc/en-us/articles/360013767839-The-Rentman-API
- 添加一个cron作业,执行php脚本
httpdocs/craft rentman-for-craft/rentman/update-all
(根据您的安装路径进行调整),例如每天执行一次 - 选择产品、类别和项目的模板和URL
- 单击自定义选项卡:在此处,您可以选择用于生成的电子邮件和PDF的自定义模板和设置
代码示例
获取单个产品
{% set product = craft.rentman.getProductById(2550) %} {{product.displayname}}
按类别获取产品
<ul> {% for product in craft.rentman.getProductsByCategory(3207) %} <li><a href="{{product.getUrl()}}">{{product.displayname}}</a></li> {% endfor %} </ul>
获取所有产品
<ul> {% for product in craft.rentman.getAllProducts() %} <li><a href="{{product.getUrl()}}">{{product.displayname}}</a></li> {% endfor %} </ul>
获取主类别
<ul> {% for mainCategory in craft.rentman.getCategories() %} <li><a href="{{mainCategory.getUrl()}}">{{mainCategory.displayname}}</a></li> {% endfor %} </ul>
获取前两级类别
<ul> {% for mainCategory in craft.rentman.getCategories() %} <li><a href="{{mainCategory.getUrl()}}">{{mainCategory.displayname}}</a></li> {% if mainCategory.hasChildren() %} <ul> {% for child in mainCategory.getChildren().all() %} <li><a href="{{child.getUrl()}}">{{child.displayname}}</a></li> {% endfor %} </ul> {% endif %} {% endfor %} </ul>
以数组形式获取所有类别(递归)
{% set categories = craft.rentman.getCategoriesRecursive(0) %}
打印完整的类别树
{{craft.rentman.printCategoryTree(true)|raw}}
打印带活动类别的完整类别树
{{craft.rentman.printCategoryTree(true, 3162)|raw}}
打印带活动类别的部分类别树
{{craft.rentman.printCategoryTree(false, 3193)|raw}}
完整的twig页面 - 示例
JavaScript API
CraftCMS的Rentman插件提供了一个JavaScript API来管理项目和执行相关操作。这里提供了如何使用此API的详细指南。
翻译
您可以将插件翻译文件夹中的rentman-for-craft.php
翻译文件复制到您网站的翻译文件夹中,并在那里进行翻译。
支持
如果您对此插件有任何问题,请在GitHub上创建一个问题或通过Furbo联系我们。