ExBB Community » Файловый ExBB » Модификации и дополнения » Объявление на форуме для гостей (или для пользователей с другими правами) с админкой

Страниц (1): [1]
 

1. Guyver - 19 июля 2016 — 15:01 - перейти к сообщению
Переношу тему из обсуждения.

Объявление для гостей (его видят только гости сайта). Тип пользователей можно изменить по своему усмотрению. Само объявление можно разместить в любом месте форума, а редактировать его (и сразу же видеть как оно отображается) можно будет из панели администратора на главной странице. Объявление поддерживает html код. Т.о. это объявление можно превратить во что угодно, и видеть его будет тот, кому вы это пропишите!

Установка:


1. Создаём в папке admin файл news.tpl со следующим содержимым:

CODE:
<?php
error_reporting(0);
$filename = "news.txt";

$newdata = $_POST['newd'];
if ($newdata != '') {
// Открываем файл
$fw = fopen($filename, 'w') or die('Невозможно открыть файл');
// Ведём запись в файл + stripslashes
$fb = fwrite($fw,stripslashes($newdata)) or die('Невозможно изменить файл');
// Закрываем
fclose($fw);
}

// Открываем файл
$fh = fopen($filename, "r") or die("Невозможно открыть файл");
// Читаем его
$data = fread($fh, filesize($filename)) or die("Невозможно прочитать файл");
// Закрываем
fclose($fh);
// Выводим его содержимое
echo 'Редактирование объявления для гостей:<br>';
echo"
<form action='$_SERVER[php_self]' method='post'>
<textarea cols=80 rows=10 name=newd>$data</textarea>
<br><input type='submit' value='Сохранить'>
</form>
";
include "news.txt";
?>


На всякий случай сам файл можно найти в приложении.

2. Создаём файл news.txt и кидаем его в корень форума. В нём можно написать обычный html код. Файл не должен быть пустым, иначе возникнет ошибка! Если хотите чтобы объявление было пустым, напишите в этом файле к примеру

CODE:
<br>



3. Прописываем вывод формы редактирования объявления в панели администратора.

В файле admincenter.php в корне сайта находим строку

CODE:
include('./admin/index_body.tpl');


И после неё вставляем:

CODE:
include('./admin/news.tpl');



4. Выводим новость на самом форуме. Сперва выставим того, кто будет видеть это объявление. К примеру, гости:

Открываем файл templates/InvisionExBB/board_body.tpl

И в нём после

CODE:
LOGINS;


вставляем

CODE:
if (($fm->user['status'] == 'gu'))
{
$banner = '<table style="width:100%;"><tr><td>';
$banner .= file_get_contents('news.txt');
}
else
{
$banner = '';
}


Где 'gu' - это гости. Можно написать любых других пользователей.

'ad' - администратор
'sm' - супермодератор
'me' - пользователь
'banned' - забаненный

Теперь нужно вывести само объявление на форуме. К примеру, на главной странице форума под шапкой. В том же файле ищем свободное место и вставляем туда код:

CODE:
$banner


Я вставил это объявление перед

CODE:
{$board_data}


между одной из таблиц.


Вот и всё! По-своему усмотрению можно превратить этот мод во что угодно, раздав нужные права доступа.


P.S. Пример html кода, который находится в объявлении у меня на форуме:

CODE:
<p style="background-color:#D40000; color:#FFFFFF"><B><br> ОБЪЯВЛЕНИЕ: Мы наконец-то переехали на новый форум! При этом были перенесены все пользователи и часть сообщений. Чтобы войти на форум под своим логином, сделайте следующее:<br><br></p><p style="background-color:#E4EAF2; color:#cc0000"></B> 1. Узнайте, есть ли вы в списках пользователей <a href="http://ххххх/forum/tools.php?action=members" target="_blank">на странице зарегистрированных пользователей.</a> Если ваш логин был на русском языке, теперь он будет писаться транслитом.
<br></br>
2. Воспользуйтесь <a href="http://ххххх/forum/profile.php?action=lostpassword" target="_blank">формой восстановления пароля</a>, где вы должны ввести свой логин, найденный в списке зарегистрированных пользователей.</p>Если вы не получили письмо с инструкцией по восстановлению пароля, просмотрите папку со спамом. Многие зарубежные почтовые сервисы (например gmail) направляют подобные письма туда. После успешной авторизации просмотрите раздел <a href="http://ххххх/forum/announcements.php" target="_blank">"Объявления"</a>. Не забудьте настроить свой профиль: загрузить аватар, подпись и т.д.
2. Liliat - 8 сентября 2016 — 16:30 - перейти к сообщению
Интересная разработка, благодарю!
Взяла себе, установила, проверила в работе.
Очень полезно иметь возможность сделать объявления не для всех.

Яндекс.Метрика   

Powered by ExBB
[Script Execution time: 0.0408]     [ ]