Василий Столейков

Василий Столейков

С нами с 19 декабря 2012; Место в рейтинге пользователей: #23
15 декабря 2016, 11:38
1
0
Ок, согласен. Но если все 500 000 записей будут запихнуты в одну таблицу, то при выборке или подсчёте количества по разным критериям или при пагинации могут быть дикие тормоза (по крайней мере у меня были).

Мне кажется оба варианта имеют право на жизнь и оба решают основную проблему — разгрузку основной таблицы modx_site_content…

P.S. Правда и таблицы у меня были с огромным количеством полей и информации (намного больше чем у родной таблицы) — это тоже могло повлиять на вес таблицы и на тормоза при выборке.
15 декабря 2016, 09:37
2
+1
Если ты осилил этот PHP код, то и отдельные таблицы осилишь.
У меня на 200 000+ ресурсах такая же проблема была. Пришлось разбить на несколько (у меня 7) таблиц по разделам. По сути поля могут в точности повторять поле из таблицы modx_site_content.

Создай столько таблиц, сколько у тебя крупных разделов (например modx_site_content_1 и т.д.). И расфасовывай уже страницы по этим таблицам в зависимости от раздела.

Дальше можешь воспользоваться компонентом VirtualPage, чтобы создать в этих разделах отдельные адреса страниц. Выборку можешь сделать по конкретно взятой таблице категории через простой PHP, например:
$q = $modx->prepare("SELECT * FROM ".$modx->config['table_prefix']."site_content_1 LIMIT 50");
$q->execute();
$r = $q->fetchAll(PDO::FETCH_ASSOC);
foreach($r as $row){
    $id = $row['id'];
    print_r($row);
}
Если же нужна пагинация и все дела, то сделай на основе этих таблиц с помощью UICMPGenerator модели и подключай свой класс таблицы в pdoPage.

И при таком раскладе Василий правду сказал — у тебя в админке останутся только ресурсы категорий (по ним сможешь делать менюшки на pdoMenu и т.д.

Также скорее всего прийдётся создать несколько отдельных страниц с XML-картами этих разделов и скормить их robots.txt и Яндексу.
13 декабря 2016, 18:47
1
0
можно использовать Fenom.
Супер! Круто! Долгожданно даже я бы сказал… )))
И отвязка профилей тоже востребованно было. Спасибо за обновление!
07 декабря 2016, 20:27
1
0
Но речь не о комментариях, а о самом тикете!
07 декабря 2016, 18:32
1
0
Не совсем вариант, т.к. это поле должно быть доступно к заполнению, но оно необязательно.
Поле называется Дополнительная информация (необязательно).
03 декабря 2016, 16:05
1
0
Круто!
А где найти сам компонент-то? В статье об этом ни слова…
02 декабря 2016, 22:28
1
0
Раньше условие на in срабатывало потому что оно искало через strpos() вхождения в json-строке…
02 декабря 2016, 22:26
1
0
ДА, ДА и снова ДА!!!
В очередной раз восхищаюсь твоим умением разгадывать чужие загадки!
Я забыл пропустить через json_decode и создал на пустом месте проблему, извини что подёргал тебя зря, но для меня вся эта информация была полезной, спасибо!

Теперь всё работает прекрасно!
02 декабря 2016, 22:19
1
+2
Спасибо за развитие компонента!
Особенно обрадовало это:
Кстати говоря, вы сможете использовать этого провайдера для любой другой произвольной работы
02 декабря 2016, 22:16
1
0
Спасибо, но странно что не работает.
Мои эксперименты:
{$compl|print} // ["19","35","18","20","54"]

{var $v = '19'}
{if ($v in list $compl)}da{else}net{/if} // net
{($v in list $compl) ? 'da' : 'ne'} // ne

{var $v = '199'}
{if ($v in list $compl)}da{else}net{/if} // net
{($v in list $compl) ? 'da' : 'ne'} // ne

{var $v = '1'}
{if ($v in list $compl)}da{else}net{/if} // net
{($v in list $compl) ? 'da' : 'ne'} // ne

{var $v = 19} // без кавычек
{if ($v in $compl)}da{else}net{/if} // net
{($v in list $compl) ? 'da' : 'ne'} // ne

В системных настройках по феному всё что можно включено:
pdotools_fenom_default — 1
pdotools_fenom_modx — 1
pdotools_fenom_options — 1
pdotools_fenom_parser — 1
pdotools_fenom_php — 1


Видно в моём случае сделаю маленький костылёк модификатором…
02 декабря 2016, 21:57
1
0
Нет, тоже не работает как и без скобок.
Такой вариант выдаёт net, хотя должен выдавать da:
{if ('19' in list $compl)}da{else}net{/if} // '19' (строчное) точно есть
Результат точно такой же как и без скобок во всех вышеперечисленных вариантах…
02 декабря 2016, 18:45
1
0
Не хотелось бы писать отдельный сниппет для проверки наличия в массиве не убедившись вначале что Fenom не может такого…
02 декабря 2016, 07:25
1
0
modx.pro/components/10494-xparser-parser-rss-feeds/#comment-71785 — уже исправлено? Не могу проверить, уже проголосовал там…
Сейчас у меня там (+7), хотя по логике должно быть больше похоже…
01 декабря 2016, 12:07
1
+4
Поставил + и он показал +20, обновил страницу — показывает +3 ))
01 декабря 2016, 09:31
1
0
Понятно, спасибо, нужная вещь!
01 декабря 2016, 09:01
1
+1
У многих sms-провайдеров жены указаны в районе +-40 копеек
Дешевые жены у них...
Прости, не удержался — фраза двусмысленной получилась, исправь пожалуйста…

Что включает в себя компонент для работы? Сниппет? Интерфейс в админке?
25 ноября 2016, 09:55
1
+1
В настройках контекста смотрели? Часто достаточно там указать параметр site_url с https и он подставит нужный.
25 ноября 2016, 09:50
1
+1
Круто!
Буквально вчера хотел купить дополнение, и не хватало 30 рублей!!!
Спасибо за такой подарок!

P.S. Мысли вслух: было бы круто если бы модсторе ещё и был партнёром кэшбэк сервисов, например LetyShops — letyshops.ru/chernaya-pyatnitsa
22 ноября 2016, 10:02
1
0
Не уверен, если бы была нужна, то Василий бы позаботился об этой включённой настройке сразу при установке нового сайта, чего не происходит.

P.S. В последнее время у меня сайт раз в несколько дней разбухал с 1 гига разбухал до 8 гигов и начинал глючить от нехватки места — подозреваю это как раз из-за кэширования базы…
22 ноября 2016, 00:01
1
0
Да, я и вернул её в значение по умолчанию, от греха подальше. Часто лишняя оптимизация добавляет проблем, достаточно вспомнить глюки AjaxManager )).

Не думаю что на modhost нужна эта настройка…