Разрешаем гостям добавлять новости с сайта

Разрешаем гостям добавлять новости с сайта

Не всегда пользователю хочется регистрироваться на сайте, для того чтобы поделиться новостью. При этом желание разместить информацию у него все же есть. Чтобы предусмотреть такой поворот событий сделаем возможность добавлять материалы гостям с сайта под управлением CMS DLE.


Установка:
1. Зайти в Панель управления сайта, далее перейти в Пользователи > Редактирование пользователей > Добавить пользователя и создать нового пользователя со следующими данными:
Логин: guest
Пароль: guest
E-Mail: ваш e-mail адрес
Группа: Пользователи

Важно: логин и пароль должны быть одинаковы. Для безопасности рекомендуется создать пользователя, отличного от предложенного в статье, чтобы никто не мог воспользоваться его профилем.

2. Открыть engine/modules/addnews.php и найти:
if( !defined('DATALIFEENGINE') ) {
	header( "HTTP/1.1 403 Forbidden" );
	header ( 'Location: ../../' );
	die( "Hacking attempt!" );
}

Добавить ниже:
if(!$is_logged) {

	include(ENGINE_DIR.'/api/api.class.php');

	$member_id = $dle_api->take_user_by_name('guest');
	$is_logged = true;

}

где guest – это логин пользователя из 1 шага.

3. Чтобы предоставить гостям возможность загрузки файлов и изображений к их новостям, если это обязательно, то следует открыть engine/ajax/upload.php и найти:
if( !$is_logged ) {
	die ( "{\"error\":\"{$lang['err_notlogged']}\"}" );
}

Заменить на:
if(!$is_logged) {

	$member_id['user_id'] = 2;
	$member_id['user_group'] = 4;

	$is_logged = true;

}

где 4 - это ID группы созданного ранее пользователя, а 2 - присвоенный ему системой персональный ID.

4. Для корректности загрузки файлов для группы, в которой находится ранее созданный пользователь, выставите соответствующие разрешения.

Готово!
 
Версия DLE: 10.6-13.1
Автор: Артем Мáлков
Источник
Информация
Посетители, находящиеся в группе Гость, не могут оставлять комментарии к данной публикации.