marionnewlevant/mega-merge 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

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

marionnewlevant/mega-merge

Composer 安装命令:

composer require marionnewlevant/mega-merge

包简介

Merge this that and the other... With twig parsing

README 文档

README

MegaMerge: merge MegaMerge provides a fieldtype which is a Craft table with predefined Key and Value columns. It lets you merge together those fields with php arrays and twig arrays, and then look up values of keys in the merged array. The resultant values are parsed as twig.

This is a general purpose utility, though one of its potential uses (and the one for which I wrote it) is as a do-it-yourself seo system.

Requirements

This plugin requires Craft CMS 4.0.0 or later.

Installation

  1. Install with Composer via composer require marionnewlevant/mega-merge from your project directory
  2. Install plugin in the Craft Control Panel under Settings > Plugins

or

  1. Install via the Plugin Store

MegaMerge Overview

MegaMerge provides a fieldtype (a key/value table) and three functions:

craft.megaMerge.init() is passed an array of key/value pairs (elements in this array can be megaMerge fields, php arrays, or twig arrays), and a context object. It adds the key/value pairs to a global collection of key/value pairs, and the context object to a global context object.

craft.megaMerge.reset() sets the global key/value pairs and the global context to empty.

craft.megaMerge.value(key) looks up the value associated with key in the key/value pairs, interprets it as twig using the global context, and retuns the parsed value. It returns null if there is no matching value.

Using MegaMerge

The key/value pairs A megaMerge field called globalSettings in the g_configuration global set:

megaMergeField

Settings defined in config/custom.php:

'megaMerge' => [
    'title' => 'MySite page',
],

Calling init The globalSettings values will override the config.general.megaMerge ones:

{% do craft.megaMerge.init([
    craft.app.config.custom.megaMerge,
    g_configuration.globalSettings
  ], {object: entry}) %}

Calling value

<title>{{ craft.megaMerge.value('title') }}</title>

Brought to you by Marion Newlevant. Icon insides by Dmitry Baranovskiy from the Noun Project

marionnewlevant/mega-merge 适用场景与选型建议

marionnewlevant/mega-merge 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 113 次下载、GitHub Stars 达 1, 最近一次更新时间为 2019 年 01 月 20 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「cms」 「Craft」 「craftcms」 「craft-plugin」 「megamerge」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

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

围绕 marionnewlevant/mega-merge 我们能提供哪些服务?
定制开发 / 二次开发

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

BUG 修复 & 性能优化

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

项目外包 & 长期维护

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

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

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2019-01-20