Nucleus(JP)フォーラム

NucleusCMS日本語版ユーザーのためのサポートフォーラムです。疑問が生じたらまずは記事検索をご利用ください。

ログインしていません。

#1 2007-12-10 13:38:56

d3
メンバー
登録日: 2007-12-10
投稿: 3

Re: NP_MobileWithSinglePageとNP_EzCacheの組み合わせについて

はじめまして。サイト構築の際にこちらのフォーラムを参考にさせて頂きました。
NP_MobileWithSinglePage1.5を使用し、PCとケータイ端末でスキンを切り替えて運用しています。

先日、急激にアクセスが集中してデータベースの負荷が高くなった事からNP_EzCacheをほぼ全てのページに導入したのですが、何日か運用して気付いた事があります。
ケータイからのアクセスでNP_EzCacheがキャッシュを生成した場合、PCで同じページを表示するとケータイ用のスキンで表示され、また逆にPCでキャッシュを生成した場合も、ケータイ側ではPC用スキンで表示されてしまうようです。

PCに比べてケータイからのアクセスはそれほど多くないためキャッシュは効かなくても良いのですが、何かこの状態を打開する方法はありますでしょうか?

よろしくお願いします。

オフライン

#2 2007-12-13 14:48:24

cha_cya
メンバー
From: 東京
登録日: 2004-08-25
投稿: 745

Re: NP_MobileWithSinglePageとNP_EzCacheの組み合わせについて

ここにあるとおり、
http://niku.suku.name/item/501
現時点では仕様のようです。

ここと、その下の記事にあるとおり、EzCache側の改造で出来るのかもしれませんが試していません。
<!-- l --><a class="postlink-local" href="http://japan.nucleuscms.org/bb/viewtopic.php?p=17886#17886">viewtopic.php?p=17886#17886</a><!-- l -->

オフライン

#3 2007-12-13 19:29:44

Andy
メンバー
登録日: 2004-03-18
投稿: 1,495
ウェブサイト

Re: NP_MobileWithSinglePageとNP_EzCacheの組み合わせについて

EzCacheの中を次のように書き換えてみてください

	function event_InitSkinParse(&$data) {
		global $member, $blog;

		if ($member->isloggedin()) return;
		if ($blog && ($data['skin']->id != $blog->settings['bskin'])) return;

これでEzCacheがプラグインリストの中でMobileWithSinglePageより下にあればいいと思います。

オフライン

#4 2007-12-17 18:22:38

d3
メンバー
登録日: 2007-12-10
投稿: 3

Re: NP_MobileWithSinglePageとNP_EzCacheの組み合わせについて

返信が遅くなりました。みなさんありがとうございます。

>cha_cyaさん
フォーラムの中は検索したつもりでいたのですが、該当記事が見つからなかったのでみなさんどうにかして解決しているものと勘違いしていました。次にフォーラムにお世話になる場合はもっと調べてからにします。

>Andyさん
教えていただいた通り、

function event_InitSkinParse(&$data) {
		global $member;

		if ($member->isloggedin()) return;

の部分を

function event_InitSkinParse(&$data) { 
      global $member, $blog; 

      if ($member->isloggedin()) return; 
      if ($blog && ($data['skin']->id != $blog->settings['bskin'])) return;

に書き換えて、プラグインリストの順番を確認しました。EzCacheはリストの一番下にあります。

PCではPCの、ケータイではケータイのスキンでそれぞれ表示するようになりましたが、効果を確認するために「Show Cache」ボタンを押しても空白のウインドウが出るだけになってしまいました。
試しにphpMyAdminでデータベースを覗いてみると、EzCache用のテーブルは空のままです。
これはキャッシュが効いていないんじゃないかと思うのですが、私の書き換え方が間違っているのでしょうか。
よろしくお願いします。

オフライン

#5 2007-12-17 18:39:53

Andy
メンバー
登録日: 2004-03-18
投稿: 1,495
ウェブサイト

Re: NP_MobileWithSinglePageとNP_EzCacheの組み合わせについて

ごめんなさい

      if ($blog && ($data['skin']->id != $blog->settings['bdefskin'])) return;

でした。'bskin'→'bdefskin'

オフライン

#6 2007-12-17 19:26:55

d3
メンバー
登録日: 2007-12-10
投稿: 3

Re: NP_MobileWithSinglePageとNP_EzCacheの組み合わせについて

「bdefskin」に書き換えたらきちんと動作するようになりました。
Andyさん本当にありがとうございました。

オフライン

Board footer