난 그냥 당신을 안내 할 것입니다, 쿼리 부분은 ... 당신에게 또한 catalog/model/catalog/product.php
편집 업입니다. 이 부분 확인 :
$sort_data = array(
'pd.name',
'p.model',
'p.quantity',
'p.price',
'rating',
'p.sort_order',
'p.date_added'
);
그리고 새 정렬을 추가하십시오. bestsellers
, 그래서 당신은이 배열 될 겁니다 : 올바른 쿼리를 추가 한 후
if (isset($data['sort']) && in_array($data['sort'], $sort_data)) {
if ($data['sort'] == 'pd.name' || $data['sort'] == 'p.model') {
$sql .= " ORDER BY LCASE(" . $data['sort'] . ")";
} elseif ($data['sort'] == 'p.price') {
$sql .= " ORDER BY (CASE WHEN special IS NOT NULL THEN special WHEN discount IS NOT NULL THEN discount ELSE p.price END)";
} elseif ($data['sort'] == 'bestsellers') { // <-- YOUR NEW SORTING
$sql .= " ORDER BY <ADD YOUR SORTING QUERY HERE>";
} else {
$sql .= " ORDER BY " . $data['sort'];
}
} else {
$sql .= " ORDER BY p.sort_order";
}
:
$sort_data = array(
'pd.name',
'p.model',
'p.quantity',
'p.price',
'rating',
'p.sort_order',
'p.date_added',
'bestsellers',
);
지금 당신은 if (isset($data['sort']) && in_array($data['sort'], $sort_data)) {
로 시작하는 다음 부분을 수정해야 할 것이다 그래서 당신은 끝낼한다 <ADD YOUR SORTING QUERY HERE>
대신에 완료해야합니다.
나는이 변화를 만들어 잘 작동하는 코드를 테스트 한
회신 해 주셔서 감사합니다 shadyyx ... 아래 쿼리를 추가 한 후 오류가 발생합니다. SELECT DISTINCT product_id FROM oc_order_product https://www.dropbox.com/s/t2cb5goyjw8qkhj/error.txt에서 오류를 확인할 수 있습니다. –
@Vin_fugen 'ORDER BY'키워드가 누락되었습니다. 이전에 'space'를 남기지 않았습니다. 귀하의 질의 ...'$ sql. = "행 대신에 추가 한 코드를 보여주십시오. <당신의 질의를 추가하십시오>",'. – shadyyx
$ sql. = "SELECT DISTINCT product_id FROM oc_order_product"를 (를) 추가했습니다. $ sql 대신. = "귀하의 주문을 여기에 추가하십시오."; –