PDA

Zobacz pełną wersję : Brak polskich znakow w szablonie



l4uke
28-06-2008, 10:31
W stopce i jednym pluginie ( profilebook) nie mam znaków z ogonkami . Podobno mam przekodować pliki szablonu , które pliki przekodować na co ? Gdy przekodowałem index.php z utf8 na iso to były polskie znaki w stopce, ale zrobiły sie krzaczki w modułach i artykułach .

Na serwerze ustawienia są takie :
Baza danych Rosnąco : Metoda porównywania napisów :
information_schema utf8_general_ci
l4uke_l4uke utf8_unicode_ci
Sumarycznie: 2 latin2_general_ci

Index.php szablonu :



<?php
defined( '_VALID_MOS' ) or die( 'Restricted access' );
// needed to seperate the ISO number from the language file constant _ISO
$iso = explode( '=', _ISO );
// xml prolog
echo '<?xml version="1.0" encoding="'. $iso[1] .'"?' .'>';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<?php mosShowHead(); ?>
<?php
if ( $my->id ) {
initEditor();
}
?>
<meta http-equiv="Content-Type" content="text/html; <?php echo _ISO; ?>" />
<link href="<?php echo $mosConfig_live_site;?>/templates/<?php echo $mainframe->getTemplate(); ?>/css/template_css.css" rel="stylesheet" type="text/css"/>
<link href="<?php echo $mosConfig_live_site;?>/templates/<?php echo $mainframe->getTemplate(); ?>/topnav/css/menu.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript"><!--//--><![CDATA[//><!--

sfHover = function() {
var sfEls = document.getElementById("menulist_root-rounded").getElementsByTagName("LI");
for (var i=0; i<sfEls.length; i++) {
sfEls[i].onmouseover=function() {
this.className+=" sfhover";
}
sfEls[i].onmouseout=function() {
this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
}
}
}
if (window.attachEvent) window.attachEvent("onload", sfHover);

//--><!]]></script>
<?php if(!mosCountmodules("left")||!mosCountmodules("right")){?>
<style type="text/css">
#middle{ width:712px;}
</style>
<?php }?>
<?php if(!mosCountmodules("left")&&!mosCountmodules("right")){?>
<style type="text/css">
#middle{ width:99%;}
</style>
<?php }?>
<?php if(mosCountmodules("user1") + mosCountmodules("user2") + mosCountmodules("top")==2){?>
<style type="text/css">
#user1, #user2, #top{ width:48%;}
</style>
<?php }?>
<?php if(mosCountmodules("user1") + mosCountmodules("user2") + mosCountmodules("top")==1){?>
<style type="text/css">
#user1, #user2, #top{ float:none; width:99%;}
</style>
<?php }?>
<?php if(!mosCountmodules("user3")){?>
<style type="text/css">
#footermodule{ width:99%;}
</style>
<?php }?>
<!--[if lte IE 6]>
<style type="text/css">
#logo img{
behavior: url("templates/<?php echo $mainframe->getTemplate(); ?>/js/iepngfix.htc");

moje
29-06-2008, 13:35
Zmień sumaryczne kodowanie na utf8_unicode_ci.

zwiastun
29-06-2008, 15:43
Jesteś pewien? l4uke nie ma problemu z kodowaniem danych w bazie danych i ich odczytem, ale z banalnym zapisaniem jakiegoś pliku (prawdopodobnie index.php lub footer.php) w odpowiednim kodowaniu, np. ISO 8859-2. Z wcześniejszych rekcji (niezbyt grzecznych, niestety, na dodatek w innym wątku - zobacz http://www.forum.joomla.pl/showthread.php?t=19483) wynika, że nie chce albo nie umie tego zrozumieć. Sugerowanie, by dokonywał złożonych operacji (co pewno warto zrobić, być może np. ze względu na ten - nawiasem mówiąc - nie wiadomo jaki plugin) jest podawaniem antybiotyku, gdy wystarczy polopiryna. Rzecz w tym że ją trzeba połknąć!

l4uke
01-07-2008, 01:22
Doszedłem do tego wcześniej, ale dziękuje za odpowiedz. Zmieniłem kodowanie index.php na utf8_unicode_ci i wszystko jest w porządku czyli są znaki z ogonkami w stopce .

Ps. Ale mam inny problem . Znajoma przełożyła z Angielskiego na Polski plik językowy pewnego pluginu do CB i brak polskich znaków. I mam pytanie czy w plikach językowych zmienia sie kodowanie znaków ? Sprawdzałem na dwóch różnych serwerach i na każdym nie było polskich znaków .

Pozdrawiam
l4uke

moje
01-07-2008, 12:14
Jak zapisujesz w notatniku, to trzeba skorzystać z opcji "Zapisz jako"
tam oprócz nazwy należy wybrać z listu kodowanie pliku, skoro stronę masz w utf-8 to takie kodowanie też powinno sie wybrać :)

zwiastun
01-07-2008, 16:42
W windowsowym Notatniku nie należy zapisywać plików językowych. Do kodowania trzeba użyć edytora, który zapisuje w różnym kodowaniu albo gżegżoółki..

l4uke - pytania o "taki jeden plugin" naprawdę możesz od razu wrzucać do kosza. Co to tak trudno podać nazwę, tajemnica jakaś czy co?

To chyba oczywiste, że trzeba zapisać plik w odpowiednim kodowaniu!
Jeśli sobie z takimi pracami nie umiesz poradzić (a naprawdę nie musisz umieć), a masz zrobione tłumaczenie - wrzuć je tutaj - napisz, jak Ci jest potrzebne i na pewno się znajdzie ktoś, kto przygotuje poprawny pakiet instalacyjny

l4uke
01-07-2008, 23:04
Polski plik językowy zapisany jest jako english.php (Nowy folder ).

Cbprofilebook to plugin do ktorego jest tłumaczenie (Nowy folder) . I z tym pluginem własnie mam kłopot bo kodowanie jest złe ( brak ogonków w polskich znakach) . Każdy plik w tym pluginie jest w ISO-8859-2 potrzebuje zmienić to na utf-8 .

Probowałem zmienić w pajaczku ale mimo zmian cały czas jest ISO-8859-2.