Hallo liebe Community.
Bei der Darstellung der product_reviews (Bewertungen) gibt es das Problem, daß in zwei Ausgaben, die Zeilenumbrüche des Bewertungstextes (reviews_text) nicht ausgegeben werden.
Das hat zur Folge, daß der Text in eine Zeile geschrieben wird und somit unformatiert erscheint.
Das ist besonders ärgerlich, wenn man um aller Kunden willen, eine Stellungnahme unter eine Bewertung schreiben möchte, da diese sich ja nun nicht abhebt von der vom Kunden geschriebenen Bewertung.
Betroffen sind:
- reviews.php (Ausgabe in template/YOUR_TEMPLATE/module/reviews.html)
(die Übersicht aller reviews) - template/YOUR_TEMPLATE/module/products_reviews.html
(die reviews die in einem tab in product_info ausgegeben werden)
Um das Problem zu beheben, folgendes tun:
In /reviews.php folgendes suchen
while ($reviews = xtc_db_fetch_array
($reviews_query)) { $module_data[] = array ('PRODUCTS_IMAGE' => DIR_WS_THUMBNAIL_IMAGES
.$reviews['products_image'], $reviews['products_name'], 'PRODUCTS_LINK' => xtc_href_link
(FILENAME_PRODUCT_REVIEWS_INFO
, 'products_id='.$reviews['products_id'].'&reviews_id='.$reviews['reviews_id']), 'PRODUCTS_NAME' => $reviews['products_name'], 'AUTHOR' => $reviews['customers_name'], 'TEXT' => '('.sprintf(TEXT_REVIEW_WORD_COUNT
, xtc_word_count
($reviews['reviews_text'], ' ')).')<br />'.htmlspecialchars($reviews['reviews_text']).'..', 'RATING' => xtc_image
('templates/'.CURRENT_TEMPLATE
.'/img/stars_'.$reviews['reviews_rating'].'.gif', sprintf(TEXT_OF_5_STARS
, $reviews['reviews_rating']))); } und ersetzen mit
//replaced htmlspecialchars with nl2br in $reviews['reviews_text'] to fix missing breaks in reviews.html (reviews.php), noRiddle while ($reviews = xtc_db_fetch_array
($reviews_query)) { $module_data[] = array ('PRODUCTS_IMAGE' => DIR_WS_THUMBNAIL_IMAGES
.$reviews['products_image'], $reviews['products_name'], 'PRODUCTS_LINK' => xtc_href_link
(FILENAME_PRODUCT_REVIEWS_INFO
, 'products_id='.$reviews['products_id'].'&reviews_id='.$reviews['reviews_id']), 'PRODUCTS_NAME' => $reviews['products_name'], 'AUTHOR' => $reviews['customers_name'], 'TEXT' => '('.sprintf(TEXT_REVIEW_WORD_COUNT
, xtc_word_count
($reviews['reviews_text'], ' ')).')<br />'.nl2br($reviews['reviews_text']).'..', 'RATING' => xtc_image
('templates/'.CURRENT_TEMPLATE
.'/img/stars_'.$reviews['reviews_rating'].'.gif', sprintf(TEXT_OF_5_STARS
, $reviews['reviews_rating']))); } Es wurde bei $reviews['reviews_text'] htmlspecialchars durch nl2br ersetzt.
Meinen Kommentar könnt ihr natürlich entfernen.
Und dann noch in /includes/classes/product.php folgendes suchen
while ($reviews = xtc_db_fetch_array
($reviews_query, true)) { $row ++; $data_reviews[] = array ('AUTHOR' => $reviews['customers_name'], 'DATE' => xtc_date_short
($reviews['date_added']), 'RATING' => xtc_image
('templates/'.CURRENT_TEMPLATE
.'/img/stars_'.$reviews['reviews_rating'].'.gif', sprintf(TEXT_OF_5_STARS
, $reviews['reviews_rating'])), 'TEXT' => $reviews['reviews_text']); if ($row == PRODUCT_REVIEWS_VIEW
) break; und mit folgendem ersetzen
//added nl2br to reviews_text to fix missing breaks in products_reviews.html, noRiddle while ($reviews = xtc_db_fetch_array
($reviews_query, true)) { $row ++; $data_reviews[] = array ('AUTHOR' => $reviews['customers_name'], 'DATE' => xtc_date_short
($reviews['date_added']), 'RATING' => xtc_image
('templates/'.CURRENT_TEMPLATE
.'/img/stars_'.$reviews['reviews_rating'].'.gif', sprintf(TEXT_OF_5_STARS
, $reviews['reviews_rating'])), 'TEXT' => nl2br($reviews['reviews_text'])); if ($row == PRODUCT_REVIEWS_VIEW
) break; Hier wurde nl2br bei reviews['reviews_text'] hinzugefügt.
Nach den genannten Änderungen ist die Ausgabe der reviews in Ordnung.
Grüsse,
noRiddle
Linkback: https://www.modified-shop.org/forum/index.php?topic=18676.0