แพ็คเกจนี้มอบวิธีง่ายๆ ในการผสานรวมการสมัครรับข้อมูลรายชื่ออีเมลของบริการอีเมลต่างๆ
ปัจจุบันรองรับแพ็คเกจนี้:
Mailcoach (สร้างโดยเรา :-))
MailChimp
เราลงทุนทรัพยากรจำนวนมากเพื่อสร้างแพ็คเกจโอเพ่นซอร์สที่ดีที่สุดในระดับเดียวกัน คุณสามารถสนับสนุนเราได้โดยการซื้อหนึ่งในผลิตภัณฑ์ที่ต้องชำระเงินของเรา
เราขอขอบคุณอย่างยิ่งที่คุณส่งโปสการ์ดจากบ้านเกิดของคุณถึงเรา โดยระบุว่าคุณใช้แพ็คเกจใดของเรา คุณจะพบที่อยู่ของเราในหน้าติดต่อของเรา เราเผยแพร่โปสการ์ดที่ได้รับทั้งหมดบนวอลล์โปสการ์ดเสมือนของเรา
คุณสามารถติดตั้งแพ็คเกจนี้ผ่าน Composer โดยใช้:
ผู้แต่งต้องการจดหมายข่าว spatie/laravel
หากต้องการเผยแพร่ไฟล์กำหนดค่าเพื่อ config/newsletter.php
ให้รัน:
ผู้ขาย php ช่างฝีมือ: เผยแพร่ --tag = "จดหมายข่าว-config"
สิ่งนี้จะเผยแพร่ไฟล์ newsletter.php
ในไดเร็กทอรี config ของคุณโดยมีเนื้อหาดังต่อไปนี้:
return [/* * ไดร์เวอร์ที่จะใช้โต้ตอบกับ MailChimp API * คุณสามารถใช้ "log" หรือ "null" เพื่อป้องกันการเรียก * API โดยตรงจากสภาพแวดล้อมของคุณ */'driver' => env('NEWSLETTER_DRIVER', SpatieNewsletterDriversMailcoachDriver::class),/** * อาร์กิวเมนต์เหล่านี้จะถูกส่งไปยังไดรเวอร์ */'driver_arguments' => ['api_key' => env('NEWSLETTER_API_KEY'),'endpoint' => env('NEWSLETTER_ENDPOINT'), ],/* * ชื่อรายการที่จะใช้เมื่อไม่ได้ระบุชื่อรายการในวิธีการ */'default_list_name' => 'subscribers','lists' => [/* * คีย์นี้ใช้เพื่อระบุรายการนี้ สามารถใช้ * เป็นพารามิเตอร์ listName ที่ให้ไว้ในวิธีการต่างๆ * * คุณสามารถตั้งค่าเป็นสตริงใดก็ได้ที่คุณต้องการและคุณสามารถเพิ่ม * รายการได้มากเท่าที่คุณต้องการ */'subscribers' => [/* * เมื่อใช้ไดรเวอร์ Mailcoach นี่ควรเป็นรายการอีเมล UUID * ซึ่งแสดงใน Mailcoach UI * * เมื่อใช้ไดรเวอร์ MailChimp นี่ควรเป็นรหัสรายการ MailChimp * http://kb.mailchimp.com/lists/managing-subscribers/find-your-list-id */'id' => env('NEWSLETTER_LIST_ID'), - - -
เพื่อให้แพ็คเกจนี้ทำงานร่วมกับ Mailcoach ได้ คุณต้องติดตั้ง Mailcoach SDK
ผู้แต่งต้องการ spatie/mailcoach-sdk-php
ถัดไป คุณต้องระบุค่าสำหรับคีย์ API, ตำแหน่งข้อมูล และ list.subscribers.id
ในไฟล์กำหนดค่า คุณจะพบคีย์ API และจุดสิ้นสุดในหน้าจอการตั้งค่า Mailcoach ค่าสำหรับ list.subscribers.id
ต้องเป็น UUID ของรายการอีเมลบน Mailcoach คุณจะพบค่านี้บนหน้าจอการตั้งค่าของรายชื่ออีเมล
หากต้องการใช้ MailChimp ให้ติดตั้งแพ็คเกจพิเศษนี้
ผู้แต่งต้องการ drewm/mailchimp-api
คีย์ driver
ของไฟล์กำหนดค่า newsletter
จะต้องตั้งค่าเป็น SpatieNewsletterDriversMailChimpDriver::class
ถัดไป คุณต้องระบุค่าสำหรับคีย์ API และ list.subscribers.id
คุณจะพบค่าเหล่านี้ใน MailChimp UI
ค่าการกำหนดค่า endpoint
จะต้องตั้งค่าเป็นโมฆะ
หลังจากที่คุณได้ติดตั้งแพ็คเกจและกรอกค่าในไฟล์ปรับแต่งที่ทำงานกับแพ็คเกจนี้จะเป็นเรื่องง่าย ตัวอย่างต่อไปนี้ทั้งหมดใช้ส่วนหน้าอาคาร อย่าลืมนำเข้าไว้ที่ด้านบนของไฟล์
ใช้ SpatieNewsletterFacadesNewsletter;
การสมัครที่อยู่อีเมลสามารถทำได้ดังนี้:
ใช้จดหมายข่าว จดหมายข่าว::subscribe('[email protected]');
มายกเลิกการสมัครใครสักคน:
จดหมายข่าว::unsubscribe('[email protected]');
สำหรับ Mailcoach คุณสามารถส่งแอตทริบิวต์พิเศษเป็นอาร์กิวเมนต์ที่สองได้:
จดหมายข่าว::subscribe('[email protected]', ['first_name' => 'Rince', 'last_name' => 'Wind']);
สำหรับ MailChimp คุณสามารถส่งตัวแปรผสานเป็นอาร์กิวเมนต์ที่สองได้:
จดหมายข่าว::subscribe('[email protected]', ['FNAME'=>'รินซ์', 'LNAME'=>'ลม']);
คุณสามารถสมัครสมาชิกรายการใดรายการหนึ่งได้โดยส่งชื่อรายการ:
จดหมายข่าว::subscribe('[email protected]', listName: 'subscribers');
อาร์กิวเมนต์ที่สามนั้นเป็นชื่อของรายการที่คุณกำหนดค่าไว้ในไฟล์กำหนดค่า
คุณยังสามารถสมัครรับข้อมูลและ/หรืออัปเดตบุคคลอื่นได้ บุคคลนั้นจะสมัครรับข้อมูลหรืออัปเดตหากเขา/เธอได้สมัครรับข้อมูลแล้ว:
จดหมายข่าว::subscribeOrUpdate('[email protected]', ['first_name' => 'Rince', 'last_name' => 'Wind']);
สำหรับ MailChimp คุณสามารถสมัครสมาชิกกลุ่ม/ความสนใจเฉพาะตั้งแต่หนึ่งกลุ่มขึ้นไปได้โดยใช้อาร์กิวเมนต์ที่สี่:
จดหมายข่าว::subscribeOrUpdate( '[email protected]', ['FNAME'=>'รินซ์','LNAME'=>'ลม'], 'สมาชิก', ['interests'=>['interestId'=>true, 'interestId'=>true]], -
เพียงเพิ่ม false
หากคุณต้องการลบบุคคลออกจากกลุ่ม/ความสนใจ
ต่อไปนี้เป็นวิธียกเลิกการสมัครรับข้อมูลจากรายการใดรายการหนึ่ง:
จดหมายข่าว::unsubscribe('[email protected]', 'subscribers');
การลบไม่เหมือนกับการยกเลิกการสมัคร การลบสมาชิกจะส่งผลให้ประวัติทั้งหมดหายไป (เพิ่ม/เลือกใช้/แก้ไข) รวมถึงลบออกจากรายการ ซึ่งต่างจากการยกเลิกการสมัคร ในกรณีส่วนใหญ่ คุณต้องการใช้ unsubscribe
แทน delete
ต่อไปนี้เป็นวิธีดำเนินการลบ:
จดหมายข่าว::delete('[email protected]');
คุณสามารถรับข้อมูลเกี่ยวกับสมาชิกได้โดยใช้ฟังก์ชัน getMember
:
จดหมายข่าว::getMember('[email protected]');
สำหรับ MailCoach สิ่งนี้จะส่งคืนอินสแตนซ์ของ SpatieMailcoachResources|Subscriber
สำหรับ MailChimp สิ่งนี้จะส่งคืนอาร์เรย์พร้อมข้อมูลเกี่ยวกับสมาชิก
หากไม่มีใครสมัครรับข้อมูลด้วยที่อยู่อีเมลนั้น ฟังก์ชันจะส่งกลับ false
นอกจากนี้ยังมีวิธีที่สะดวกในการตรวจสอบว่ามีคนสมัครเป็นสมาชิกแล้วหรือไม่:
จดหมายข่าว::hasMember('[email protected]'); //ส่งคืนบูลีน
นอกจากนี้ คุณยังสามารถตรวจสอบว่าผู้ใช้สมัครรับข้อมูลรายการของคุณหรือไม่:
จดหมายข่าว::isSubscribed('[email protected]'); //ส่งคืนบูลีน
หากคุณต้องการฟังก์ชันการทำงานเพิ่มเติม คุณจะได้รับอินสแตนซ์ของ API พื้นฐานด้วย
$api = จดหมายข่าว::getApi();
หากคุณประสบปัญหาในการผสานรวม MailChimp คุณสามารถดูข้อผิดพลาดล่าสุดได้ด้วย:
จดหมายข่าว::getApi()->getLastError();
รันการทดสอบด้วย:
ผู้ขาย/ถัง/ศัตรูพืช
โปรดดู CHANGELOG สำหรับข้อมูลเพิ่มเติมเกี่ยวกับสิ่งที่เปลี่ยนแปลงเมื่อเร็วๆ นี้
โปรดดูการมีส่วนร่วมเพื่อดูรายละเอียด
หากคุณพบปัญหาที่เกี่ยวข้องกับความปลอดภัย โปรดส่งอีเมลมาที่ [email protected] แทนการใช้ตัวติดตามปัญหา
ฟรีค ฟาน เดอร์ แฮร์เทน
ผู้ร่วมให้ข้อมูลทุกคนทุ่มเทให้กับการจัดสรรบุคลากรด้านการบำรุงรักษาและสิ่งใหม่ๆ ที่ยอดเยี่ยม
ใบอนุญาตเอ็มไอที (MIT) โปรดดูไฟล์ใบอนุญาตสำหรับข้อมูลเพิ่มเติม