fbeen/mailchimp-bundle
Composer 安装命令:
composer require fbeen/mailchimp-bundle
包简介
mailchimp bundle
关键字:
README 文档
README
Symfony2 bundle for MailChimp API And Export API
License
MZMailChimpBundle is licensed under the MIT License - see the Resources/meta/LICENSE file for details
MailChimp API Method Supported
listSubscribelistUnSubscribelistUpdateMemberlistInterestGroupingAddcampaignCreatecampaignSendTestcampaignSendNowlistStaticSegmentAddlistStaticSegmentMembersAddlistStaticSegmentscampaignscampaignStats
MailChimp Export API Method Supported
1. list
Need support for a method not on the list submit an issue
Setup
Step 1: Download MZMailChimpBundle using composer
Add MZMailChimpBundle in your composer.json:
{ "require": { "mlpz/mailchimp-bundle": "dev-master" } }
Now tell composer to download the bundle by running the command:
$ php composer.phar update mlpz/mailchimp-bundle
Composer will install the bundle to your project's vendor/mlpz directory.
Step 2: Enable the bundle
Enable the bundle in the kernel:
<?php // app/AppKernel.php public function registerBundles() { $bundles = array( // ... new MZ\MailChimpBundle\MZMailChimpBundle(), ); }
Step 3: Add configuration
# app/config/config.yml mz_mail_chimp: api_key: #Mailchimp API Key default_list: #default list id ssl: true #option to use http or https
Usage
Using service
<?php $mailChimp = $this->get('MailChimp');
MailChimp API Subscribe user to mailing list in a controller
<?php $mailChimp = $this->get('MailChimp'); /** * Change mailing list * */ $mailChimp->setListID($id); /** * Get list methods * */ $list = $mailChimp->getList(); /** * listSubscribe default Parameters * */ $list->setMerge($array); //optional default: null $list->setEmailType('html'); //optional default: html $list->setDoubleOptin(true); //optional default : true $list->setUpdateExisting(false); // optional default : false $list->setReplaceInterests(true); // optional default : true $list->SendWelcome(false); // optional default : false /** * Subscribe user to list * */ $list->Subscribe($email); //boolean
MailChimp API Unsubscribe remove user from mailing list in a controller
<?php $mailChimp = $this->get('MailChimp'); /** * Change mailing list * */ $mailChimp->setListID($id); /** * Get list methods * */ $list = $mailChimp->getList(); /** * UnSubscribe user from list * */ $list->UnSubscribe($email); //boolean
MailChimp API Update user in a controller
<?php $mailChimp = $this->get('MailChimp'); $list = $mailChimp->getList(); $list->setEmail($oldEmail); $list->MergeVars($newEmail); /** * Update user in mailing list **/ $list->UpdateMember(); //boolean
MailChimp API Interest Grouping Add in a controller
<?php $mailChimp = $this->get('MailChimp'); $list = $mailChimp->getList(); $list->listInterestGroupingAdd( $groupTitle, $groupType, array($group1, $group2) ); // integer grouping ID
MailChimp API create campaign in a controller
<?php $mailChimp = $this->get('MailChimp'); $campaign = $mailChimp->getCampaign(); $campaign->setType($type); $campaign->setSubject($subject); $campaign->setFromEmail($fromEmail); $campaign->setFromName($fromName); $campaign->setHTML($html); $campaign->create(); //return campaign id
MailChimp API send test campaign in a controller
<?php $emails = array('email1','email2'); $mailChimp = $this->get('MailChimp'); $campaign = $mailChimp->getCampaign(); $campaign->SendTest($campaignId, $emails); // return boolean
MailChimp API send campaign in a controller
<?php $mailChimp = $this->get('MailChimp'); $campaign = $mailChimp->getCampaign(); $campaign->SendNow($campaignId); // return boolean
MailChimp Export API List in controller
<?php $mailChimp = $this->get('MailChimp'); $export = $mailChimp->getExport(); $options = array('status' => 'unsubscribed'); //subscribed, unsubscribed, cleaned $export->DumpList($options); //return array
MailChimp API Listmemberinfo in controller
<?php $mailChimp = $this->get('MailChimp'); $list = $mailChimp->getList(); $list->getMemberInfo($email)
MailChimp API Import Ecommerce Order in controller
<?php $mailChimp = $this->get('MailChimp'); $ecommerce = $mailChimp->getEcommerce(); $ecommerce->setOrderId($orderId) $ecommerce->setOrderDate($orderDate) $ecommerce->setStoreId($storeId) $ecommerce->setStoreName($storeName) $ecommerce->setCampaignId($mailChimpCampaigId) $ecommerce->setShipping($shippingTotal) $ecommerce->setTax($taxTotal) $ecommerce->setTotal($orderTotal) $ecommerce->addItem($productId, $productName, $categoryId, $categoryName, $qty, $cost, $sku) $ecommerce->addOrder($email) //return boolean
MailChimp API Delete Ecommerce Order in controller
<?php $mailChimp = $this->get('MailChimp'); $ecommerce = $mailChimp->getEcommerce(); $ecommerce->deleteOrder($storeId, $orderId) //return boolean
MailChimp API Retrieve Ecommerce Orders in controller
<?php $mailChimp = $this->get('MailChimp'); $ecommerce = $mailChimp->getEcommerce(); $ecommerce->getOrder($pageStart, $batchLimit, $dateSince) //return array
MailChimp API create static segment in a controller
<?php $mailChimp = $this->get('MailChimp'); $list = $mailChimp->getList(); $list->listStaticSegmentAdd('first_segment'); // return int segment id
MailChimp API segment member add in a controller
<?php $mailChimp = $this->get('MailChimp'); $list = $mailChimp->getList(); $segmentId = $list->listStaticSegmentAdd('first_segment'); $batch = array('test1@example.com', 'test2@example.com'); $list->listStaticSegmentMembersAdd($segmentId, $batch);
MailChimp API list static segment in a controller
<?php $mailChimp = $this->get('MailChimp'); $list = $mailChimp->getList(); $segments = $list->listStaticSegments();
MailChimp API [send campaign to segment] in a controller
<?php $mailChimp = $this->get('MailChimp'); $campaign = $mailChimp->getCampaign(); $list = $mailChimp->getList(); $segmentId = $list->listStaticSegmentAdd('first_segment'); $batch = array('test1@example.com', 'test2@example.com'); $list->listStaticSegmentMembersAdd($segmentId, $batch); $conditions[] = array( 'field' => 'static_segment', 'op' => 'eq', 'value' => $segmentId ); $segment_options = array( 'match' => 'all', 'conditions' => $conditions ); $campaign->setSegmenOptions($segment_options); $campaignId = $campaign->create(); $campaign->SendNow($campaignId);
MailChimp API campaigns in a controller
<?php $mailChimp = $this->get('MailChimp'); $campaign = $mailChimp->getCampaign(); //get all campaigns $campaign->campaigns();
<?php $mailChimp = $this->get('MailChimp'); $campaign = $mailChimp->getCampaign(); //filters for example campaign_id, you can all the filters in api website $campaign->setFilters(array('campaign_id' => 4589)); $campaign->campaigns();
MailChimp API campaignStats in a controller
<?php $mailChimp = $this->get('MailChimp'); $campaign = $mailChimp->getCampaign(); $campaign->campaignStats($campaignId); //return array(), struct of the statistics for this campaign
fbeen/mailchimp-bundle 适用场景与选型建议
fbeen/mailchimp-bundle 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 12 次下载、GitHub Stars 达 0, 最近一次更新时间为 2016 年 09 月 18 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「mailchimp」 「api」 「newsletter」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 fbeen/mailchimp-bundle 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 fbeen/mailchimp-bundle 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 fbeen/mailchimp-bundle 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
A PSR-7 compatible library for making CRUD API endpoints
MailChimp OAuth 2.0 Client Provider for The PHP League OAuth2-Client
Manage newsletters in Laravel
The Automated Provision of Email Services (APES) module will allow you to set up an automated sync mechanism between the SilverStripe Member DataObject and MailChimp.
Sendrill DB
The Newsletter Module provides the newsletter features to manage newsletters and mailing lists.
统计信息
- 总下载量: 12
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 11
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2016-09-18