Popojicms

Menambahkan Unsubscribe Link di email langganan popojicms

Menambahkan Unsubscribe Link di email langganan popojicms

Newsletter adalah sebuah publikasi secara teratur didistribusikan melalui email dalam daftar berlangganan pengguna. Dalam posting ini, kita akan belajar bagaimana untuk memungkinkan Penerima Anda untuk berhenti berlangganan email dari daftar pengguna langganan Anda dengan satu klik.

 

Mengirim link berhenti berlangganan dengan email:

Dalam tutorial kali ini mengirimkan link berhenti berlangganan dengan email untuk setiap pengguna, yang menghubungkan email pengguna dengan reffering link.

 

Unsubscribe link berisi id email pengguna, yang akan diarahkan ke link yang telah dibuat.

Anda harus membuat tombol atau link untuk berhenti berlangganan dengan jelas, jangan sampai anda membuat pelanggan kesal karena mereka tidak bisa berhenti berlangganan. Jika mereka merasa pesan yang kita berikan telah usang, mereka akan mencoba berhenti berlangganan. Dan jika mereka bisa menemukan tombol atau link berhenti berlangganan dengan mudah, mereka suatu saat akan dengan mudah berlangganan pesan anda jika mereka merasa informasi yang anda sampaikan menarik.

 

Step 1

Pertama-tam ganti table subscribe Anda dengan table subscribe yang baru di bawah ini

CREATE TABLE `subscribe` (
  `id_subscribe` int(5) NOT NULL,
  `email` varchar(100) NOT NULL,
  `name` varchar(255) NOT NULL,
  `active` enum('Y','N') NOT NULL DEFAULT 'N',
  `id_session` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

Step 2

Ganti component router subscribe yang berada di folder po-content/component/home

Cari kode berikut

$router->match('POST', '/subscribe', function() use ($core, $templates)

Lalu tambahkan kode di bawah ini.

'id_session' => md5($_POST['email'])

 

Maksud dari penambahan kode tersebut adalah agar saat pengunjung subscribe di blog anda secara otomatis akan menambahkan session.

Atau copy paste kode dibawah ini

$router->match('POST', '/subscribe', function() use ($core, $templates) {
$lang = $core->setlang('home', WEB_LANG);
if (!empty($_POST)) {
if (!empty($_POST['email'])) {
$subscribe = $core->podb->from('subscribe')->where('email',  $core->postring->valid($_POST['email'], 'xss'))->count();
if ($subscribe > 0) {
echo "";
} else {
$core->poval->validation_rules(array(
'email' => 'required|valid_email'
));
$core->poval->filter_rules(array(
'email' => 'trim|sanitize_email'
));
$validated_data = $core->poval->run($_POST);
if ($validated_data === false) {
header('location:'.BASE_URL.'/404.php');
} else {
$name = explode('@', $core->postring->valid($_POST['email'], 'xss'));
$data = array(
'email' => $core->postring->valid($_POST['email'], 'xss'),
'name' => ucfirst($name[0]),
'id_session' => md5($_POST['email'])
);
$query = $core->podb->insertInto('subsribe')->values($data);
	$query->execute();
	unset($_POST);
	echo "";
		}
	}
        } else {
	header('location:'.BASE_URL.'/404.php');
	}
	} else {
		header('location:'.BASE_URL.'/404.php');
	}
});

 

Step 3

Membuat file komponen unsubscribe. Sebenarnya file unsubscribe.php ini bias di modif sesui dengan keinginan, untuk contoh kali ini saya membuatnya begitu pelanggan unsubscribe maka otomatis email di table subscribe akan terhapus.

Unsubscribe.php

$router->match('GET|POST', '/u/([a-z0-9_-]+)', function($id_session) use ($core, $templates) {
	$lang = $core->setlang('home', WEB_LANG);
	$unsubscribe = $core->podb->from('subscribe')
				->select(array('subscribe.email', 'subscribe.id_session'))
				->where('id_session', $id_session)
				->where('active', 'Y')
				->where('unsubscribe', 'N')
				->limit(1)
				->fetch();
	if ($unsubscribe) {			
	$info = array(
		'page_title' => 'Subscription Settings | Uniqbanget.com',
		'page_desc' => $core->posetting[2]['value'],
		'page_key' => $core->posetting[3]['value'],
		'social_mod' => 'Subscription Settings | Uniqbanget.com',
		'social_name' => $core->posetting[0]['value'],
		'social_url' => $core->posetting[1]['value'],
		'social_title' => $core->posetting[0]['value'],
		'social_desc' => $core->posetting[2]['value'],
		'social_img' => $core->posetting[1]['value'].'/'.DIR_INC.'/images/favicon.png'
	);
	$adddata = array_merge($info, $lang);
	$templates->addData(
		$adddata
	);
	echo $templates->render('unsubscribe', compact('unsubscribe','lang'));
	} else {
	$info = array(
		'page_title' => 'Error! Email not found',
		'page_desc' => $core->posetting[2]['value'],
		'page_key' => $core->posetting[3]['value'],
		'social_mod' => 'Unsubscribe - ' .htmlspecialchars_decode($unsubscribe['email']),
		'social_name' => $core->posetting[0]['value'],
		'social_url' => $core->posetting[1]['value'],
		'social_title' => 'Error! Email not found',
		'social_desc' => $core->posetting[2]['value'],
		'social_img' => $core->posetting[1]['value'].'/'.DIR_INC.'/images/favicon.png'
		);
		$adddata = array_merge($info, $lang);
		$templates->addData(
		$adddata
		);
		echo $templates->render('not-found', compact('lang'));
	}
});

 

Step 4

Menambahkan link unsubscribe di email langganan Anda.

Pertama-tama buka file admin_post.php yang berada di folder komponen post, lalu tambahkan kode berikut

Unsubscribe

 

Pada public function subscribe, yaitu fungsi yang digunakan untuk mengirim email ke para pelanggan.

 

Step 5

HTML

Membuat simple form elemen halaman fontend

Unsubscribe.php

Unsubscribe from mydomain.com

Please see the email on the details below to unsubscribe.

pocore()->call->poflash->display();?>

 

Step 6

HTML

Membuat file subscribed.php

mydomain.com Newsletter Subscription

pocore()->call->poflash->display();?>

 

Jadi itu hanya dasar aplikasi unsubscribe yang bisa saya share disini. Jika Anda ingin fitur baru di dalamnya, itu benar-benar tergantung pada Anda. Misalnya Anda ingin menambahkan fitur penambahan email unsubscribe di dalamnya yang otomatis akan menambahkan data email unsubscribe ke dalam table unsubscribe, Yah, itu semua tergantung pada Anda. Jika Anda memiliki masalah, saran atau umpan balik Anda saya sangat menyambut komentar di bawah ini. Dan jangan lupa untuk berlangganan blog kami untuk mendapatkan setiap artikel baru langsung dalam kotak masuk Anda.

Share This Post

Leave Comment

Get more stuff like this
in your inbox

Subscribe to our mailing list and get interesting stuff and updates to your email inbox.