WordPress WooCommerce 移除評論、數量分析

起初是因為我在Facebook 社團看到有人發文說:






他闡述到他的Woocommerce 評價(也就是評論) 已改成串接FB 留言部分,但是他想要移除Woocommerce 本身評價旁邊數量(0) 的留言數量:






↑ 他問題出在,他已經串連Facebook Comments ,但是相關留言(人數) 評價右手邊(0) 數量並未變更,因為再者他不是本身所評價系統部分(而是fb 留言),所以故無法隨時更新。



但是看到他有經過研究和尋找,找到了位於/woocommerce/single-product/tabs/tabs.php 文件部分:







上述代碼部分,他表示移除該段所有整個區塊(tables) 會被移除。

↓ 下列為目前tables 區塊正常page:








後我們拿掉他上述所截圖的那區塊code:







可以發現描述、評價(0) 欄位皆被移除,因為在程式碼裡面該段:


<li class="<?php echo esc_attr( $key ); ?>_tab" id="tab-title-<?php echo esc_attr( $key ); ?>" role="tab" aria-controls="tab-<?php echo esc_attr( $key ); ?>">
<a href="#tab-<?php echo esc_attr( $key ); ?>"><?php echo apply_filters( 'woocommerce_product_' . $key . '_tab_title', esc_html( $tab['title'] ), $key ); ?></a>
</li>

 a 語法標籤裡的連結為#tab, 他是根據語言文件檔(esc_attr) = $key 上面所文字去產生連結,所以例:評價(在語言文件裡文字標籤為:Reviews) ,因此他便會自動產生為(#tab-reviews) 連結。






因此也可以看到該人兄所截圖程式碼的div (woocommerce-tabs wc-tabs-wrapper) 位置,也就包含了欄位(選單) 整個部分,所以要單獨移除評價或評價(數量) 不可在這修改



經過我一番研究後,tables 區塊的(評價) 核心位置在 wp-content\plugins\woocommerce\includes\wc-template-functions.php 該文件檔案

大致在1666行:







可以看到該段註解為評價顯示地方,判斷如果區塊(tabs 存在) 則取得翻譯文件(Reviews) 標籤裡頭的翻譯文字,因此更可以非常確定該段為評價顯示所在。


所以我們來測試,如果要移除整個評價部分,只需要移除評論判斷語句:







以下結果:





則可看到,評價該區位已被移除,那這位仁兄需要結果是評價旁邊的(數量),因此我們同樣的找到剛剛上面1666行位置:







那麼我該怎麼找呢?答案就是Reviews 旁邊的(%d) 代碼,因為他是代表人數代碼(語法) 意思,在翻譯譯文也可知道:












我們只要在譯文方面刪除 %d,移除後結果:









這樣就不會因所嵌入的任何留言系統,留言數量會有影響(或不變更)。



*此解決方法目前不知會不會因為更新版本(寫法變更) 而有所變動,所以作者在測試時為WooCommerce 最新版本(  <=3.4.5 )。


轉載請註明原文連結,感謝~





  • 分享: