(WordPress)Popular Post がヘンだったのはキャッシュのせいだったとわかったが腑に落ちぬぞ

わかったけどさぁ…。

Chrome, IE の「検証」でコンソールログに「WPP: Oops, invalid request!」が出ていた。これは Popular Post プラグインが出してたもので、ここに対応:

wordpress-popular-posts.php
 1 public function update_views_ajax(){
 2 
 3 	if ( !wp_verify_nonce($_POST['token'], 'wpp-token') || !$this->__is_numeric($_POST['wpp_id']) )
 4 		die("WPP: Oops, invalid request!");
 5 
 6 	$nonce = $_POST['token'];
 7 	$post_ID = $_POST['wpp_id'];
 8 
 9 	$exec_time = 0;
10 
11 	$start = $this->__microtime_float();
12 	$result = $this->__update_views($post_ID);
13 	$end = $this->__microtime_float();
14 
15 	$exec_time += round($end - $start, 6);
16 
17 	if ( $result ) {
18 		die( "WPP: OK. Execution time: " . $exec_time . " seconds" );
19 	}
20 
21 	die( "WPP: Oops, could not update the views count!" );
22 
23 } // end update_views_ajax

あぁこうなればもうキャッシュの問題しかありえんわ、と。

キャッシュのプラグインをいくつか入れたり消したりとか色々最初試行錯誤してたんで、今何がどう有効になってんのか完全に失念してるんだけれど、「Performance → Empty All Caches」でこの WPP エラーは喰らわなくなった。なんだろこれは Total Cache のヤツかな?

というわけで、「Popular Post」に罪があったわけでもないんだけれども、ただなぁ…、解せんよ。まずそもそもキャッシュのほうの振る舞いもちょっと気に入らない。なんぞ有効期限的なものは管理してないのかな? これはちょっと見直さないとな。「Popular Post」の方も、作りは考え直したほうがいいんじゃないのかな。

これ、ひとまずはたまに手動でキャッシュクリアするしかないかなぁ…。