Ya, ada paket Laravel yang menyederhanakan acara pemicu dan mengelola tag untuk manajemen tag dan pelacakan acara, terutama berguna dalam konteks seperti Google Tag Manager atau model taggable umum.
Paket untuk Manajemen Tag
1. Rinvex/Laravel-tag
Paket ini menyediakan manajemen tag polimorfik, memungkinkan Anda untuk menandai model yang fasih dengan mudah. Ini mendukung fitur-fitur seperti slugging otomatis dan terjemahan di luar kotak dengan mengintegrasikan dengan paket lain (`spatie/laravel-sluggable` dan` spatie/laravel-translatable`). Anda dapat melampirkan tag ke model menggunakan metode sederhana seperti `lampiran ()`, yang menerima tag ID, nama tag, atau instance model tag. Ini dirancang untuk penandaan model yang fleksibel dan mudah dalam aplikasi Laravel [1].
2. Spatie/Laravel-tag
Paket populer lainnya untuk menambahkan perilaku taggable ke model Laravel. Setelah instalasi, Anda menambahkan sifat `Hastags` ke model Anda untuk mengaktifkan fungsionalitas penandaan. Ini menyimpan tag dalam tabel khusus dan menyediakan API yang mudah untuk membuat dan melampirkan tag ke model [2] [4].
3. Implementasi Kustom
Untuk kebutuhan yang lebih sederhana, Anda dapat menerapkan penandaan secara manual menggunakan banyak hubungan antara model dan tag, dengan tabel pivot (mis., `Item_tag`). Pendekatan ini melibatkan mendefinisikan hubungan dalam model Anda yang fasih dan menyinkronkan tag selama operasi Create/Update [6] [9].
Paket untuk memicu acara dalam manajemen tag (Integrasi Tag Manager Google)
1. Label84/Laravel-tagManager
Paket ini menyederhanakan mengintegrasikan Google Tag Manager (GTM) ke dalam aplikasi Laravel dan menyediakan cara mudah untuk mendorong acara dan lapisan data ke GTM. Itu mendukung:
- Mendorong acara khusus dengan `tagManager :: event ()`
- Metode acara yang telah ditentukan seperti `login ()`, `register ()`
- Pelacakan User-ID melalui Middleware
- Pelacakan acara e-commerce yang kompatibel dengan GA4, termasuk tampilan produk, tindakan gerobak, pembelian, dan pengembalian uang, dengan kelas pembantu seperti `tagManageritem` untuk membangun muatan acara dengan mudah dengan mudah
Paket ini membutuhkan penambahan middleware ke kernel HTTP Anda dan memasukkan tag GTM ke dalam tampilan blade Anda. Ini juga mendukung acara sisi server dan fitur-fitur canggih seperti pelacakan USER-ID dan e-commerce [5] [8].
2. Spatie/Laravel-googletagManager
Paket ini mengintegrasikan Google Tag Manager ke Laravel, memungkinkan Anda untuk mengelola pelacakan dan optimasi pemasaran tanpa mengedit kode situs secara langsung. Ini termasuk middleware untuk menangani data flash berbasis sesi untuk acara GTM dan mendukung penerbitan konfigurasi untuk kustomisasi. Ini adalah solusi langsung untuk integrasi GTM tetapi kurang fokus pada pembantu pembangunan acara dibandingkan dengan label84/laravel-tagmanager [3].
Ringkasan
-Untuk manajemen tag pada model, gunakan tag rinvex/laravel atau spatie/laravel-tag untuk sistem penandaan yang kuat dan siap pakai.
-Untuk memicu acara dan mengelola lapisan data Tag Manager Google, Label84/Laravel-TagManager adalah paket komprehensif yang menyederhanakan acara mendorong, menangani ID pengguna, dan melacak interaksi e-commerce.
- Atau, Spatie/Laravel-googletagManager menawarkan integrasi yang lebih sederhana untuk GTM.
-Untuk kebutuhan khusus atau ringan, implementasi manual menggunakan hubungan banyak-ke-banyak Laravel dan pengiriman acara juga layak.
Paket-paket ini secara signifikan mengurangi kompleksitas mengelola tag dan memicu peristiwa dalam aplikasi Laravel, memungkinkan pengembang untuk fokus pada logika bisnis daripada detail integrasi tingkat rendah.
Kutipan:
[1] https://github.com/rinvex/laravel-tags
[2] https://github.com/spatie/laravel-tags
[3] https://laravel-news.com/package/spatie-laravel-googletagManager
[4] https://spatie.be/docs/laravel-tags/v4/basic-usage/using-tags
[5] https://packagist.org/packages/label84/laravel-tagManager
[6] https://stackoverflow.com/questions/41846724/simple-tags-system-in-laravel-5-2
[7] https://madewithlaravel.com/laravel-meta
[8] https://github.com/label84/laravel-tagManager
[9] https://dev.to/kazemmdev/laravel101-exploring-eficient-task-management-with-many-to-many-relationships-and-tags-2a5p