Mammals / Ola Anderson

Detta är bloggen för min enskilda firma Mammals. Den innehåller sådant jag är intresserad av eller vill berätta om.
Teckensnitts storlek: +

Att få svensk sortering på åäö i Joomla

Skrev just detta i det svenska forumet för Joomla! i tråden: "Alfabetisk sortering och svenska tecken (åäö)" (Före publicering här putsade jag texten lite).

Återupplivar denna gamla tråd från 2009 jag hittade när jag sökte på detta problem.

Jag har nämligen funnit en mycket bättre lösning än den som föreslås ovan. Det finns många fördelar med att låta Joomla! köra med Unicode, det är framtiden och Latin1 är stenålders vid det här laget.

Det enda du behöver göra är att för nya Joomla-installationer, ange Kollationering till utf8_swedish_ci, det är kollationeringen som gör att sorteringen blir som den skall enligt respektive språks standard.

Om databasen har rätt kollationer, så bör sedan alla tabeller som skapas i den få samma, och även alla fält i tabellerna.

Om du som jag redan har skapat en Joomla-site, så behöver du byta kollationering på databas och tabell (främst de som heter jos_sections, jos_categories, jos_content) till utf8_swedish_ci).

Men det räcker inte enligt mina experiment. Även vissa av fälten i dessa tabeller behöver få ny kollationering, utf8_swedish_ci.

Med PHPMyAdmin

Med verktyg som tex PHPMyadmin (som jag antar att du kan få tillgång till på ditt webbhotell eller installera där) så är det lätt att ändra kollationering på databas, tabell och fält.

Databas: Klicka på databasen namn, sedan fliken Operationer, längst ner står Kollationering. Ändra där.

Tabell: Klicka på databasens namn, fliken Struktur, på samma rad som tabellens namn (tex jos_content, jos_categories, eller jos_sections) finns det en ikon i kolumnen för åtgärder som betyder Struktur klicka på den, sedan fliken Operationer, där finns kollationering under Tabellalternativ. Ändra där.  

Fält: Klicka på databasens namn, fliken Struktur, på samma rad som tabellens namn (tex jos_content, jos_categories, eller jos_sections) finns det en ikon i kolumnen för Åtgärder som betyder Struktur klicka på den och du får en lista över alla kolumner i tabellen. På samma rad som tex title, så finns en ikon Ändra, klicka på den och där hittar du Kollationeringen för den kolumnen. Ändra där.

Har du inte PHPMyadmin utan använder något MySQL-administrationsverktyg istället?

Då kör du kommandon som liknar dessa, på databas, tabell och fältet titel (i tex jos_content, jos_sections, jos_categories) i något lämpligt administrationsverktyg för MySQL, tex MySQL Workbench.

ALTER DATABASE `TabellensNamn` DEFAULT CHARACTER SET utf8 
COLLATE utf8_swedish_ci
ALTER TABLE `jos_content` DEFAULT CHARACTER SET utf8 
COLLATE utf8_swedish_ci
ALTER TABLE `jos_content` CHANGE `title` `title` VARCHAR( 255 ) 
CHARACTER SET utf8
COLLATE utf8_swedish_ci NOT NULL DEFAULT ''

Det KAN även vara så att det enda man behöver ändra är kollationeringen för fälten (och då egentligen bara fältet title som är det fält som innehåller titeln man sorterar på, eller name). Kollationeringen för databas och tabell spelar eventuellt ingen roll. Men det har jag inte provat.

Uppgradera till Joomla! 1.6?
Tips: Skapa flera konton för dig själv
 

Kommentarer

Kommentarer saknas