Saya mencoba mengalihkan situs web saya ke beranda ketika sesi berakhir dan pengguna secara otomatis keluar (sekarang ini akan diarahkan ke halaman pendaftaran inti joomla, yang saya tidak ingin pengguna melihat karena saya telah membuat sendiri halaman pendaftaran dalam komponen khusus).
Dalam file index.php pada templat saya, saya memeriksa apakah sesi aktif dan melakukan arahan ulang jika sesi berakhir:
$session = JFactory::getSession();
if (!$session->isActive()) {
echo "session is expired";
header('Location: http://www.example.com/');
exit;
}else{
echo "session is active";
}
Solusi ini berfungsi dengan baik hingga saat saya memperbarui ke Joomla 3.4.5. Setelah pembaruan, bahkan ketika pengguna keluar secara otomatis, berperilaku seolah-olah sesi masih aktif (saya memeriksa bahwa melalui gema "sesi aktif", seperti yang Anda lihat di atas).
Mengapa sesi ini masih aktif bahkan jika pengguna keluar? Apakah ada alternatif untuk metode $ session-> isActive ()?