Κεφαλαία χωρίς τόνους στα ελληνικά
- Δημήτρης Τρίκας
- Εμφανίσεις: 4900
Πολλές φορές σε κάποια σημεία από το template που έχουμε στο Joomla! site μας θέλουμε να χρησιμοποιήσουμε, κυρίως σε κουμπιά ή τίτλους, κεφαλαία Ελληνικά γράμματα.
Τι γίνεται όμως στην περίπτωση που οι λέξεις που χρησιμοποιούμε έχουν τόνους;
Οι περισσότεροι σύγχρονοι browsers απαλείφουν τους τόνους και έτσι το πρόβλημα δεν παρουσιάζεται.
Σε κάποιους browsers όμως, κυρίως στον Safari και όλες τις εκδόσεις του Internet Explorer (!!) αυτό δεν συμβαίνει, με αποτέλεσμα να έχουμε την (αντιαισθητική) παρουσία τόνων στα κεφαλαία.
Οι λύσεις:
- Γράφουμε τους τίτλους που θέλουμε χωρίς τόνους, ή ΚΕΦΑΛΑΙΑ
Δεν προτείνεται, καθώς δεν είναι βέλτιστη πρακτική σε ότι αφορά το on-site SEO της σελίδας
Πολλές φορές οι λέξεις έρχονται από το αρχείο της γλώσσας του site και εμφανίζονται και σε άλλα σημεία παρουσιάζοντας το αντίθετο πρόβλημα (μικρά γράμματα χωρίς τόνους) - "Καταργούμε" τον χαρακτηρισμό "Uppercase" από όσπου υπάρχει στο css και το αντικαθιστούμε με "None"
- Ακολουθούμε την παρακάτω διαδικασία:
Εντοπίζουμε το αρχείο του template στο οποίο υπάρχει το <HEAD> του template
Με το «αγαπημένο» μας editor ανοίγουμε το αρχείο και προσθέτουμε τον παρακάτω js κώδικα ακριβώς πριν το </HEAD>
<script>(function(e){e.extend(e.expr[":"],{uppercase:function(t){var n=e(t).css("text-transform");return typeof n!=="undefined"&&n==="uppercase"},smallcaps:function(t){var n=e(t).css("font-variant");return typeof n!=="undefined"&&n==="small-caps"}});e.extend({removeAcc:function(e){var t=e.tagName.toLowerCase()=="input"?e.value:e.innerHTML;t=t.replace(/Ά/g,"Α");t=t.replace(/ά/g,"α");t=t.replace(/Έ/g,"Ε");t=t.replace(/έ/g,"ε");t=t.replace(/Ή/g,"Η");t=t.replace(/ή/g,"η");t=t.replace(/Ί/g,"Ι");t=t.replace(/Ϊ/g,"Ι");t=t.replace(/ί/g,"ι");t=t.replace(/ϊ/g,"ι");t=t.replace(/ΐ/g,"ι");t=t.replace(/Ό/g,"Ο");t=t.replace(/ό/g,"ο");t=t.replace(/Ύ/g,"Υ");t=t.replace(/Ϋ/g,"Υ");t=t.replace(/ύ/g,"υ");t=t.replace(/ϋ/g,"υ");t=t.replace(/ΰ/g,"υ");t=t.replace(/Ώ/g,"Ω");t=t.replace(/ώ/g,"ω");e.tagName.toLowerCase()=="input"?e.value=t:e.innerHTML=t}});e.fn.extend({removeAcc:function(){return this.each(function(){e.removeAcc(this)})}})})(jQuery);jQuery(document).ready(function(e){e(":uppercase").removeAcc();e(document).ajaxComplete(function(t,n,r){e(":uppercase").removeAcc()})})</script>
Έτσι με αυτόν τον τρόπο έχουμε λύσει το πρόβλημα και πλέον το ΑΝΟΊΧΤΟΣ ΚΏΔΙΚΑΣ εμφανίζεται ως ΑΝΟΙΧΤΟΣ ΚΩΔΙΚΑΣ.
TIP: Εάν θέλουμε να υπάρχουν τα διαλυτικά στις λέξεις τότε απλά αφαιρούμε από το παραπάνω όλες τις αναφορές σε αυτά.