Witam! Mam prosty problem z datą. A mianowicie w artykułach w wersji angielskiej wyświetla się data w formie takiej że na górze jest liczba a na dole trzy pierwsze litery miesiąca. Po zainstalowaniu polskiego języka zamiast trzech pierwszych liter polskiej nazwy miesiąca wyświetla się cała nazwa poprzedzona przedrostkiem 'sp_' np. w listopadzie zamiast 'LIS' jest 'SP_LISTOPAD'. Proszę o rade
Dziudek
30-11-2012, 18:59
Witam,
A jak wygląda kod wyświetlający datę w szablonie?
I dodatkowo - czy w plikach językowych występują ciagi SP_LISTOPAD?
TMS
01-12-2012, 10:20
A więc tak:
w pliku /templates/shaper_zaara/css/joomla.css jest wpis:
/* Article Info */
.sp-date{margin-right:10px;width:36px;height:36px;float:left;text-align:center;color:#fff}
.sp-date .sp-day{margin-top:2px;font-size:18px;font-weight:400;line-height:18px;letter-spacing:1px}
.sp-date .sp-month{padding-bottom:1px;font-size:9px;line-height:14px;letter-spacing:1px;text-transform:uppercase;margin:0 3px}
Natomiast w pliku językowym /language/pl-PL/pl-PL.ini jest taki fragment:
DATE_FORMAT_LC="l, d, F Y"
DATE_FORMAT_LC1="l, d, F Y"
DATE_FORMAT_LC2="l, d, F Y H:i"
DATE_FORMAT_LC3="d F Y"
DATE_FORMAT_LC4="d-m-y"
DATE_FORMAT_JS1="d-m-y"
; Months
JANUARY_SHORT="Sty"
JANUARY="styczeĹ"
FEBRUARY_SHORT="Lut"
FEBRUARY="luty"
MARCH_SHORT="Mar"
MARCH="marzec"
APRIL_SHORT="Kwi"
APRIL="kwiecieĹ"
MAY_SHORT="Maj"
MAY="maj"
JUNE_SHORT="Cze"
JUNE="czerwiec"
JULY_SHORT="Lip"
JULY="lipiec"
AUGUST_SHORT="Sie"
AUGUST="sierpieĹ"
SEPTEMBER_SHORT="Wrz"
SEPTEMBER="wrzesieĹ"
OCTOBER_SHORT="PaĹş"
OCTOBER="paĹşdziernik"
NOVEMBER_SHORT="Lis"
NOVEMBER="listopad"
DECEMBER_SHORT="Gru"
DECEMBER="grudzieĹ"
Dziudek
02-12-2012, 19:52
Bardziej chodziło mi o kod widoku, który wyświetla tą datę, gdyż to prawdopodobnie tam będzie leżeć problem.
TMS
02-12-2012, 21:59
mógłbyś podpowiedzieć nazwę pliku i prawdopodobną ścieżkę? Bo nie umiem znaleźć ; /
Dziudek
02-12-2012, 22:01
prawdopodobnie będzie to html/com_content/article/default.php
TMS
02-12-2012, 22:33
Wygląda on tak (wrzucę cały, żeby nie trzeba dwa razy wrzucać, bo jakiś fragment przegapiłem..)
<?php
/**
* @version $Id: default.php 20817 2011-02-21 21:48:16Z dextercowley $
* @package Joomla.Site
* @subpackage com_content
* @copyright Copyright (C) 2005 - 2011 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
// no direct access
defined (http://www.php.net/defined)('_JEXEC') or die (http://www.php.net/die);
<?php if (isset (http://www.php.net/isset)($urls) AND ((!empty (http://www.php.net/empty)($urls->urls_position) AND ($urls->urls_position=='0')) OR ($params->get('urls_position')=='0' AND empty (http://www.php.net/empty)($urls->urls_position) ))
OR (empty (http://www.php.net/empty)($urls->urls_position) AND (!$params->get('urls_position')))): ?>
<?php echo (http://www.php.net/echo) $this->loadTemplate('links'); ?>
<?php endif; ?>
<?php if ($params->get('access-view')):?>
<?php if (isset (http://www.php.net/isset)($images->image_fulltext) and !empty (http://www.php.net/empty)($images->image_fulltext)) : ?>
<?php $imgfloat = (empty (http://www.php.net/empty)($images->float_fulltext)) ? $params->get('float_fulltext') : $images->float_fulltext; ?>
<div class="img-fulltext-<?php echo (http://www.php.net/echo) htmlspecialchars (http://www.php.net/htmlspecialchars)($imgfloat); ?>">
<img
<?php if ($images->image_fulltext_caption):
echo (http://www.php.net/echo) 'class="caption"'.' title="' .htmlspecialchars (http://www.php.net/htmlspecialchars)($images->image_fulltext_caption) .'"';
endif; ?>
src="<?php echo (http://www.php.net/echo) htmlspecialchars (http://www.php.net/htmlspecialchars)($images->image_fulltext); ?>" alt="<?php echo (http://www.php.net/echo) htmlspecialchars (http://www.php.net/htmlspecialchars)($images->image_fulltext_alt); ?>"/>
</div>
<?php endif; ?>
<?php
if (!empty (http://www.php.net/empty)($this->item->pagination) AND $this->item->pagination AND !$this->item->paginationposition AND !$this->item->paginationrelative):
echo (http://www.php.net/echo) $this->item->pagination;
endif;
?>
<?php echo (http://www.php.net/echo) $this->item->text; ?>
<?php
if (!empty (http://www.php.net/empty)($this->item->pagination) AND $this->item->pagination AND $this->item->paginationposition AND!$this->item->paginationrelative):
echo (http://www.php.net/echo) $this->item->pagination;?>
<?php endif; ?>
<?php if (isset (http://www.php.net/isset)($urls) AND ((!empty (http://www.php.net/empty)($urls->urls_position) AND ($urls->urls_position=='1')) OR ( $params->get('urls_position')=='1') )): ?>
<?php echo (http://www.php.net/echo) $this->loadTemplate('links'); ?>
<?php endif; ?>
<?php //optional teaser intro text for guests ?>
<?php elseif ($params->get('show_noauth') == true and $user->get('guest') ) : ?>
<?php echo (http://www.php.net/echo) $this->item->introtext; ?>
<?php //Optional link to let them register to see the whole article. ?>
<?php if ($params->get('show_readmore') && $this->item->fulltext != null) :
$link1 = JRoute::_ (http://www.php.net/_)('index.php?option=com_users&view=login');
$link = new JURI($link1);?>
<p class="readmore">
<a href="<?php echo (http://www.php.net/echo) $link; ?>">
<?php $attribs = json_decode($this->item->attribs); ?>
<?php
if ($attribs->alternative_readmore == null) :
echo (http://www.php.net/echo) JText::_ (http://www.php.net/_)('COM_CONTENT_REGISTER_TO_READ_MORE');
elseif ($readmore = $this->item->alternative_readmore) :
echo (http://www.php.net/echo) $readmore;
if ($params->get('show_readmore_title', 0) != 0) :
echo (http://www.php.net/echo) JHtml::_ (http://www.php.net/_)('string.truncate', ($this->item->title), $params->get('readmore_limit'));
endif;
elseif ($params->get('show_readmore_title', 0) == 0) :
echo (http://www.php.net/echo) JText::sprintf (http://www.php.net/sprintf)('COM_CONTENT_READ_MORE_TITLE');
else :
echo (http://www.php.net/echo) JText::_ (http://www.php.net/_)('COM_CONTENT_READ_MORE');
echo (http://www.php.net/echo) JHtml::_ (http://www.php.net/_)('string.truncate', ($this->item->title), $params->get('readmore_limit'));
endif; ?></a>
</p>
<?php endif; ?>
<?php endif; ?>
<?php
if (!empty (http://www.php.net/empty)($this->item->pagination) AND $this->item->pagination AND $this->item->paginationposition AND $this->item->paginationrelative):
echo (http://www.php.net/echo) $this->item->pagination;?>
<?php endif; ?>
Przyznam, że jest to bardzo dziwne, bo kod od daty jest jak najbardziej poprawny, do tego plik językowy wygląda OK, nie ma też błędów w formacie daty, w zasadzie to nie widać możliwości, która by powodowała ten problem :/
TMS
03-12-2012, 16:16
kurde, szkoda, bo paskudnie to wygląda.. sprawdziłem czy jak dam angielską wersję językową to czy też będzie taki błąd i wyświetla się poprawnie np. 03 DEC
Błąd musi tkwić w takim razie gdzieś w pliku językowym...
Karol99
03-12-2012, 16:17
Podany przez TMS kod pochodzi najprawdopodobniej z oryginalnego pliku J!.
Ściągnąłem ten szablon, ma nadpisywanie i w pliku html\com_content\category\blog_item.php jest"
Natomiast na końcu pliku językowego en-GB.tpl_shaper_zaara.ini w głównym katalogu szablonu mamy:
[...]
SP_JANUARY="Jan"
SP_FEBRUARY="Feb"
SP_MARCH="Mar"
itd.
@TMS: Najprościej dla Ciebie chyba będzie dopisać na końcu pliku pl-PL.ini (tego o którym już pisałeś) dopisać na końcu fragment na zasadzie SP_JANUARY="Sty" (możesz też próbowac stworzyć oddzielny plik językowy pl-PL.tpl_shaper_zaara.ini, zawierający co najmniej tłumaczenia nazw miesięcy)
Edit: Przepraszam, zamiast dopisywać do pl_PL.ini należy to zrobić w pliku language\overrides\pl-PL.override.ini
TMS
03-12-2012, 17:07
A więc tak:
Karol99 ma najprawdopodobniej rację gdyż w katalogu '/language/en-GB' znajduje się plik 'en-GB.tpl_shaper_zaara.ini' i wewnątrz niego znajdują się wpisy SP_JANUARY="Jan". Natomiast w katalogu pl-PL nie ma takiego pliku i najprościej byłoby go tam utworzyć i wpisać odpowiedni fragment. Jednakże kiedy chcę to zrobić wyskakuje błąd: Warning: ftp_put() [function.ftp-put]: Can't open that file: No such file or directory in /var/panel/gui/tools/filemanager/includes/filesystem.inc.php on line 715
plik: /language/pl-PL/pl-PL.tpl_shaper_zaara.ini
Jednymi słowy nie mogę utworzyc w tym folderze żadnego pliku, zmienić nazwy już istniejącego ani przysłać nowego. Dla porównania w takim samym folderze tylko angielskim mogę wprowadzać powyższe modyfikacje...
Natomiast jeśli chodzi o dodanie tej frazy do pliku language\overrides\pl-PL.override.ini to musze powiedzieć że ten plik tez nie istniał, utworzyłem go ale nic to nie zmieniło..
- - - Updated - - -
działa panowie! ; P udało się zrobić to w pliku language\overrides\pl-PL.override.ini
Po prostu zamiast SP_JANUARY="Sty" tak jak radził Karol99 napisałem SP_Styczen="Sty" i działa ; )