krakkhed Δημοσ. 20 Μαρτίου 2010 Δημοσ. 20 Μαρτίου 2010 <snip>...</snip> Και κάτι τελευταίο ψιλοάσχετο με τις αρχικές μου ερωτήσεις. Για να είναι τα links της μορφής ..../gr/index.php 'η .../en/index.php θα πρέπει αναγκαστικά να είναι σε διαφορετικούς φακέλους τα αρχεία; Όχι. Υπάρχει το λεγόμενο URL rewriting που σου επιτρέπει να ξαναγράφεις το URL σου με συγκεκριμένους κανόνες.. δλδ μπορείς να κάνεις τη σελίδα στο browser http://www.domain.ext/en/index.php να χτυπάει στον server το εξής: http://www.domain.ext/index.php?lang=en ρίξε μια ματιά στο : Apache Mod Rewrite και γενικότερα ψάξε για URL Rewrite ---------- Προσθήκη στις 22:50 ---------- Προηγούμενο μήνυμα στις 22:46 ---------- Μια τελευταία (; ) ερώτηση. Τη μεταβλητή της γλώσσας (πχ lang_id) να την μεταφέρω με cookie; δεν θέλω να την μεταφέρω με get (πχ index.php?lang_id=en) . Υπάρχει τρόπος να την κάνω post χωρίς να την έχω σε φόρμα; Βέβαια σε αυτή την περίπτωση θα υπάρχει θέμα όταν θα κάνει κάποιος back στη σελίδα. μπορείς να κάνεις χρήση session όπως λέει και ο Uberalles_gr, αλλά τότε θα έχει το πρόβλημα πως ένα search engine δεν θα μπορεί ποτέ να κάνει index σωστά τις σελίδες σου. Αυτό διότι και η αγγλική και η ελληνικέ έκδοση θα έχουν το ιδιο URL.. επίσης δεν θα μπορεί κανένας να επισκεφθεί κατευθείαν μια αγγλική σελίδα για τον ίδιο λόγο.. Αν από την άλλη κάνεις χρήση διαφορετικών φακέλλων, τότε δεν χρειάζεται να κρατάς πουθενά τη μεταβλητή της γλώσσας, αφού θα φορτώνεις διαφορετικά αρχεία..
isay Δημοσ. 20 Μαρτίου 2010 Δημοσ. 20 Μαρτίου 2010 Όχι. Υπάρχει το λεγόμενο URL rewriting που σου επιτρέπει να ξαναγράφεις το URL σου με συγκεκριμένους κανόνες.. δλδ μπορείς να κάνεις τη σελίδα στο browser http://www.domain.ext/en/index.php να χτυπάει στον server το εξής: http://www.domain.ext/index.php?lang=en ρίξε μια ματιά στο : Apache Mod Rewrite και γενικότερα ψάξε για URL Rewrite Ναι αλλά προϋποθέτει να το έχει ενεργοποιημένο by default ο server ή να μπορείς να το ενεργοποιήσεις μέσα από το htaccess. Εξαρτάται από τον hoster.
krakkhed Δημοσ. 20 Μαρτίου 2010 Δημοσ. 20 Μαρτίου 2010 Ναι αλλά προϋποθέτει να το έχει ενεργοποιημένο by default ο server ή να μπορείς να το ενεργοποιήσεις μέσα από το htaccess. Εξαρτάται από τον hoster. έχεις απόλυτο δίκιο, απλά το επισήμανα για να το ψάξει .. να μάθει και την τεχνολογία για το μέλλον
djargad Δημοσ. 21 Μαρτίου 2010 Μέλος Δημοσ. 21 Μαρτίου 2010 Ναι αλλά προϋποθέτει να το έχει ενεργοποιημένο by default ο server ή να μπορείς να το ενεργοποιήσεις μέσα από το htaccess. Εξαρτάται από τον hoster. Αυτό πως θα μπορούσα να το δώ; Kαι στην περίπτωση που μπορώ να το χρησιμοποιήσω, τα links στο document θα τα δηλώνω πχ /test_site/en/ ;;
isay Δημοσ. 21 Μαρτίου 2010 Δημοσ. 21 Μαρτίου 2010 Διαβάζεις αυτό που σου είπε ο krakkhed http://httpd.apache.org/docs/2.0/misc/rewriteguide.html ρωτάς τον hoster σου αν το υποστηρίζει
djargad Δημοσ. 21 Μαρτίου 2010 Μέλος Δημοσ. 21 Μαρτίου 2010 Πάντως και με phpinfo() είδα στον τομέα apache2handler ποιά modules είναι φορτωμένα. Στον hoster μου είναι οπότε συνεχίζουμε το διαβάσμα με όρεξη
Uberalles_gr Δημοσ. 21 Μαρτίου 2010 Δημοσ. 21 Μαρτίου 2010 Γενικά, είναι εύκολο το θέμα που έχεις (δίγλωσσο site ή και πολύ περισσότερες γλώσσες) αλλά το κάνεις (κάνετε) να φαίνεται δύσκολο μπορείς να κάνεις χρήση session όπως λέει και ο Uberalles_gr, αλλά τότε θα έχει το πρόβλημα πως ένα search engine δεν θα μπορεί ποτέ να κάνει index σωστά τις σελίδες σου. Αυτό διότι και η αγγλική και η ελληνικέ έκδοση θα έχουν το ιδιο URL.. επίσης δεν θα μπορεί κανένας να επισκεφθεί κατευθείαν μια αγγλική σελίδα για τον ίδιο λόγο.. Πολύ απλά μπορείς να ορίσεις από default ποια γλώσσα θα φαίνεται. Έτσι και αλλιώς κανείς δεν θα πάει να γράψει http://www.mysite.gr/contact.html'>http://www.mysite.gr/contact.html αλλά με την μία το http://www.mysite.gr
Σαρμης Δημοσ. 23 Μαρτίου 2010 Δημοσ. 23 Μαρτίου 2010 Καλημέρα, είμαι developer σε ένα σχετικά μεγάλο site δίγλωσσο, δεν το έφτιαξα από την αρχή αλλά ήμουν στην ομάδα από την μέση και μετά. Η τεχνική που χρησιμοποίησαν τα παιδιά ήταν με μεταβλητή SESSION και με προεπιλεγμένη γλώσσα τα Ελληνικά εννοείτε, αλλά αντιμετωπίζω τώρα εγώ το εξής πρόβλημα. Το site στηρίζεται πολύ στο google μιας και έχει γύρω στις 7000-8000 χιλιάδες φωτογραφίες και καμιά 500 κείμενα αλλά το google δεν μπορεί να διαβάσει την Αγγλική έκδοση, μιας και για να φορτώσουν τα Αγγλικά πρέπει να αλλάξει η μεταβλητή, κάτι που δεν μπορεί να το κάνει το google. Η λύση που σκέφτηκα είναι να δημιουργήσω ένα Index_en.php το οποίο απλά θα φορτώνει σαν προεπιλεγμένη γλώσσα τα αγγλικά. Είναι λάθος σκέψη;;
krakkhed Δημοσ. 25 Μαρτίου 2010 Δημοσ. 25 Μαρτίου 2010 Γενικά, είναι εύκολο το θέμα που έχεις (δίγλωσσο site ή και πολύ περισσότερες γλώσσες) αλλά το κάνεις (κάνετε) να φαίνεται δύσκολο Πολύ απλά μπορείς να ορίσεις από default ποια γλώσσα θα φαίνεται. Έτσι και αλλιώς κανείς δεν θα πάει να γράψει http://www.mysite.gr/contact.html'>http://www.mysite.gr/contact.html αλλά με την μία το http://www.mysite.gr Πως θα με στείλει το google (η όποιοδήποτε ψαχτήρι) σε μια αγγλική σελίδα του site αν η default είναι η ελληνική, και η γλώσσα δεν ορίζεται από το url αλλά απο session μεταβλήτη ? ---------- Προσθήκη στις 16:05 ---------- Προηγούμενο μήνυμα στις 16:00 ---------- Καλημέρα, είμαι developer σε ένα σχετικά μεγάλο site δίγλωσσο, δεν το έφτιαξα από την αρχή αλλά ήμουν στην ομάδα από την μέση και μετά. Η τεχνική που χρησιμοποίησαν τα παιδιά ήταν με μεταβλητή SESSION και με προεπιλεγμένη γλώσσα τα Ελληνικά εννοείτε, αλλά αντιμετωπίζω τώρα εγώ το εξής πρόβλημα. Το site στηρίζεται πολύ στο google μιας και έχει γύρω στις 7000-8000 χιλιάδες φωτογραφίες και καμιά 500 κείμενα αλλά το google δεν μπορεί να διαβάσει την Αγγλική έκδοση, μιας και για να φορτώσουν τα Αγγλικά πρέπει να αλλάξει η μεταβλητή, κάτι που δεν μπορεί να το κάνει το google. Η λύση που σκέφτηκα είναι να δημιουργήσω ένα Index_en.php το οποίο απλά θα φορτώνει σαν προεπιλεγμένη γλώσσα τα αγγλικά. Είναι λάθος σκέψη;; Αν όλο το site λειτουργεί μέσα από την index.php τότε αυτό που προτείνεις μπορεί να λειτουργήσει .. αμ δλδ. κάθε υποσελίδα του χαρακτηρίζεται από παραμέτρους του url που τις διαβάζει πάντα η index.php .. (χωρίς να είναι όμως το καρφωτό το index.php στα links, ωστε μέσω της index_en.php να αλλάζουν οι παράμετροι ενώ παραμένεις στην _en.php και δεν σε στέλνει με το ζόρι πίσω στην index.php..) ίσως το περιέγραψα λιγο περίεργα.. ελπίζω να κατάλαβες τι λέω.. αν θες πιο αναλυτικά πες μου ..
Σαρμης Δημοσ. 25 Μαρτίου 2010 Δημοσ. 25 Μαρτίου 2010 krakkhed Το έχω υλοποιήσει και λειτουργεί.. απλά αυτή ήταν η πρώτη και σίγουρα με πολλά ελαττώματα - μειονεκτήματα λύση. (βασικά κακώς απαντάω αφού τελικά το boss ζήτησε να είναι ανεξάρτητα τα site για να βλέπει καλύτερα τα google analytics χώρια για το Ελληνικό και χώρια για το Αγγλικό.) ευχαριστώ πάντως για την απάντηση.
Uberalles_gr Δημοσ. 26 Μαρτίου 2010 Δημοσ. 26 Μαρτίου 2010 Η κάθε λύση έχει τα μειονεκτήματα και τα πλεονεκτήματα της. Από εκεί και πέρα κρίνεις εσύ τι βολεύει περισσότερο και το υλοποιείς. Ήδη για δίγλωσσο site δώσαμε 3-4 διαφορετικές λύσεις.. Άρα διαλέγεις και παίρνεις.. @krakkhed Σε αυτό που ρωτάς δεν ξέρω να σου απαντήσω με σιγουριά. Εγώ την λύση με τα Session την πρότεινα γιατί το παιδί που έκανε το Post δεν ήθελε να φαίνεται το URL η γλώσσα.
krakkhed Δημοσ. 26 Μαρτίου 2010 Δημοσ. 26 Μαρτίου 2010 Έχεις δίκιο uberalles_gr για την αρχική ερώτηση, απλά προσπάθησα να το πάω ένα βήμα πιο πέρα και να του προλάβω πιθανα προβλήματα στο μέλλον (σε περίπτωση που δεν το έχει σκεφτεί ..)
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.