Финансовая поддержка VPS, бесплатные дополнения и docs Донаты оплачивают сервер и двигают бесплатные дополнения MODX и документацию. Поддержать

Всего 126 113 комментариев

Павел Галанкин
Павел Галанкин
Есть замечательный тэг base target='_blank'. Правда при его использовании нужно всем ссылкам, которые должны открываться не в отдельном окне (пункты меню, навигация и т.п.) добавить атрибут target='self'. Но решение Василия, безусловно, гораздо удобнее!
Василий Наумкин
Василий Наумкин
Указать в настройках, что шаблоны имеющихся товаров — это шаблоны товаров miniShop.

Проделать то же с категориями.

Всё. Не нужно ничего никуда импортировать — у вас уже всё есть, надо только сказать miniShop это использовать.
Ваня
Ваня
Еще бывает некоторые отключают чанки, сниппеты, тв и т.д. которые им пока не нужны в ресурсе или в шаблоне или чанке, просто изменив имя или добавив любой символ, что есть совсем не правильно, т.к. парсеры тратит много времени на поиски этого элементы, попробуйте сами на чистом шаблоне поэксперементировать.

выключать такие элементы нужно знаком "-" после [[, т.е. чтобы получилось вот так примерно [[-$chunk]] [[-snippet]] [[-*tv]]
Алексей Марунин
Алексей Марунин
Да, я помню в свое время долго ломал голову, пока не добрался до этого пресловутого 'passwordnotifymethod' :) Сожалею, что не увидел ваш вопрос вовремя. Тем не менее, пару моментов все же отмечу:

Для начала корректно обрабатываем ошибки при регистрации:

// Запускаем стандартный процессор регистрации
$response = $this->modx->runProcessor( 'security/user/create', $options );
if ( $response->isError() ) {
	// Получаем весь набор ошибок (например, не задано имя пользователя, пустой пароль и т.д.)
        $errors = $response->response['errors'];
	foreach ( $errors as $error ) {
		$errorMsg = $error['msg'];
		// Выводим сообщение об ошибке в лог или плейсхолдер
	}
}
else {
	// А здесь все замечательно, получаем массив 
	// с параметрами пользователя (не объект типа modUser!)
	$userArray = $response->getObject();
}


Далее. Добавление в группу при регистрации тоже простое:

// Получаем идентификаторы групп и ролей, используемых по умолчанию
// Группу Registered заменить на нужную (она должна быть заранее создана!)
$group = $this->modx->getObject( 'modUserGroup', array( 'name' => 'Registered' ) ); 
$userGroup = $group->get( 'id' );
$role = $this->modx->getObject( 'modUserGroupRole', array( 'name' => 'Member' ) );
$userRole = $role->get( 'id' );

...
// При вызове процессора обратите внимание на второй параметр - $options.
// В него нужно добавить следующий элемент:
$options['groups'] = array( array( 'usergroup' => $userGroup , 'role' => $userRole ) );
// По аналогии можете созданного пользователя добавлять сразу в несколько групп с различными ролями

Надеюсь, помог :) Ибо сам буквально недавно «варился» в этом очень основательно :)
Дмитрий Кудинкин
Дмитрий Кудинкин
Столкнулся с таким:

[2012-12-02 14:18:16] (ERROR @ /assets/components/tickets/connector.php) Encountered empty IN condition with key resource
[2012-12-02 14:18:16] (ERROR @ /assets/components/tickets/connector.php) Error 42000 executing statement:
Array
(
[0] => 42000
[1] => 1064
[2] => You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY `TicketComment`.`createdon` DESC LIMIT 20' at line 1
)

Раздел с тикетами создается, но таблица pgt_tickets_threads пуста. С локалями вроде все в порядке.
Подтолкните в нужном направлении…