ECstore 後台報表頁面顯示空白,通常是因為定時任務執行的分析服務(ectools_analysis_day、ectools_analysis_hour)在 services.xml 中未註冊對應的分析類別,導致無資料產生。
crontab 定時任務正常執行。app/ectools/lib/analysis/task.php 中 ectools_analysis_task 類的 analysis_day() 與 analysis_hour() 方法。kernel::serviceList('ectools_analyse_day') 迴圈執行註冊的分析類別。app/ectools/services.xml,發現對應服務區塊為空:<service id="ectools_analysis_hour"></service>
<service id="ectools_analysis_day"></service>
在 services.xml 中加入所需統計的類別(依業務需求調整):
<service id="ectools_analysis_hour">
<class>b2c_analysis_advanceday</class>
<class>b2c_analysis_saleday</class>
<class>b2c_analysis_shopsale</class>
</service>
<service id="ectools_analysis_day">
<class>b2c_analysis_advanceday</class>
<class>b2c_analysis_saleday</class>
<class>b2c_analysis_shopsale</class>
</service>
儲存後重新執行定時任務或手動觸發,報表即可正常顯示資料。
b2c_analysis_advanceday:廣告效果日統計。b2c_analysis_saleday:銷售日統計。b2c_analysis_shopsale:店鋪銷售統計。