ข้ามไปที่เนื้อหาหลัก

การใช้งาน MailChimp ร่วมกับ Laravel



MailChimp คืออะไร? คือผู้ให้บริการส่งเมลที่ตอบสนองกระบวนการทางการตลาดที่ได้รับความนิยม เนื่องจากรองรับการส่งเมลในจำนวนมากอีกทั้งมีระบบจัดการที่ง่าย ข้อสำคัญที่สุด คือ ใครๆ ก็สามารถใช้งานได้ หมดปัญหาเรื่องรูปแบบอีเมล คุณจะสามารถส่งอีเมลได้ในรูปแบบที่สวยงาม และแน่นอนบุคลากรทั่วๆ ไปที่ไม่ไช่โปรแกรมเมอร์ก็สามารถแก้ไขรูปแบบหน้าตาอีเมลได้สบายๆ เพราะ MailChimp มีเครื่องมือที่ใช้งานง่ายๆ ตอบสนองผู้ใช้งานทั่วไป

ที่กล่าวมาข้างต้นไม่ได้มาอวย MailChimp นะครัช แล้วก็ไม่ได้ค่าคอมด้วยเออ แต่วันนี้จะมาแนะนำการใช้งาน MailChimp กับ Laravel ผ่าน Libary ตัวหนึ่ง ซึ่งจริงๆ แล้วก็มีอยู่หลายรูป วันนี้ขอแนะนำตัวนี้เลย

https://packagist.org/packages/altelma/laravel-mailchimp


สำหรับใครที่เคยใช้งาน Laravel มาแล้วคงทราบดีว่า เราต้องโหลดแพ็คเกจนั้นมาใส่ในโปรเจ็คของเราก่อนผ่าน Composer จากนั้นก็ให้ทำตามขั้นตอนดังนี้

เริ่มโดยการโหลดแพ็คแกจก่อนด้วยคำสั่ง
require composer altelma/laravel-mailchimp --prefer-dist dev-master

จากนั้นให้เพิ่ม ServiceProvider ลงไปที่ config/app.php
providers => [
     LaravelMailChimp\MailChimpServiceProvider::class
]

หากใครต้องการใช้ Alias Class ก็เพิ่มบรรทัดนี้ไปด้วย
aliases => [
     'MailChimp' => LaravelMailChimp\MailChimpFacade::class
]

เมื่อตั้งค่าเสร็จแล้วให้เรียกคำสั่ง
php artisan vendor:publish เพื่อสั่งให้สร้างไฟล์ mailchimp.php มาให้เพื่อที่เราจะนำ apikey จาก Mailchimp Account มาใส่

จากนั้นก็ทดสอบการใช้งาน
// ใช้งานแบบปกติ
$mc = new MailChimp('Your API KEY');
$results = $mc->get('lists/your_directory_list/members');

echo json_decode($results);

// ใช้แบบผ่าน Alias Class
$results = \MailChimp::get('lists/your_directory_list/members');
echo json_decode($results);

เท่านี้เราก็จะสามารถใช้งานเว็บเรากับ MailChimp ได้อย่างง่ายๆ แล้ว

โพสต์ยอดนิยมจากบล็อกนี้

มาเข้าใจ และใช้ Datatable ดึงข้อมูลแบบ Server-side ด้วย PHP, MySQL กันเถอะ

มีช่วงหนึงผมเคยนำ datatable มาพัฒนาในงานแต่เกิดปัญหาเนื่องจากมีข้อมูลขนาดใหญ่ ทำให้เกิดการโหลดในครั้งแรกที่โหลดหน้าเพจนั้นๆ เนื่องจากผมใช้ Ajax ในการโหลดข้อมูลทั้งหมดมาในครั้งเดียวด้วยจำนวนข้อมูล 1000 ขึ้น ซึ่งตอนนั้นผมคิดว่าการทำ preload น่าจะช่วยได้ แต่ว่าถ้า user เกิดเผลอไปกด refesh หรือแก้ไขข้อมูลเวลากลับมาที่หน้าข้อมูลก็ต้องโหลดใหม่อีก ทำให้ผมเลิกใช้ datatable ไปเลย เพราะคิดว่ามันคงไม่เหมาะ

แต่ในความจริงแล้ว datatable ก็ได้มีสิ่งที่มาแก้ในจุดนั้นได้ ซึ่งเรียกว่า server-side โดยการที่อนุญาตให้เรา query ข้อมูลออกมาก่อนแล้วส่งมาให้ datatable อ่านข้อมูลในจำนวนที่น้อยลง หลักการก็เหมือนๆ กับบทความการทำสร้าง XML จากข้อมูลขนาดใหญ่นั่นแหละครับ แต่มีเงื่อนไขเพียงแต่ว่า ต้อง Filter และส่งข้อมูลออกมาในรูปแบบที่ตรงตามหลักของ datatable เท่านั้น ( บางครั้งเวลาเข้าไปอ่าน Document หรือดู Example จะงงๆ ว่าอะไรเยอะแยะ ) โดยวันนี้จะมาแนะนำการใช้งานแบบง่ายๆ กันเลย :D

การใช้งาน fputcsv() สำหรับการทำ Report CSV

เรื่องของเรื่อง ถูกมอบหมายให้ทำ Report ที่สามารถ Export ออกมาเปิดดูใน Excel ได้ ไอ้คนคิดน้อยอย่างผมก็ไม่คิดมากครับไปโหลด PHPExcel มาใช้เลยทำอยู่นาน ปรากฏว่า Project Manager มาดูเค้าก็แนะนำว่า ใช้ Library ยากไปเปลี่ยนๆ มาใช้ฟังก์ชันง่ายๆ ตัวนี้ดู

วันนี้เลยอยากจะมาแนะนำการทำ Report ออกมาเป็นไฟล์ CSV แบบง่ายๆ โดยไม่พึ่ง Library ใดๆ ผ่านฟังก์ชัน fputcsv() กันครับ ลองดูๆ

การติดตั้ง Google Analytics ด้วย Google Tag Manager

สำหรับสายงานโปรแกรมเมอร์นั้น ไม่ค่อยมีปัญหามากนักเวลาที่จะต้องแก้ไข หรือเปลี่ยน UA โค๊ดของ Analytics เพราะสามารถทำได้เอง แต่ก็นะ ถึงแม้ว่าจะง่ายแต่ในเวลาที่ไม่สะดวกจริงๆ แถมงานที่ทำส่วนใหญ่ต้องอัพผ่าน Git การจะทำอะไรแบบนั้นก็ไม่ไช่เรื่องง่ายอีกต่อไป