WordPress ページや投稿などをキャッシュするために W3 Total Cache を使用しています。
ここで、セッション変数を設定して、ユーザーがモバイル ビューとデスクトップ ビューのどちらを望んでいるかをサーバーに伝え、この関数を呼び出すボタンを作成しました。
<?php function mobile_css() {
if(is_mobile() && !isset($_SESSION['mobile'])) : ?>
<link type="text/css" media="all" rel="stylesheet" href="<?php bloginfo('template_url'); ?>/css/mobile.css" />
<?php elseif($_SESSION['mobile'] == "ja") : ?>
<link type="text/css" media="all" rel="stylesheet" href="<?php bloginfo('template_url'); ?>/css/mobile.css" />
<?php endif;
}
問題は、ページが最初に読み込まれるたびにキャッシュされることです。そのため、セッション モバイルでページを開くとモバイルと表示され、デスクトップに切り替えてそのページに再度アクセスすると、最初に要求されたときにキャッシュされたため、モバイル バージョンが表示されます。
これを防ぐ方法を知っている人はいますか?