Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλημέρες σε όλους. 

Έχω ένα site με wordpress cms, στο οποίο έχω φτιάξει μία archive σελίδα για ένα custom post type που έχω φτιάξει... Στη σελίδα αυτή ζητώ να πάρει όλα τα custom posts και orderby 'title'. Οι τίτλοι είναι σε Αγγλικά ή σε Ελληνικά. Ενώ τα κάνει σωστά order, μου εμφανίζει πρώτα τους Αγγλικούς τίτλους, και μετά τους Ελληνικούς, ενώ εγώ το θέλω ανάποδα... δηλαδή πρώτα τους Ελληνικούς τίτλους αλφαβητικά και μετά τους Αγγλικούς. 

Έχω ρωτήσει σε ξένα forum και η απάντηση που έλαβα είναι να αλλάξω τα collation στην mysql... έκανα δοκιμές αλλά χωρίς επιτυχία. 

Γνωρίζει κανείς πως μπορεί να γίνει; 

Ευχαριστώ για το χρόνο σας! 

Δημοσ.

Αν θες δώσε μερικές πληροφορίες ακομα. Τα άρθρα που λες είναι ολα ανεξαρτητα; η μηπως εχεις κανα plugin (τύπου polylang) που μεταφράζεις άρθρα και τα συνδέεις μεταξύ τους;

Επιπλέον, απο που προσπαθείς να τα κάνεις sort? Μεσα από το wordpress, απο καποιο plugin η απο την mysql?

Νομιζω αυτες οι πληροφορίες ίσως προσελκύσουν  καμια απάντηση ;)

Δημοσ. (επεξεργασμένο)

Τι έχεις; Ένα array από posts, sorted by title όπου το σορτάρισμα έβαλε πρώτα λατινικούς χαρακτήρες και μετά ελληνικούς.
Βρες το index του πρώτου post που το title του ξεκινάει με ελληνικό χαρακτήρα.
Σπάσε το array στα 2, στο σημείο που ξεκινάνε τα ελληνικά, και μετά μέρτζαρε τα arrays με πρώτο αυτό με τους ελληνικούς χαρακτήρες.
Έτοιμος.

Επεξ/σία από vadou
Δημοσ.

Επίσης μπορείς να επέμβεις στο query και να βάλεις στο Order by:

ORDER BY CASE WHEN post_title REGEXP \'[a-z]\' THEN 2 ELSE 1 END

To οποίο κάνει ότι post title έχει λατινικά, να εμφανίζεται μετά τα Ελληνικά.

  • Like 1

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...