Jump to content

Σειρά απεικόνισης best sellers


aramonkg

Recommended Posts

Καλησπέρα,

αναφέρομαι στο module ps_bestsellers (PS 1.7.5.1) και τον τρόπο που δείχνει τα προϊόντα. Το θέμα μου είναι ότι επιλέγει προϊόντα από μήνες πριν. Θα ήθελα να το αλλάξω σε πιο πρόσφατα best sellers.

Στο ps_bestsellers.php άλλαξα το $query->setSordOrder όπως φαίνεται πιο κάτω αλλά δεν παρατήρησα κάποια αλλαγή στα προϊόντα. Κάθε ιδέα ευπρόσδεκτη.

 $query
            ->setResultsPerPage($nProducts)
            ->setPage(1)
        ;

        $query->setSortOrder(new SortOrder('product', 'date_upd', 'desc'));

        $result = $searchProvider->runQuery(
            $context,
            $query
        );

 

Edited by aramonkg (see edit history)
Link to comment
Share on other sites

11 hours ago, aramonkg said:

Καλησπέρα,

αναφέρομαι στο module ps_bestsellers (PS 1.7.5.1) και τον τρόπο που δείχνει τα προϊόντα. Το θέμα μου είναι ότι επιλέγει προϊόντα από μήνες πριν. Θα ήθελα να το αλλάξω σε πιο πρόσφατα best sellers.

Στο ps_bestsellers.php άλλαξα το $query->setSordOrder όπως φαίνεται πιο κάτω αλλά δεν παρατήρησα κάποια αλλαγή στα προϊόντα. Κάθε ιδέα ευπρόσδεκτη.


 $query
            ->setResultsPerPage($nProducts)
            ->setPage(1)
        ;

        $query->setSortOrder(new SortOrder('product', 'date_upd', 'desc'));

        $result = $searchProvider->runQuery(
            $context,
            $query
        );

 

Αν και δεν είναι ξεκάθαρο τι θέλεις. Θέλεις τα best seller που είναι από παλιά να εμφανίζονται αλλά να είναι στο τέλος ή να μην εμφανίζονται καθόλου?

Αυτό που έκανες αλλάζει την σειρά που εμφανίζονται τα προϊόντα από αυτά που έχει επιλέξει.

Μάλλον θα πρέπει να το αλλάξεις εκεί που επιλέγει τα προϊόντα αν δεν θέλεις να εμφανίζονται καθόλου τα παλιά προϊόντα.

Ειδάλλως εκεί που έκανες την αλλαγή βάλε sort order το creation date και όχι το update date.

Link to comment
Share on other sites

Ευχαριστώ για την απάντηση.

Απλώς θέλω τα παλιότερα best seller να είναι τελευταία... Όταν λες creation date ενοείς το date_add; Το δοκίσαμα κι αυτό αλλά χωρίς επιτυχία...

Link to comment
Share on other sites

5 hours ago, aramonkg said:

Ευχαριστώ για την απάντηση.

Απλώς θέλω τα παλιότερα best seller να είναι τελευταία... Όταν λες creation date ενοείς το date_add; Το δοκίσαμα κι αυτό αλλά χωρίς επιτυχία...

Ναι το date_add. Θα πρέπει να στα βγάζει με την σειρά που δημιουργήθηκαν τα προϊόντα. Μήπως ήταν cached η σελίδα και δεν στα έβγαλε σωστά? Δεν υπάρχει λόγο να μην στα βγάλει όπως σου λέω. Εκτός αν έχει αλλάξει το creation date....

Link to comment
Share on other sites

7 hours ago, sanctusmob said:

Ναι το date_add. Θα πρέπει να στα βγάζει με την σειρά που δημιουργήθηκαν τα προϊόντα. Μήπως ήταν cached η σελίδα και δεν στα έβγαλε σωστά? Δεν υπάρχει λόγο να μην στα βγάλει όπως σου λέω. Εκτός αν έχει αλλάξει το creation date....

Έλεγξα τους πίνακες στη βάση, δεν παρατήρησα κάποια αλλάγη στις ημερομηνίες... Είχα κάνει clear cache, force compliation στο BO μετά την αλλαγή και φόρτωσα το site σε διαφορετικό browser σε incognito mode. Και πάλι δε δούλευε...

Τελικά το διόρθωσα αλλάζοντας στο BestSalesProductSearchProvider.php το sales σε date_add

 public function runQuery(
        ProductSearchContext $context,
        ProductSearchQuery $query
    ) {
        $sortBySales = (new SortOrder('product', 'date_add', 'desc'))->setLabel(
            $this->translator->trans('Sales, highest to lowest', array(), 'Shop.Theme.Catalog')
        );

Άλλα κάτι μου λέει ότι δεν είναι η ιδανική λύση...

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...