Всего 125 657 комментариев

Aleksanders
11 февраля 2021, 20:24
0
Сделал на другом сайте и тоже самое 1970 год!
Aleksanders
11 февраля 2021, 19:59
0
А как можно проверить, есть ли кириллица где-то?
Вы копировали мой код или сами набирали?
Проверил сервисом, кириллицы нету.
Alexey
11 февраля 2021, 19:47
0
Проверил на тестовом сайте

[[!dateLocale? &val=`[[+publishedon]]`]]

Всё корректно выводит. Нигде кириллица не затесалась часом?
Сергей
11 февраля 2021, 18:40
0
При выводе товаров через msProducts была данная ошибка, переписали чанки полностью на fenom. В логах пусто сейчас. Был еще самописный плагин изменения цены товара на лету, там прогер тоже что-то правил. Точнее сказать не представляется возможным.
Aleksanders
11 февраля 2021, 18:38
0
[[+publishedon]] выводит правильную дату
<pubDate>2021-02-05 09:47:00</pubDate>
Aleksanders
11 февраля 2021, 18:37
0
Сниппет dateLocale:
<?php
setlocale(LC_ALL, 'en_US');
return strftime($options,$input);
Вызов:
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>[[*pagetitle]]</title>
    <link>[[~4? &scheme=`full`]]</link>
    <description></description>
    <ttl>120</ttl>
    <atom:link href="[[~[[*id]]? &scheme=`full`]]" rel="self" type="application/rss+xml" />
    [[!getResources?
      &tpl=`rssTpl`
      &parents=`4`
      &depth=`5`
      &limit=`20`
      &includeContent=`1`
      &includeTVs=`1`
      &showHidden=`1`
      &hideContainers=`1`
      &showLog=`1`
    ]]
</channel>
</rss>
rssTpl:
<item>
<title>[[+pagetitle]]</title>
<link>[[++site_url]][[~[[+id]]]]</link>
<description>[[+description]]</description>
<enclosure url="[[+tv.imageNews]]"></enclosure>
<pubDate>[[+publishedon:dateLocale=`%a, %d %b %Y %H:%M:%S %z`]]</pubDate>
</item>
Alexey
11 февраля 2021, 18:35
0
[[+publishedon]] — так что выводит?
Евгений
11 февраля 2021, 18:35
+1
Здравствуйте, Алексей! Благодарю за компонент, удобный.

Есть небольшое добавление по выводу звёзд на рейтингах. Текущий ваш вариант не учитывает пробел между звёздами (который необходим, чтобы они выводились не слитно), поэтому выводит не совсем корректно. Т.е. если рейтинг 4.5, к примеру, то на 5-ой звезде он закрашен лишь чуть, а не наполовину и т.п…

Добавил небольшую функцию в сниппет ecThreadRating, для корректной заливки.
Кусок кода ниже. Верхушка и конец те же.

Надеюсь пригодится!

$count = $thread->get('count');
    
    function percent($v, $max) {
    	$sw = 1/4; # space/width (depends on stars space/width on background image) default - 4px/16px
    	$percent = (intval($v) * (1 + $sw) + ($v - intval($v))) / ((1 + $sw) * $max - $sw); # percent
    	return number_format($percent * 100, 3);
    }
    
    foreach($ratingFields as $field) {
        $data = array_merge($data, array(
            $field.'_wilson_percent' => percent($thread->get($field.'_wilson'), $ratingMax),
            $field.'_simple_percent' => percent($thread->get($field.'_simple'), $ratingMax),
            // TEST only
            $field.'_votes' => array(),
        ));

P.s. Также для кастомизации звезд (свой дизайн), перевёл в scss и задал для своих размеров.
Размеры звёзд задавать целыми (px), отступ справа тоже. Легко делается в Figma по размерам, экспорт в svg.
Может кому пригодится (часть кода, для понимания):

/*
 * Rating input
 **/

// Depends on stars width/height/space on background image (default values below)
$es_w: 16; // es star width
$es_h: 16; // es star height
$es_space: 4; // horizontal right space (space between stars)
........................
.ec-stars {
	background-position: 0 -#{$es_h}px;
	background-repeat: repeat-x;
	margin: 10px 0;
	width: #{($es_w + $es_space)*5 - $es_space}px;
	height: #{$es_h}px;
	//transform: scale(1.5);
	//transform-origin: 0 0;
}
........................
.ec-stars span.rating-0{width: 0;}
@for $i from 1 through 5 {
	.ec-stars span.rating-#{$i} {
		width: #{($es_w + $es_space)*$i - $es_space}px;
	}
}
........................
Aleksanders
11 февраля 2021, 18:32
0
Вообще не отображается
olik
11 февраля 2021, 18:32
0
Да у меня error.log с этой ошибкой в день по 5-7Mb выростает
Alexey
11 февраля 2021, 18:20
0
А так?

[[!dateLocale? &val=`[[+publishedon]]`]]
Николай Савин
11 февраля 2021, 18:18
0
Кто-нибудь может дать алгоритм как эту ошибку поймать у себя? Пофиксим, главное понять как ее увидеть
Алексей
11 февраля 2021, 17:53
0
почему-то не даёт скачать, ссылки битые, а так всё красиво на видео!
Приятной работы!
Скачать
Bitbucket
Сергей
11 февраля 2021, 17:36
0
Аналогичная проблема после обновления ModX на 2.8.1 и последние версии pdoTools 2.12.10-pl и minishop2 2.8.0-pl
Артур Шевченко
11 февраля 2021, 16:41
-1
Код вызова и полный код шаблона в студию. Можно ещё showLog приложить.
Aleksanders
11 февраля 2021, 15:51
0
Ребята, 3й день бьюсь и не могу разобраться, почему у меня в rss дата стоит на всех новостях:
<pubDate>Thu, 01 Jan 1970 03:33:40 +0300</pubDate>
Создал сниппет:
<?php
setlocale(LC_ALL, 'en_US');
return strftime($options,$input);
В tpl прописал:
[[+publishedon:dateLocale=`%a, %d %b %Y %H:%M:%S %z`]]
Пробовал сниппет такой:
<?php
setlocale(LC_ALL, 'en_US.UTF-8');
if ( $val == '' ) $val=time();
if ($format == '' ) $format = "%a, %d %b %Y %H:%M:%S";
return strftime($format, $val);
Всё равно на всех новостях дата 1970 год. Подскажите, как исправить?
Виноградов Тимур
11 февраля 2021, 15:24
0
Да, мне тогда помог форумчанин, а сейчас надо доработать немного.
Nik
Nik
11 февраля 2021, 15:05
0
Тоже показалось что когда-то я уже видел это
Виноградов Тимур
11 февраля 2021, 13:57
0
Может быть будет проще если отправлю скрины в мессенджере?
Там на самом деле чехарда есть с выводом этих авторов, не знаю что именно показывать лучше.
Александр Мельник
11 февраля 2021, 13:53
0
Тогда у вас неверно заполняются значения ТВ поля.
Если вы говорите что 89 это родитель статей, то почему вы его используете в EVAL привязке?
У вас вместо имен авторов, в ТВ поле значит попадают имена статей. (если быть совсем корректным то идентификаторы. )