注意:有些標點字符要換成英文格式,否則會錯。希望有需要的人能順利解決在zen cart商品頁面顯示評論的功能。
操作步驟如下:
1,從includesmodulespages product_reviewsproduct_reviews page,這里復制以下代碼至includesmodulespagesproduct_infoheader.php中(注意要放在PHP代碼里面.)
$review_status = ” AND r.status = 1″;
$reviews_query_raw = “SELECT r.reviews_id, left(rd.reviews_text, 300) as reviews_text, r.reviews_rating, r.date_added, r.customers_name
FROM ” . TABLE_REVIEWS . ” r, ” . TABLE_REVIEWS_DESCRIPTION . ” rd
WHERE r.products_id = :productsID
AND r.reviews_id = rd.reviews_id
AND rd.languages_id = :languagesID ” . $review_status . ”
ORDER BY r.reviews_id desc”;
$reviews_query_raw = $db->bindVars($reviews_query_raw, ‘:productsID’, $_GET['products_id'], ‘integer’);
$reviews_query_raw = $db->bindVars($reviews_query_raw, ‘:languagesID’, $_SESSION['languages_id'], ‘integer’);
$reviews_split = new splitPageResults($reviews_query_raw, MAX_DISPLAY_NEW_REVIEWS);
$reviews = $db->Execute($reviews_split->sql_query);
$reviewsArray = array();
while (!$reviews->EOF) {
$reviewsArray[] = array(‘id’=>$reviews->fields['reviews_id'],
‘customersName’=>$reviews->fields['customers_name'],
‘dateAdded’=>$reviews->fields['date_added'],
‘reviewsText’=>$reviews->fields['reviews_text'],
‘reviewsRating’=>$reviews->fields['reviews_rating']);
$reviews->MoveNext();
}
2,從這里includestemplates YOUR_TEMPLATE_NAMEtemplatestpl_product_reviews_default.php復制以下以下代碼至: includestemplatesCUSTOMtemplatestpl_product_info_display.php
Reviews
if ($reviews_split->number_of_rows > 0) {
if ((PREV_NEXT_BAR_LOCATION == ‘1′) || (PREV_NEXT_BAR_LOCATION == ‘3′)) {
?>
display_count(TEXT_DISPLAY_NUMBER_OF_REVIEWS); ?>
display_links(MAX_DISPLAY_PAGE_LINKS, zen_get_all_get_params(array(‘page’, ‘info’, ‘main_page’))); ?>
}
foreach ($reviewsArray as $reviews) {
?>
’ . zen_image_button(BUTTON_IMAGE_READ_REVIEWS , BUTTON_READ_REVIEWS_ALT) . ‘’; ?>
–>
’) . ((strlen($reviews['reviewsText']) >= 300) ? ‘…’ : ”); ?>
}
?>
} else {
?>
’ . TEXT_APPROVAL_REQUIRED: ”); ?>
}
if (($reviews_split->number_of_rows > 0) && ((PREV_NEXT_BAR_LOCATION == ‘2′) || (PREV_NEXT_BAR_LOCATION == ‘3′))) {
?>
display_count(TEXT_DISPLAY_NUMBER_OF_REVIEWS); ?>
display_links(MAX_DISPLAY_PAGE_LINKS, zen_get_all_get_params(array(‘page’, ‘info’, ‘main_page’))); ?>
}
?>
’ . zen_image_button(BUTTON_IMAGE_WRITE_REVIEW, BUTTON_WRITE_REVIEW_ALT) . ‘’; ?>
for
3,大功完成80%,TEXT_OF_5_STARS這樣顯示不太好,所以最后讓我們來完善語言項,找到語言文件includes/languages/english/product_info.php的結尾處加入代碼:
//bof product reviews
define('TEXT_OF_5_STARS', '%s of 5 Stars');
//eof product reviews
4,完成。