サイト内検索
Cocoonフォーラム
書き込みの前に以下の3点をご確認ください。
何を書き込んだら良いか分からない場合は、以下のテンプレートをコピペしてご利用ください。
不具合・カスタマイズ対象ページのURL:
相談内容:
不具合の発生手順:
解決のために試したこと:
※文字だけでは正しく伝わらない可能性があるため、スクショ画像の添付もお願いします。
※高速化設定をしている場合は無効にしてください。
環境情報:※↑こちらに「Cocoon設定 → テーマ情報」にある「環境情報」を貼り付けてください。
環境情報の取得方法はこちら。
→ https://wp-cocoon.com/theme-report/
高速化設定を無効にするにはこちら。
→ https://wp-cocoon.com/theme-trouble/
フォーラム利用ガイドリンク
- フォーラムガイドライン
- よくある質問と答え(FAQ)
- サポート対象外のケース
- 原因不明の不具合用トラブルシューティング
- トピックにHTMLを貼り付ける方法(推奨ツール:notepad.pw)
- 真っ白画面でのエラーメッセージの確認方法
- ブラウザ環境チェックツール
- Cocoonカスタマイズ依頼
フォーラム質問後、問題等が解決した場合は結果を書き込んでいただけると幸いです。同様の問題で調べている方には、結果が一番気になる部分となります。
Topic starter
2024年1月29日 07:40
わいひら様
いつもCocoonを利用させて頂いております。
「アクセス集計機能」について教えて下さい。
【質問1】
・「アクセス集計」をサーバーcronで実行することは可能でしょうか?
【理由】
毎日0:00に記事を張り替えるサイトがあります。
このサイトでは、「アクセス集計」間隔を10分としていますが、0:00に削除した投稿が数分間「人気記事」に表示されてしまいます。
【効用】
サーバーcronで起動できるとすると以下の効用があると考えています。
設定例:日中 1時間間隔/深夜 数時間間隔
1.削除記事が表示される期間(時間)を1分程度にできる。
2.「アクセス集計」は深夜時間帯には計1~2回程度実行させればよいと考えますので、サーバー負荷を減らせる。
【質問2】
・「アクセス集計」を「投稿記事削除」タイミング(何かにフックさせて)で実行することは可能でしょうか?
【理由】【効用】は上記に類似します。
以上、よろしくお願いいたします。
2024年1月29日 15:14
「アクセス集計を実行」というのは動きを誤解しているように思いました。
「アクセス数をDBに記録する」ことは記事にアクセスが発生する度に行われています。この動作に設定の「キャッシュ更新間隔」は関係ありません。
これを制限したいのであれば、logging_page_access関数をカスタマイズ(特定の条件では処理をしないようなもの)する必要があると思います。
「キャッシュ更新間隔」が影響するのはランキングを表示しようとする時です。
キャッシュを10分に設定していたとしたら、過去10分以内にランキングが表示されたことがあればその時のキャッシュを使ってランキングを表示します。
10分に設定しているからと言って、ランキングを表示しようとしていない時にも10分ごとに処理が動いていたりはしません。
キャッシュを有効にするかどうか、キャッシュ更新間隔をどうするかはDB(wp_optionsテーブルのoption_name=theme_mods_cocoon-child-masterのレコード)に保存されています。
設定例:日中 1時間間隔/深夜 数時間間隔
DBの値を書き換えるような処理を書き、cronで実行すれば実現できそうに思いました。
・「アクセス集計」を「投稿記事削除」タイミング(何かにフックさせて)で実行することは可能でしょうか?
投稿が削除されたタイミングで実行されるフックとしてはdelete_postやwp_trash_postなどがあるようです。
これはWordPress本体のフックなので検索してみると良いと思います。
「アクセス集計を実行」が何を意図しているか不明ですが、削除された記事を人気記事に表示されないようにするということであれば、投稿削除時に人気記事のキャッシュを削除すれば良いと思います。
Cocoonではキャッシュの削除をdelete_popular_entries_caches関数で行っています。
これは「Cocoon設定>キャッシュ削除>人気記事ウィジェットキャッシュの削除」ボタンを押した時と同じ動作をします。
やっていることはDBの値の削除なので自身で書いても良いですが、削除時のフックでこの関数を実行すれば意図した動作になるように思います。
投稿削除時に人気記事ウィジェットの投稿が削除されるのはCocoonの機能として実装されても良いかも…?と思いますが、cronの方は必要なシーンが限定的なので自身でカスタマイズする必要があると思います。
わいひら reacted
Topic starter
2024年1月30日 09:16
はる 様
ご回答ありがとうございます。
はじめに申し上げますが、「キャッシュ」について当方が誤解している点はございません。
Cocoonの癖か、当方のカスタマイズのせいかは不明ですが、「ゴミ箱」へ移動済のPOSTを「人気記事」に表示させると、一部不具合が発生します。
今回の質問はこれを回避させる手段を『婉曲』に問うた内容でして「…思います」の人柱になる気にはなれません。
制作者様にご意見がなければ、それはそれでOKです。
Cocoonの集計機能については、某サーバー社で「重い処理」として例出されていますし、データ削除機能無し、テーブルキー最適かの検討がされておらず、当方としてこれらを『婉曲』に対応したい考えでおります。
問題の解決に至った場合には、トピック冒頭の「解決済み」をクリックしていただけますと幸いです。
また、有用な回答があった場合は返信右下にある「いいね!」もご活用ください。回答者の励みになります。
(CC BY-ND 2.1)準じていれば(リンクを貼っていただければ)転載も自由です。カスタマイズ記事を書く際にコード等をコピペ利用していただいて構いません。
フォーラムの使い方がよくわからない場合は、テストトピックで自由にテストしていただいて構いません。
最近の書き込みはこちら。
詳細なカスタマイズ依頼をするならこちら。