0 Пользователей и 1 Гость просматривают эту тему.
  • 94 Ответов
  • 31936 Просмотров
*

palexa

  • Завсегдатай
  • 1109
  • 88 / 0
Ситуация такая, в шапке шаблона написано (картинка) название фирмы на русском языке, сайт двухязычный, если переключиться на другой язык, например английский, получиться что текст на английском, а в шапке ( картинка ) на русском

Можно ли менять шаблон в зависимости от языка ?
 
Или какой есть другой выход ?

P.S. вроде есть но я пока не вьехал
« Последнее редактирование: 05.12.2009, 09:53:19 от palexa »
*

palexa

  • Завсегдатай
  • 1109
  • 88 / 0
Re: Изменение шапки сайта от языка
« Ответ #1 : 05.12.2009, 10:00:25 »
Говорят если долго мучиться,ч то нибудь получиться, но что то не получаеться

Вот код, может на примере подскажет кто ?

Код
<div id="headerwrap" >
<div id="header">
<h1>
<a href="/index.html" title="<?php echo $tmpTools->sitename(); ?>"><?php echo $tmpTools->sitename(); ?></a>
</h1>
       
        <?php if ($this->CountModules('user5')) {?>
<div id="joomfish">
<jdoc:include type="modules" name="user5" style="raw" />
</div>
<?php } ?>

<?php if ($this->CountModules('user4')) {?>
<div id="search">
<jdoc:include type="modules" name="user4" style="raw" />
</div>
<?php } ?>

</div> 

CSS для картинки
Код
#headerwrap {
background: url(../images/header-bg.jpg) no-repeat #3589E3;
}
« Последнее редактирование: 05.12.2009, 10:04:18 от palexa »
*

palexa

  • Завсегдатай
  • 1109
  • 88 / 0
Re: Изменение шапки сайта от языка
« Ответ #2 : 05.12.2009, 17:48:05 »
а может это можно реализовать подменой CSS файла ?
как это сделать, для шаблона в J-1.5
*

Yurets

  • Захожу иногда
  • 405
  • 92 / 0
  • Губернатор острова Борнео
Re: Изменение шапки сайта от языка
« Ответ #3 : 05.12.2009, 17:58:13 »
А если стиль для #headerwrap в шаблонном CSS не прописывать, а, в зависимости от языка, указывать его прямо в шапке:
Код
<?php     if ($lang == 'ru') { // тут типа русский язык )))
?>
<style type="text/css">
#headerwrap { background: url(../images/header-bg-ru.jpg) no-repeat #3589E3; }
</style>
<?php
}
else {
?>
<style type="text/css">
#headerwrap { background: url(../images/header-bg-en.jpg) no-repeat #3589E3; }
</style>
<?php
}
?>
</head>
<body>
...


Ну. Вот в каком-то таком духе. :) Только нужно правильно "выудить" язык (с JoomFish не имел дела) и потом проверять... Остальной весь CSS останется старым.
В комнате с белым потолком
*

Шмайсер

  • Давно я тут
  • 745
  • 32 / 3
Re: Изменение шапки сайта от языка
« Ответ #4 : 05.12.2009, 18:08:02 »
а мне кажется идея таже, но менять не картинку, а файл со стилями, типа если язык русский - то подключается style_ru.css, если английский -то style_en.css, в которых соответсвенно бэкграунд картинок разный, вот и все
*

palexa

  • Завсегдатай
  • 1109
  • 88 / 0
Re: Изменение шапки сайта от языка
« Ответ #5 : 05.12.2009, 18:10:20 »
а мне кажется идея таже, но менять не картинку, а файл со стилями, типа если язык русский - то подключается style_ru.css, если английский -то style_en.css, в которых соответсвенно бэкграунд картинок разный, вот и все

Только вопрос как код подмены CSS написать для шаблона в J-1.5 ?
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Re: Изменение шапки сайта от языка
« Ответ #6 : 05.12.2009, 18:19:20 »
Ну-ка, напиши в шаблоне, где нибудь на видном месте, где светлый фон
Код: php
<?php
echo ($this->getlanguage());
?>
И по переключай языки. Отпишись будет ли меняться, то что выводится кодом. Сам проверить не могу,   JoomFish нету.
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

Шмайсер

  • Давно я тут
  • 745
  • 32 / 3
Re: Изменение шапки сайта от языка
« Ответ #7 : 05.12.2009, 18:27:23 »
Цитировать
Только вопрос как код подмены CSS написать для шаблона в J-1.5 ?
в каком то варезном шаблоне ( я их иногда просто ради интереса ставлю на локал и ковыряю) видел, файл switch.php там был, в нем скрипт переключения цсс файлов прописан. Но, блин, по затупу и незнанию ( на тот момент не думал что может пригодицца) я его удалил. Теперь не вспомню названия, и где качал тоже не помню. Хотя такая тема тоже нужна самому
*

palexa

  • Завсегдатай
  • 1109
  • 88 / 0
Re: Изменение шапки сайта от языка
« Ответ #8 : 05.12.2009, 18:44:44 »
Ну-ка, напиши в шаблоне, где нибудь на видном месте, где светлый фон
Код: php
<?php
echo ($this->getlanguage());
?>
И по переключай языки. Отпишись будет ли меняться, то что выводится кодом. Сам проверить не могу,   JoomFish нету.
В зависимости от языка выводиться (ru-ru) (uk-ua) (en-gb)
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Re: Изменение шапки сайта от языка
« Ответ #9 : 05.12.2009, 19:07:06 »
А, ну тогда как-то так
Код: php
<?php
switch ($this->getlanguage()){                                                                       
case 'ru-ru':?>
<h1>Русский</h1>
<?php
break;
case 'en-gb':?>
<h1>Английский</h1>
<?php
break;
case 'uk-ua':?>
<h1>Украинский</h1>
<?php
break;
default :?>
    <h1>Ежели что-то другое</h1>
<?php
break;
}
?>
Вместо <h1>Русский</h1> подключай что надо или стили или файлы стилей.
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

Шмайсер

  • Давно я тут
  • 745
  • 32 / 3
Re: Изменение шапки сайта от языка
« Ответ #10 : 05.12.2009, 19:15:33 »
        
   
Цитировать
<?php
switch ($this->getlanguage()){                                                                      
case 'ru-ru':?>
   <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/...../css/style1.css" type="text/css" />
   <?php
   break;
case 'en-gb':?>
   <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/....../css/style2.css" type="text/css" />
   <?php
   break;
case 'uk-ua':?>
   <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/....../css/style3.css" type="text/css" />
   <?php
так чтоли? и в шапке это прописывать или в <body> ?   
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Re: Изменение шапки сайта от языка
« Ответ #11 : 05.12.2009, 19:17:57 »
Нет будет ошибка синтаксиса. Не обрезай код если не умеешь. В header.
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

Шмайсер

  • Давно я тут
  • 745
  • 32 / 3
Re: Изменение шапки сайта от языка
« Ответ #12 : 05.12.2009, 19:26:11 »
Всмысле не обрезай? Если не трудно, приведите пример для моего случая, тоесть для 3-х разных файлов стилей. От начала кода и до конца, а то пока трудно самому во всем разбираться, нужно знать правильное решение чтобы понять как это работает))
Спасибо!
*

palexa

  • Завсегдатай
  • 1109
  • 88 / 0
Re: Изменение шапки сайта от языка
« Ответ #13 : 05.12.2009, 19:28:28 »
Lex
Спасибо, +1

подключил просто стиль и всё, супер  :D
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Re: Изменение шапки сайта от языка
« Ответ #14 : 05.12.2009, 19:38:58 »
Если не трудно, приведите пример для моего случая, тоесть для 3-х разных файлов стилей.
Для трех и сделано. В default скопируй то что подключаешь для русского. Секция default сделана для страховки, если по какой-то причине $this->getlanguage() вернет NULL, чтобы не было ошибки, т.е. стили не слетели.
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

palexa

  • Завсегдатай
  • 1109
  • 88 / 0
Re: Изменение шапки сайта от языка
« Ответ #15 : 05.12.2009, 20:10:08 »
Шмайсер

Вот так я подключил сейчас три разных файла стилей, всё работает

Код
<?php switch ($this->getlanguage()){
  case 'ru-ru':?>
  <link href="<?php echo $tmpTools->templateurl();?>/css/template_ru.css" rel="stylesheet" type="text/css" />
  <?php
  break;
  case 'en-gb':?>
  <link href="<?php echo $tmpTools->templateurl();?>/css/template_en.css" rel="stylesheet" type="text/css" />
  <?php
  break;
  case 'uk-ua':?>
  <link href="<?php echo $tmpTools->templateurl();?>/css/template_ua.css" rel="stylesheet" type="text/css" />
  <?php
  break;
  default :?>   
  <link href="<?php echo $tmpTools->templateurl();?>/css/template_ru.css" rel="stylesheet" type="text/css" />
  <?php
  break;
  }
  ?>
« Последнее редактирование: 05.12.2009, 20:13:43 от palexa »
*

Шмайсер

  • Давно я тут
  • 745
  • 32 / 3
Re: Изменение шапки сайта от языка
« Ответ #16 : 05.12.2009, 21:52:15 »
Ага, понял, всем огромное спасибо! А можно как то  переключать стили не в зависимости от языка, а от того авторизован пользователь или нет. Так можно сделать? Если да, напишите как , если не трудно)
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Re: Изменение шапки сайта от языка
« Ответ #17 : 05.12.2009, 21:56:40 »
Код: php
<?php
$user = JFactory::getUser();
If (!$user->id){?>
<h1>Гостям</h1>
<?php }else{?>
<h1>Пользователям</h1>
<?php }?>
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

seiras

  • Осваиваюсь на форуме
  • 17
  • 0 / 0
  • Site-Studio.info
Re: Изменение шапки сайта от языка
« Ответ #19 : 11.06.2010, 20:33:05 »
А, ну тогда как-то так
Код: php
<?php
switch ($this->getlanguage()){                                                                       
case 'ru-ru':?>
<h1>Русский</h1>
<?php
break;
case 'en-gb':?>
<h1>Английский</h1>
<?php
break;
case 'uk-ua':?>
<h1>Украинский</h1>
<?php
break;
default :?>
    <h1>Ежели что-то другое</h1>
<?php
break;
}
?>
Вместо <h1>Русский</h1> подключай что надо или стили или файлы стилей.

пишет ошибку!

Fatal error: Using $this when not in object context in X:\home\localhost\www\Soundbox\templates\wr_emporium\index.php on line 101
*

D$e$n

  • Захожу иногда
  • 137
  • 0 / 1
Re: Изменение шапки сайта от языка
« Ответ #20 : 15.06.2010, 15:57:50 »
Joomla 1.5.18 тоже надо при переходе на другой язык, менять картинку в шапке сайта, но так и не понял как это реализовать....
« Последнее редактирование: 15.06.2010, 16:03:11 от D$e$n »
*

palexa

  • Завсегдатай
  • 1109
  • 88 / 0
Re: Изменение шапки сайта от языка
« Ответ #21 : 16.06.2010, 11:50:30 »
Joomla 1.5.18 тоже надо при переходе на другой язык, менять картинку в шапке сайта, но так и не понял как это реализовать....

Я же Выше написал. Добавляете картинку для другого языка в папку images
Копируете файл template.css и называете напирмер template_en.css
В новом файле template_en.css меняете название заменяемого файла на тот который надо подставить
И потом в любом месте между  <head> и  </head> пишите

Код
<?php switch ($this->getlanguage()){                                                                       
case 'en-gb':?>
<link href="<?php echo $templateUrl; ?>/css/template_en.css" rel="stylesheet" type="text/css" />
<?php
break;
default :?>
    <link href="<?php echo $templateUrl; ?>/css/template.css" rel="stylesheet" type="text/css" />
<?php
break;
}
?>

*

D$e$n

  • Захожу иногда
  • 137
  • 0 / 1
Re: Изменение шапки сайта от языка
« Ответ #22 : 16.06.2010, 13:41:54 »
Цитировать
Я же Выше написал. Добавляете картинку для другого языка в папку images
Копируете файл template.css и называете напирмер template_en.css
В новом файле template_en.css меняете название заменяемого файла на тот который надо подставить

Может быть такое, что пусть к изображению, которая в шапке не задан в CSS? что-то не могу найти в css

Вот путь в <a href="/index.php"><img src="/templates/buyhttp-4/images/banner.gif"></a>, посмотрел через FireBug, но в  CSS не смог найти "images/banner.gif"

что означает это: <a href="/index.php">? в index.php задан путь в к файлу?

[вложение удалено Администратором]
« Последнее редактирование: 16.06.2010, 13:55:02 от D$e$n »
*

palexa

  • Завсегдатай
  • 1109
  • 88 / 0
Re: Изменение шапки сайта от языка
« Ответ #23 : 16.06.2010, 13:54:58 »
ну тогда смотрите в индексном файле как картинка определена, может прописана прямо в файле index.php
Тогда пишите по аналогии для замены именно картинки или просто добавляете стиль в код и описываете это в CSS
*

D$e$n

  • Захожу иногда
  • 137
  • 0 / 1
Re: Изменение шапки сайта от языка
« Ответ #24 : 16.06.2010, 14:01:52 »
ну тогда смотрите в индексном файле как картинка определена, может прописана прямо в файле index.php
Тогда пишите по аналогии для замены именно картинки или просто добавляете стиль в код и описываете это в CSS
Как для замены написать? если я там укажу еще картинки, то они все вместе появятся в шапке...
 
Код
<div id="logocontainer">
<div id="logo"><image src="templates/<?php echo $this->template ?>/images/logo.gif" /></a></div>
            <div id="topbanner"><a href="index.php"><image src="templates/<?php echo $this->template ?>/images/banner.gif" /></a></div>
            <div id="topbanner"><image src="templates/<?php echo $this->template ?>/images/xeir.gif" /></div>
</div>
</div>
Вот код с index.php, нужно чтобы при переходе на др язык поменялась картинка /images/banner.gif"
Честно говоря в коде не разбираюсь. Я не знаю как добавляют стиль в код и описывать в  CSS

Я очень далек от кода, поэтому даже не могу разобраться из выше написанного, как подключить стиль....

[вложение удалено Администратором]
« Последнее редактирование: 16.06.2010, 14:09:16 от D$e$n »
*

palexa

  • Завсегдатай
  • 1109
  • 88 / 0
Re: Изменение шапки сайта от языка
« Ответ #25 : 16.06.2010, 14:32:52 »
Думаю как то так

Код
<div id="logocontainer">
<div id="logo"><image src="templates/<?php echo $this->template ?>/images/logo.gif" /></a></div>
            <div id="topbanner">
            <?php switch ($this->getlanguage()){                                                                       
            case 'en-gb':?>
            <a href="index.php"><image src="templates/<?php echo $this->template ?>/images/banner_en.gif" /></a>
<?php
break;
default :?>
                <a href="index.php"><image src="templates/<?php echo $this->template ?>/images/banner.gif" /></a>
<?php
break;
}
?>
</div>
            <div id="topbanner"><image src="templates/<?php echo $this->template ?>/images/xeir.gif" /></div>
</div>
</div>
« Последнее редактирование: 16.06.2010, 14:36:29 от palexa »
*

D$e$n

  • Захожу иногда
  • 137
  • 0 / 1
Re: Изменение шапки сайта от языка
« Ответ #26 : 16.06.2010, 15:39:38 »
Думаю как то так

Код
<div id="logocontainer">
<div id="logo"><image src="templates/<?php echo $this->template ?>/images/logo.gif" /></a></div>
            <div id="topbanner">
            <?php switch ($this->getlanguage()){                                                                      
            case 'en-gb':?>
           <a href="index.php"><image src="templates/<?php echo $this->template ?>/images/banner_en.gif" /></a>
<?php
break;
default :?>
                <a href="index.php"><image src="templates/<?php echo $this->template ?>/images/banner.gif" /></a>
<?php
break;
}
?>
</div>
            <div id="topbanner"><image src="templates/<?php echo $this->template ?>/images/xeir.gif" /></div>
</div>
</div>

К сожалению это не работает, при переходе на анг яз картинка не меняется, хотя в папке images лежит banner_en.gif (если просто ссылаться на banner_en.gif, то она появляется)
никаких ошибок не выдает, просто все работает как обычно, не меняется картинка...
Может причина в этом местечке кода
Код
<?php switch ($this->getlanguage()){                                                                       
            case 'en-gb':?>
? Это пришло в голову, т.к. вроде в новой Joomla пути к языковому файлу по другому....
« Последнее редактирование: 16.06.2010, 15:52:47 от D$e$n »
*

palexa

  • Завсегдатай
  • 1109
  • 88 / 0
Re: Изменение шапки сайта от языка
« Ответ #27 : 16.06.2010, 15:56:08 »
Перед тем как писать, я испробывал код на рабочем сайте, всё работало. Может у Вас включен плагин КЕШ ?

Я там код правил немного, после публикации поста, посмотрите может скопировали старый

Просто это
Код
<a href="index.php"><image src="templates/<?php echo $this->template ?>/images/banner.gif" /></a>

замените на это
Код
<?php switch ($this->getlanguage()){                                                                       
case 'en-gb':?>
<a href="index.php"><image src="templates/<?php echo $this->template ?>/images/banner_en.gif" /></a>
<?php
break;
default :?>
<a href="index.php"><image src="templates/<?php echo $this->template ?>/images/banner.gif" /></a>
<?php
break;
}
?>



*

D$e$n

  • Захожу иногда
  • 137
  • 0 / 1
Re: Изменение шапки сайта от языка
« Ответ #28 : 16.06.2010, 17:12:48 »
Все сработало, спасибо! Кеш был включен...
Еще хочу добавить испанский. Можно в код просто одну еще строку добавить?
Код
<a href="index.php"><image src="templates/<?php echo $this->template ?>/images/banner_es.gif" /></a>

Может глупость написал, возможно еще параметры какие-то нужно, подскажите?
« Последнее редактирование: 16.06.2010, 17:20:32 от D$e$n »
*

palexa

  • Завсегдатай
  • 1109
  • 88 / 0
Re: Изменение шапки сайта от языка
« Ответ #29 : 16.06.2010, 18:05:32 »
case 'en-gb':?> - это для английского, как для испанского не знаю, в Джумфише наверно пишет, посмотрите

Код
<?php switch ($this->getlanguage()){                                                                       
case 'en-gb':?>
<a href="index.php"><image src="templates/<?php echo $this->template ?>/images/banner_en.gif" /></a>
<?php
break;

case 'испанский':?>
<a href="index.php"><image src="templates/<?php echo $this->template ?>/images/banner_es.gif" /></a>
<?php
break;

default :?>
<a href="index.php"><image src="templates/<?php echo $this->template ?>/images/banner.gif" /></a>
<?php
break;
}
?>
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

JoomFish - удаление пути основного RU-сайта - УБРАТЬ /RU

Автор Властитель Неизвестности

Ответов: 42
Просмотров: 20488
Последний ответ 17.06.2015, 16:33:12
от vitaliywolf
Отсутствует меню для смены языка JoomFish на Joomla25

Автор SmYk

Ответов: 0
Просмотров: 2034
Последний ответ 26.08.2014, 13:23:52
от SmYk
Удалил JoomFish и сайт пропал. Вместо сайта 404

Автор vorfey

Ответов: 0
Просмотров: 2235
Последний ответ 24.07.2014, 18:34:19
от vorfey
Перенос сайта на другой хостинг JoomFish не заработал

Автор dezhavi

Ответов: 0
Просмотров: 1209
Последний ответ 31.05.2013, 16:26:24
от dezhavi
Проблема при смене языка по умолчанию

Автор vasaeps3

Ответов: 0
Просмотров: 2357
Последний ответ 03.05.2013, 15:15:59
от vasaeps3