Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Тематические форумы > TypoScript практикум

Ответ
 
Опции темы Опции просмотра
Старый 02.03.2008, 15:43   #1
thebat
Senior Member
 
Аватар для thebat
 
Регистрация: 05.09.2006
Адрес: TYPO3.if.ua
Сообщений: 224
Отправить сообщение для thebat с помощью ICQ Отправить сообщение для thebat с помощью AIM Отправить сообщение для thebat с помощью MSN Отправить сообщение для thebat с помощью Yahoo Отправить сообщение для thebat с помощью Skype™
По умолчанию Дни недели

Очень хорошо, спасибо. С месяцами все ясно, а как насчет дней недели? Написал
Код:
30 = CASE
30 {
key.data = date:U
key.strftime = %A
01 = TEXT
01.value = понедельник
02 = TEXT
02.value = вторник
03 = TEXT
03.value = среду
04 = TEXT
04.value = четверг
05 = TEXT
05.value = пятницу
06 = TEXT
06.value = субботу
07 = TEXT
07.value = воскресенье
stdWrap.wrap =  | 
}
..., не работает, почему?
__________________
Василий Мосийчук
The BAT!
TYPO3.NET.UA
BLOG.TYPO3.NET.UA
thebat вне форума   Ответить с цитированием
Старый 02.03.2008, 15:57   #2
azukari
Новенький
 
Регистрация: 23.01.2007
Сообщений: 25
По умолчанию

Потому что надо %A (полное название дня недели в текущей локали) заменить на %u (номер дня недели: 1-7). 01-07 соответственно заменить на 1-7.

http://ru2.php.net/strftime
azukari вне форума   Ответить с цитированием
Старый 02.03.2008, 16:15   #3
thebat
Senior Member
 
Аватар для thebat
 
Регистрация: 05.09.2006
Адрес: TYPO3.if.ua
Сообщений: 224
Отправить сообщение для thebat с помощью ICQ Отправить сообщение для thebat с помощью AIM Отправить сообщение для thebat с помощью MSN Отправить сообщение для thebat с помощью Yahoo Отправить сообщение для thebat с помощью Skype™
Thumbs up Спасибо!

Результат
Код:
30 = CASE
30 {
key.data = date:U
key.strftime = %u
1 = TEXT
1.value = понедельник
2 = TEXT
2.value = вторник
3 = TEXT
3.value = среду
4 = TEXT
4.value = четверг
5 = TEXT
5.value = пятницу
6 = TEXT
6.value = субботу
7 = TEXT
7.value = воскресенье
stdWrap.wrap =  | 
}
Работает.
__________________
Василий Мосийчук
The BAT!
TYPO3.NET.UA
BLOG.TYPO3.NET.UA
thebat вне форума   Ответить с цитированием
Старый 13.03.2008, 13:07   #4
margol
Senior Member
 
Аватар для margol
 
Регистрация: 09.07.2007
Адрес: Волгоград
Сообщений: 322
Отправить сообщение для margol с помощью ICQ
По умолчанию

Воспользовалась кодом с этой темы. Замечательно работает для list. А можно ли сделать, чтобы то же самое работало и для latest и для single? Вставка того же куска, только с заменой
plugin.tt_news.displayList.date_stdWrap{
на
plugin.tt_news.displayLatest.date_stdWrap{
не помогла, да и не рационально это.
Может кто подкинет кусочек кода, чтобы все разом, а?
margol вне форума   Ответить с цитированием
Старый 13.03.2008, 19:10   #5
thebat
Senior Member
 
Аватар для thebat
 
Регистрация: 05.09.2006
Адрес: TYPO3.if.ua
Сообщений: 224
Отправить сообщение для thebat с помощью ICQ Отправить сообщение для thebat с помощью AIM Отправить сообщение для thebat с помощью MSN Отправить сообщение для thebat с помощью Yahoo Отправить сообщение для thebat с помощью Skype™
Thumbs up Все прекрасно работает

Вы должно быть, что-то не правильно прописали, будьте внимательны. Я, к примеру, написал вот так,
Код:
plugin.tt_news {
displayLatest {
date_stdWrap {
strftime >
cObject = COA
cObject.10 = TEXT
cObject.10 {
field = datetime
strftime = %d
}
cObject.20 = CASE
cObject.20 {
key.field = datetime
key.strftime = %m
01 = TEXT
01.value = сiчня
02 = TEXT
02.value = лютого
03 = TEXT
03.value = марта
04 = TEXT
04.value = квітня
05 = TEXT
05.value = травня
06 = TEXT
06.value = червня
07 = TEXT
07.value = липня
08 = TEXT
08.value = серпня
09 = TEXT
09.value = вересня
10 = TEXT
10.value = жовтня
11 = TEXT
11.value = листопада
12 = TEXT
12.value = грудня
stdWrap.wrap =  | 
}
cObject.30 = TEXT
cObject.30 {
field = datetime
strftime = %Y
wrap = | року.
}
}
}
}
…(наименование месяцев на украинском языке.), и это у меня лично работает.
__________________
Василий Мосийчук
The BAT!
TYPO3.NET.UA
BLOG.TYPO3.NET.UA
thebat вне форума   Ответить с цитированием
Старый 14.03.2008, 12:44   #6
margol
Senior Member
 
Аватар для margol
 
Регистрация: 09.07.2007
Адрес: Волгоград
Сообщений: 322
Отправить сообщение для margol с помощью ICQ
По умолчанию

Спасибо за ответ, но ваш код у меня не работает. Странно...
И этот не работает:
plugin.tt_news.displayLatest.date_stdWrap{
strftime >
cObject = COA
cObject.40 = TEXT
cObject.40{
field = datetime
strftime = %d
}
cObject.50 = CASE
cObject.50{
key.field = datetime
key.strftime = %m
01 = TEXT
01.value = января
02 = TEXT
02.value = февраля
03 = TEXT
03.value = марта
04 = TEXT
04.value = апреля
05 = TEXT
05.value = мая
06 = TEXT
06.value = июня
07 = TEXT
07.value = июля
08 = TEXT
08.value = августа
09 = TEXT
09.value = сентября
10 = TEXT
10.value = октября
11 = TEXT
11.value = ноября
12 = TEXT
12.value = декабря
stdWrap.wrap =  | 
}
cObject.60 = TEXT
cObject.60{
field = datetime
strftime = %Y
wrap = | г.
}
}
margol вне форума   Ответить с цитированием
Старый 29.03.2008, 02:58   #7
azukari
Новенький
 
Регистрация: 23.01.2007
Сообщений: 25
По умолчанию

Для LIST, LATEST, SINGLE

Код:
# Фиксим локаль для новостей
[globalVar = GP:L = 1]
[else]
plugin.tt_news {
  displayLatest {
    date_stdWrap >
    date_stdWrap {
      strftime >
      cObject = COA
      cObject.10 = TEXT
      cObject.10{
        field = datetime
        strftime = %e
      }
      cObject.20 = CASE
      cObject.20{
        key.field = datetime
        key.strftime = %m
        01 = TEXT
        01.value = января
        02 = TEXT
        02.value = февраля
        03 = TEXT
        03.value = марта
        04 = TEXT
        04.value = апреля
        05 = TEXT
        05.value = мая
        06 = TEXT
        06.value = июня
        07 = TEXT
        07.value = июля
        08 = TEXT
        08.value = августа
        09 = TEXT
        09.value = сентября
        10 = TEXT
        10.value = октября
        11 = TEXT
        11.value = ноября
        12 = TEXT
        12.value = декабря
        stdWrap.wrap =  | 
      }
      cObject.30 = TEXT
      cObject.30{
        field = datetime
        strftime = %Y
        wrap = | г.
      }
    }
  }
  displaySingle.date_stdWrap >
  displaySingle.date_stdWrap < .displayLatest.date_stdWrap
  displayList.date_stdWrap >
  displayList.date_stdWrap < .displayLatest.date_stdWrap  
}
[global]
azukari вне форума   Ответить с цитированием
Старый 01.04.2008, 17:10   #8
_Michael
Новенький
 
Регистрация: 19.03.2008
Сообщений: 11
По умолчанию

А как сделать чтоб в AMENU тоже название месяца выводилось не December а к примеру Грудень (на укр.)?
_Michael вне форума   Ответить с цитированием
Старый 08.04.2008, 16:19   #9
margol
Senior Member
 
Аватар для margol
 
Регистрация: 09.07.2007
Адрес: Волгоград
Сообщений: 322
Отправить сообщение для margol с помощью ICQ
По умолчанию

Спасибо за код, то что надо!
Но действительно интересно как и в AMENU сделать их русскими. Конструкция типа:
displayArchive.date_stdWrap >
displayArchive.date_stdWrap < .displayLatest.date_stdWrap
или
displayAmenu.date_stdWrap >
displayAmenu.date_stdWrap < .displayLatest.date_stdWrap
не помогает.

И вопрос по календарю newscalendar
Этот код :
PHP код:
config.cache_clearAtMidnight 1

lib
.calendar COA

lib
.calendar.10=TEXT
lib
.calendar.10{
datadate:U
strftime
= %d
wrap 
= <center><b><font size="-1" align="right"Сегодня&nbsp;|&nbsp;
}

lib.calendar.20 = CASE
lib.calendar.20 {
key.data date:U
key
.strftime= %m
01 
TEXT
01.value 
января
02 
TEXT
02.value 
февраля
03 
TEXT
03.value 
марта
04 
TEXT
04.value 
апреля
05 
TEXT
05.value 
мая
06 
TEXT
06.value 
июня
07 
TEXT
07.value 
июля
08 
TEXT
08.value 
августа
09 
TEXT
09.value 
сентября
10 
TEXT
10.value 
октября
11 
TEXT
11.value 
ноября
12 
TEXT
12.value 
декабря
stdWrap
.wrap = &nbsp;|&nbsp;
}

lib.calendar.30=TEXT
lib
.calendar.30{
    
datadate:U
    strftime
= %Y
    wrap 
= |&nbsp;г.
}

lib.calendar.40 = CASE
lib.calendar.40 {
    
data date:U
    strftime 
= %u
    1 
TEXT
    1.value 
понедельник
    2 
TEXT
    2.value 
вторник
    3 
TEXT
    3.value 
среда
    4 
TEXT
    4.value 
четверг
    5 
TEXT
    5.value 
пятница
    6 
TEXT
    6.value 
суббота
    7 
TEXT
    7.value 
воскресенье
    stdWrap
.wrap = &nbsp;|&nbsp;</font></b></center>
}

lib.calendar.50 plugin.tx_newscalendar_pi1
lib
.calendar.50 {
   
show.allRecords 1
   calendar
.startWeekDay 1
   render
{
     
displayType=1
    
# monthLinkDisplay = 1
     
dayNameLength 1
     singleView 
7
     backPage 
21
     contextMenuLink 
LEFT
     listPage 
22
     startingPoint 
14,11
 
}

работает как показано на картинке. Как сделать, чтобы и April, то есть названия месяцев были русскими в самом календаре?
Изображения
Тип файла: jpg 2.JPG (11.5 Кб, 38 просмотров)

Последний раз редактировалось margol; 08.04.2008 в 16:40
margol вне форума   Ответить с цитированием
Старый 17.09.2010, 16:08   #10
semender
Senior Member
 
Аватар для semender
 
Регистрация: 06.08.2010
Адрес: Makhachkala
Сообщений: 142
Отправить сообщение для semender с помощью ICQ Отправить сообщение для semender с помощью Skype™
Question

Здравствуйте,использовал вот этот скрипт
Код:
# Фиксим локаль для новостей
[globalVar = GP:L = 1]
[else]
plugin.tt_news {
  displayLatest {
    date_stdWrap >
    date_stdWrap {
      strftime >
      cObject = COA
      cObject.10 = TEXT
      cObject.10{
        field = datetime
        strftime = %e
      }
      cObject.20 = CASE
      cObject.20{
        key.field = datetime
        key.strftime = %m
        01 = TEXT
        01.value = января
        02 = TEXT
        02.value = февраля
        03 = TEXT
        03.value = марта
        04 = TEXT
        04.value = апреля
        05 = TEXT
        05.value = мая
        06 = TEXT
        06.value = июня
        07 = TEXT
        07.value = июля
        08 = TEXT
        08.value = августа
        09 = TEXT
        09.value = сентября
        10 = TEXT
        10.value = октября
        11 = TEXT
        11.value = ноября
        12 = TEXT
        12.value = декабря
        stdWrap.wrap = &nbsp;|&nbsp;
      }
      cObject.30 = TEXT
      cObject.30{
        field = datetime
        strftime = %Y
        wrap = |&nbsp;г.
      }
    }
  }
  displaySingle.date_stdWrap >
  displaySingle.date_stdWrap < .displayLatest.date_stdWrap
  displayList.date_stdWrap >
  displayList.date_stdWrap < .displayLatest.date_stdWrap  
}
[global]
Но почему-то у меня не выводится так число, только когда в 12 строке меняю строку strftime = %e на strftime = %d ,(вывод в формате двух чисел) оно выводится. Не показывается также и в tt_board число, в чём проблема???Не пойму ни как,мож кто сталкивался...
__________________
Я чертовски люблю слушать ложь, смотря в глаза... особенно когда знаю правду... И никогда не вру людям,которых называю друзьями...
semender вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 06:43.


Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot

Хостинг и техническая поддержка: TYPO3 Лаборатория