avatar
+62.91
154.072

Вадим

Да, точно, там надо так:
'people/*' => '@404',
Попробуйте сделать так: в папку app/config/modules/search/ положите файл config.php:
<?php
/***
 * Поиск строгий/нестрогий
 * false - нестрогий поиск, т.е. запрос "дом" вернет "дома", "задом" и т.д.
 * true  - строгий поиск, т.е. запрос "дом" будет игнорировать "дома" и "задом",
 *         но запросу "дом*" будут соответствовать "дома", "домовой",
 *         а запросу "*дом" будут соответствовать "задом", "передом",
 *         а запросу "*дом*" будет соответствовать "рандомный"
 */
$config['strict_search'] = false;
Не знаю, связана ли ошибка загрузки с ошибкой десериализации, но вот сама ошибка десериализации может быть связана с кодировкой базы. Если версия мускуля позволяет, то лучше для таблиц задать кодировку utf8mb4, только в конфиге тоже надо задать соответствующий параметр.
Я правильно понял: проблема возникает только при создании статьи? При редактировании и в комментах проблемы нет?
Размеры, вес и тип — соответствуют разрешённым
Соответствуют разрешенным в движке? А в настройках пхп и сервера? Вот прям к этому топику есть похожие статьи, и там есть про все настройки
Хоть мне кажется это странным и нелогичным, но все это реализуемо настроками конфига (движок в этом плане очень гибкий). Например, в app/config/config.local.php задаете так:
$config['router']['uri'] = [
    'users' => 'people',
];

$config['router']['rewrite'] = [
    'users' => 'profile',
];
Но при этом site.com/people и site.com/people будут продолжать работать (т.е. могут быть дубли). Если нужно их закрыть, то надо задать так
$config['router']['uri'] = [
    'users' => 'people',
    'people' => '@404',
    'profile' => '@404',
];

$config['router']['rewrite'] = [
    'users' => 'profile',
];
Если уж очень нужно, то можно, конечно, сделать и так, возможностей движка на это хватит. Но это точно так нужно?

Сейчас адрес site.ru/profile/admin показывает профиль юзера с логином admin, а такой адрес: site.ru/people/online — список пользователей онлайн. Если сделать так, как просите, то получится:
site.ru/users/admin — это профиль админа
site.ru/users/online — это пользователи онлайн

Т.е. две ссылки с совершенно одинаковой структурой будут показывать разные вещи. Точно так нужно?
В настройках надо задавать не что во что переделывается, а какой адрес на какой обработчик адресовать. Если нужно, чтобы страницы вида site.com/users/... передавались обработчику profile, то задается так:
$config['router']['rewrite']['user'] = 'profile';
Конфиг-параметр module.user.profile_url сейчас не используется в движке. Возможно, будет в будущем, но пока нет.

А вот с этим кодом непонятно:
$config['router']['rewrite'] = array(
'36356356' => 'admin',
'users' => 'people',
'users' => 'profile',
);
Вы задаете переадресацию с users и на people, и на profile одновременно, что не может быть выполнено в принципе.
Для задания реврайтов принцип такой: надо указать откуда переадресовываем и куда. Т.е. в вашем случае мы хотим задать, что URL с 'user' должен обрабатываться стандартным обработчиком 'people':
$config['router']['rewrite']['user'] = 'people';
aVadim
aVadim
Еще раз — нет никаких двух блогов. Если персональные блоги включены, то создается один — и только ОДИН! — персональный блог для каждого пользователя.

То, что при создании топика отображаются два блога («персональный блог» и «блог им. ...») — это баг, который будет исправлен.

Что касается оформления, то в движке из коробки нет такой фичи, как индивидуальное оформление блогов (хоть персональных, хоть коллективных). Но есть сторонние плагины для этого:
http://altocms.ru/addons/item/98/
http://altocms.ru/addons/item/99/
aVadim
aVadim
Двойное отображение — баг. Фактически персональный блог для каждого юзера создается один. Но вот насчет доступа я так и не понял — какого доступа нет у юзера? Речь про редактирование названия? Или про что-то иное?
aVadim
aVadim
Вы умудряетесь в очень коротком тексте упомянуть несколько проблем, причем, настолько туманно, что понимаешь — проблема, как бы есть, но в чем она — непонятно.

В частности, мне непонятно:
1) Почему речь о двух блогах — это что за блоги, о чем речь? Персональный блог на каждого только один.
2) Почему два «ПСЕВДО» блога?
3) «...у меня нет к ним доступа» — у кого «у меня»? У админа нет доступа к персональным блогам? У владельца нет доступа к своим блогам?
4) И что вообще значит «нет доступа» — не можете читать? Писать? Удалить? Что-то еще?
aVadim
aVadim
Если в Админке отключаешь Персональные блоги, то у зареганых пользователей функция постинга в эти самые типа блоги, не пропадает, а пропадает она только у вновь прибывших пользователей.
А как иначе? Блоги-то уже созданы, возможно, в каких-то есть контент. Поэтому если они совсем не нужны, то нужно их отключить, а те, что уже созданы — удалить. У вновь зареганных эти блоги создаваться не будут, на сайте персональных блогов не будет — все, задача решена
aVadim
aVadim
Я не очень понял, чего же требуется — отключить персональные блоги? Это делается из админки — отключаете этот тип блога и все
aVadim
aVadim
В последней версии добавлен параметр, задающий минимальные размеры, чтоб изображение попало в превью
aVadim
aVadim
Исправлено в последней версии
aVadim
aVadim
Ну, вот как-то так, потребности в этой фиче не ощущалось. Число френдов — есть метод, а числа подписчиков — нет. Но согласен, что, пожалуй, должно быть
aVadim
aVadim
Нет готового метода, который бы отдавал число подписчиков
aVadim
aVadim
Если нужно проверить, есть ли вообще заполненные дополнительные поля у топика (неважно, какие), то вот примерно такой код может быть:
{if $oContentType}
    {foreach $oContentType->getFields() as $oField}
        {if $oField->getFieldType() == 'file'}
            {if $oTopic->getFieldFile($oField->getFieldId())}
                {$bFieldsNotEmpty = true}
            {/else}
        {else}
            {if $oTopic->getField($oField->getFieldId())}
                {$bFieldsNotEmpty = true}
            {/else}
        {if}
    {/foreach}
{/if}

{if $bFieldsNotEmpty}
    поля не пустые
{/if}