решил поделиться своими доработками форума, а точнее как сделать каждому форуму свою иконку вместо стандартного значка синей папки
и так приступим
1. открываем редактором фаил на сервере /components/forum/frontend.php
2. находим следующую строку (примерно 218 строка)
3. заменяем её на следующий код
и сохраняем изменения.
4. далее после того как вы создали новый форум (или у вас уже есть имеющиеся) открываете его у себя на сайте и видете в адресной строке к примеру такой адрес ваш_сайт/forum/1001, где вместо 1001 может быть любая цифра. эта цифра — порядковый номер форума. берете картинку которую вы хотите вставить в качестве иконки и переименовываете её в forum1001.gif где вместо 1001 порядковый номер форума которому вы хотите присвоить свою иконку.
5. заливаете полученную картинку на сайт в папку /components/forum/images/
после чего у вас рядом с форумом будет своя иконка
картинка должна быть в формате gif ну или в том, в котором вы сами измените в данном коде
данный код проверяет наличие на сервере картинки с таким именем в папке /components/forum/images/ и если находит её то загружает в качестве иконки именно её, а если не находит, то стандартную иконку
вот скрин с сайта на котором стандартная иконка
а вот скрин с сайта на котором иконки заменены на свои по данному методу
часть 2
после бессонной ночи сделана следующая доработка — теперь всё делается из админки :
*при создании форума — загрузка новой иконки форума на сервер
*при редактировании — показывает текущую иконку (стандартную или ту, которая установленна уже) и замена текущей путем перезаливки картинки на сервер со страницы
*при удалении форума — иконка (если она была) тоже удаляется.
и так приступим ко второй части мода (без выполненой первой части мод не будет работать)
открываем /admin/components/forum/backend.php
1. находим
в этом разделе if находим строку
и добавляем перед следующий код
2. находим
в этом разделе if находим строку
и добавляем перед следующий код (немного отличается от первого пункта)
3. находим
в этом разделе if находим строки
и добавляем перед следующий код
4. находим
и заменяем на
5. находим и вставляем после этого кода (или в другое место на ваше усмотрение)
6. теперь необходимо создать папку /images/forum/ и прописать на неё права на запись (777)
получилось вот так
и так приступим
1. открываем редактором фаил на сервере /components/forum/frontend.php
2. находим следующую строку (примерно 218 строка)
echo '<td width="32" class="'.$class.'" align="center" valign="top"><img src="/components/forum/images/forum.gif" /></td>';
// мод добавления иконки к форуму // // начало мода - добавление// echo '<td width="32" class="'.$class.'" align="center" valign="top"><img src="/images/forum/'.$f['id'].'.gif" /></td>'; } else { echo '<td width="32" class="'.$class.'" align="center" valign="top"><img src="/components/forum/images/forum.gif" /></td>'; } // конец мода //
5. заливаете полученную картинку на сайт в папку /components/forum/images/
после чего у вас рядом с форумом будет своя иконка
картинка должна быть в формате gif ну или в том, в котором вы сами измените в данном коде
данный код проверяет наличие на сервере картинки с таким именем в папке /components/forum/images/ и если находит её то загружает в качестве иконки именно её, а если не находит, то стандартную иконку
вот скрин с сайта на котором стандартная иконка
а вот скрин с сайта на котором иконки заменены на свои по данному методу
часть 2
после бессонной ночи сделана следующая доработка — теперь всё делается из админки :
*при создании форума — загрузка новой иконки форума на сервер
*при редактировании — показывает текущую иконку (стандартную или ту, которая установленна уже) и замена текущей путем перезаливки картинки на сервер со страницы
*при удалении форума — иконка (если она была) тоже удаляется.
и так приступим ко второй части мода (без выполненой первой части мод не будет работать)
открываем /admin/components/forum/backend.php
1. находим
if ($opt == 'submit_forum'){
dbQuery($sql) ;
// мод добавления иконки к форуму // // начало мода - добавление// if (@$_FILES['picture']['name']){ $uploaddir = $_SERVER['DOCUMENT_ROOT'].'/images/forum/'; $realfile = $_FILES['picture']['name']; $filename = $myid.'.gif'; $uploadfile = $uploaddir . $realfile; $uploadicon = $uploaddir . $filename; { echo '<p>Копирование файла '.$uploadicon; echo '<p>Файл загружен, но не перемещен в '.$uploadicon; }else{ echo '<p>Файл перемещен в файл '.$uploadicon; } } else { echo 'Не удается загрузить файл. '; } }else{ echo 'Не указано имя файла!'; } // конец мода //
if ($opt == 'update_forum'){
dbQuery($sql) ;
// мод добавления иконки к форуму // // начало мода - обновление// if (@$_FILES['picture']['name']){ $uploaddir = $_SERVER['DOCUMENT_ROOT'].'/images/forum/'; $realfile = $_FILES['picture']['name']; $filename = $id.'.gif'; $uploadfile = $uploaddir . $realfile; $uploadicon = $uploaddir . $filename; { echo '<p>Копирование файла '.$uploadicon; echo '<p>Файл загружен, но не перемещен в '.$uploadicon; }else{ echo '<p>Файл перемещен в файл '.$uploadicon; } } else { echo 'Не удается загрузить файл. '; } }else{ echo 'Не указано имя файла!'; } // конец мода //
if($opt == 'delete_forum'){
//DELETE THREADS dbQuery("DELETE FROM cms_forum_threads WHERE forum_id = $id"); //DELETE FORUM dbDeleteNS('cms_forums', $id); dbQuery($sql) ;
// мод добавления иконки к форуму // // начало мода - удаление // $uploaddir = $_SERVER['DOCUMENT_ROOT'].'/images/forum/'; $realfile = $_FILES['picture']['name']; $filename = $id.'.gif'; $uploadfile = $uploaddir . $realfile; $uploadicon = $uploaddir . $filename; "; else echo "Successful!"; }; // конец мода //
<form action="index.php?view=components&do=config&id=<?php echo $_REQUEST['id'];?>" method="post" name="addform" id="addform">
<!-- мод добавления иконки к форуму --> <!-- начало мода --> <form enctype="multipart/form-data" action="index.php?view=components&do=config&id=<?php echo $_REQUEST['id'];?>" method="post" name="addform" id="addform"> <!-- конец мода -->
<tr> <td><strong>Родительский форум:</strong></td> <td> <?php $rootid = dbGetField('cms_forums', 'parent_id=0', 'id'); ?> <select name="parent_id" id="parent_id" style="width:260px"> <option value="<?php echo $rootid?>" <?php if (@$mod['parent_id']==$rootid || !isset($mod['parent_id'])) { echo 'selected'; }?>>-- Корень форумов --</option> <?php echo $inCore->getListItemsNS('cms_forums', $mod['parent_id']); } else { echo $inCore->getListItemsNS('cms_forums'); } ?> </select> </td> </tr>
<!-- мод добавления иконки к форуму --> <!-- начало мода --> <tr> <td><strong>Иконка форума:</strong></td> <?php echo '<td width="32" class="'.$class.'" align="center" valign="top"><img src="/images/forum/'.$mod['id'].'.gif" /></td>'; } else { echo '<td width="32" class="'.$class.'" align="center" valign="top"><img src="/components/forum/images/forum.gif" /></td>'; } ?> </tr> <tr> <td><strong>Загрузить иконку для форума:</strong></td> <td> <input name="picture" type="file" id="picture" size="30" /> </td> </tr> <!-- конец мода -->
получилось вот так
Реклама #
bondar 13 лет назад #
Sergey Platonov 13 лет назад #
а во вторых у меня немного подругому, чем там, у меня если таковой картинки нет, то есть пользователь её не залил, то показывается стандартная.
Sergey Platonov 13 лет назад #
alpik 13 лет назад #
Sergey Platonov 13 лет назад #
Thanatognozija 13 лет назад #
Sergey Platonov 13 лет назад #
Дмитрий 13 лет назад #
Алфей 13 лет назад #
NIKITA 13 лет назад #
Sergey Platonov 13 лет назад #
SP 13 лет назад #
Patriot 12 лет назад #