Перейти к контенту
  • 0

Страничка с дополнительной инфой


Des

Вопрос

Ребята, подскажите как грамотно организовать на форуме страничку с дополнительной инфой (например правила форума)?

Установлен набор MAXI v.1.1.1

Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0

Я тоже хотел бы узнать, но только для 1.2 финал.

 

Вроде для каждого форума настроить можно отдельно, но хотелось бы, чтобы на главной странице на ряду с сылками на календарь, профиль стояла ссылка на правила. Реально?

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Ссылку сделать реально добавь новый пункт в skin_global.php.

Я спрашивал про дополнительную страницу с любой инфой

Ссылка на комментарий
Поделиться на других сайтах

  • 0
дополнительную страницу с любой инфой

Нет ничего проще. Пишешь обычную хтмл-страницу и даёшь на неё ссылку с форума. Если планируешь страницу обновлять, то пишешь её на PHP. Если планируешь страницу легко обновлять, пишешь для обновления простенький интерфейсик. Можно с базой интегрировать, если хочется дополнительных возможностей.

Ещё вопросы?.. :D

Ссылка на комментарий
Поделиться на других сайтах

  • 0

:D Ну да, какой вопрос такой и ответ... Я так и делал (HTML), но это через ж..у ;) Чтобы сохранить дизайн, нужно отдельно ковыряться с картинками, горизонтальное меню вручную делать и т.д.

Есть же наверное способ сделать в рамках существующего форума отдельную страницу с сохранением элементов форума (шапка, банеры, горизонтальное меню...)?

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Есть же наверное способ сделать в рамках существующего форума отдельную страницу с сохранением элементов форума (шапка, банеры, горизонтальное меню...)?

Ну эт само собой. Делаешь модуль Имя_модуля.php (а лучше просто скопировать существующий какой-нить и менять), кидаешь его в sources... Там где список действий в index.php (т.е. типа

'boards' => "Boards",
'ST' => "Topics",
'SF' => "Forums",

и всё такое) дописываешь строчку типа

'new' => 'Имя_модуля'

, а потом даёшь ссылку из форума по виду index.php?act=new... И будут при вызове твоего скрипта нарисованы шапка, баннеры и проч. фигня из Board Wrappers... Кроме того, можно будет запросто сделать доступными элементы оформления, которые вынесены в functions.php и skin_global.php... сможешь их вызывать... ну там build_pagelinks и всё такое...

Я понятно объясняю?.. :D

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Des

Есть такой модуль - Topics.php. В index.php есть такая запись насчёт него:

"ST"       => "Topics",

Соответственно, index.php?act=ST&t=5 вызывает код из Topics.php и ведёт на нужную тему. Так со всеми стандартными модулями (Topics, Forums, Boards и т.д.).

Тебе нужно создать модуль... ну, скажем, Rulez.php... дописать в index.php где-нить там же

"new" => "Rulez",

, потом запихнуть Rulez.php в папку sources - и по ссылке http://www.myforum.com/index.php?act=new у тебя будет открываться твой модуль. При этом сверху-снизу будет стандартное оформление... баннер и прочая фигня. Модуль можешь назвать от балды, и в index.php act тоже придумать от балды. Главное - установить соответствие по типу "ST" => "Topics" и т.п.

Для экспериментов лучше взять какой-нить небольшой стандартный модуль (типа Memberlist, например), вырезать из него кое-что лишнее... переименовать... и там уже смотреть, что к чему.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Да я так всё и сделал.

Для экспериментов лучше взять какой-нить небольшой стандартный модуль (типа Memberlist, например), вырезать из него кое-что лишнее... переименовать...

Проблема как раз в этом :D "вырезать из него кое-что лишнее... переименовать..."

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Mus? в 1.2 есть есть пункт в AdminCP > System Settings > Board Guidelines. Там ты можешь создать страницу правил. Причем ссылка сама разместится наверху страницы!!!

 

Des можешь попробовать конвертировать из скрипта правил в 1.2 Или функцию хотя бы выбдрать. Она лежит в 1.2 в sources/misc/contact_member.php

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Des, вручную:

 

У меня есть форум дома. Лежит в Z:\home\localhost\www\upload\ . Доступен по адресу http://localhost/upload.

 

1. Я создаю файл Z:\home\localhost\www\upload\sources\Rulez.php.

Содержимое этого файла:

 

<?php

$idx = new Rulez;

class Rulez {

   var $output     = "";
   var $page_title = "";
   var $nav        = array();
   var $html       = "";
   var $base_url   = "";
   
   function Rulez()
   {
  	 global $ibforums, $DB, $std, $print;
  	 
  	 $html = "<br><h1>Привет, блин!!!</h1></br>";
  	 
  	 $print->add_output("$html");
       $print->do_output( array( 'TITLE' => "Мой модуль", 'JS' => 0, NAV => array( "Мой модуль" ) ) );
 }
 
}

?>

 

2. Открываем index.php и находим:

"Search"   => "Search",

Ниже добавим:

"new"  => "Rulez",

 

По адресу http://localhost/upload/index.php?act=new можно заценить работу нового модуля. :D

А теперь вместо

$html = "<br><h1>Привет, блин!!!</h1></br>";

можно писать всё, что хочешь.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Такой вопрос.

В $html = "<br><h1>Привет, блин!!!</h1></br>";

можно встявлять только html, а мне нужно вставить туда посторонний скрипт, скажем, script.php

Как это сделать?

 

PS: форум версии 1.3

Изменено пользователем Fir
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Сделал все, как положено, вот код:

 

<?php

$idx = new Articles;

class Articles {

   var $output     = "";
   var $page_title = "";
   var $nav        = array();
   var $html       = "";
   var $base_url   = "";
   
   function Articles()
   {
    global $ibforums, $DB, $std, $print;
    
    $html = file("index.php");
    
    $print->add_output("$html");
       $print->do_output( array( 'TITLE' => "Статьи", 'JS' => 0, NAV => array( "Статьи" ) ) );
 }
 
}

?>

 

index.php - файл скрипта статей, который я хочу интегрировать в форум. Сам форум открывается, но вместо скрипта пишется всего одно слово - Array

Что делать?

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Сам форум открывается, но вместо скрипта пишется всего одно слово - Array

Не, не, это не правильно!

Вот что делает функция file(): http://ru3.php.net/manual/ru/function.file.php

Тебе нужно либо экспериментировать с функцией include(), либо использовать обычный HTMLьный <iframe>...

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Значит, так.

Сделал я по ссылке ?act=art вот такой sources/Art.php:

<?php

$idx = new Articles;

class Articles {

   var $output     = "";
   var $page_title = "";
   var $nav        = array();
   var $html       = "";
   var $base_url   = "";
   
   function Articles()
   {
    global $ibforums, $DB, $std, $print;
    
    echo 'Top';
    
    require('Boards.php');
    
    echo 'Bottom';
    
    $print->add_output('');
       $print->do_output( array( 'TITLE' => "Статьи", 'JS' => 0, NAV => array( "Статьи" ) ) );
 }
 
}

?>

 

Отсюда следует:

1). Boards.php requir'ится нормально.

2). Вызываемый модуль (Boards.php в данном случае) не должен сам делать do_output (у меня при вызове модуля Art.php текст 'Bottom' не отображается => вывод: после вызова do_output в вызываемом модуле дальнейшая печать прекращается :D ).

 

В общем, твой вызываемый модуль должен быть подогнан слегка для использования таким образом. Если нет - вставляй через <iframe>.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Пробовал делать так:

 

$html = "<iframe src="index.php" align="middle"></iframe>";

 

Получаю в ответ:

 

Parse error: parse error in /home/site/public_html/forums/sources/Articles.php on line 17

 

Имхо, из-за кавычек в тэгах iframe? Как можно это обойти?

 

PS: пофиксено $html = "<iframe src=\"index.php\" align=\"middle\"></iframe>";

 

Теперь хоть что-то открывается в маленьком окошке, и это что-то - индекс форума... По ходу он принимает index.php за индекс форума, и не отображается, что нужно...

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Теперь хоть что-то открывается в маленьком окошке, и это что-то - индекс форума... По ходу он принимает index.php за индекс форума, и не отображается, что нужно...

Вполне логично. Пропиши тогда абсолютные пути к твоему index.php. Кстати, тогда должно работать и с require().

Ссылка на комментарий
Поделиться на других сайтах

  • 0
А как зделать вовод менюшки IPDML? и Центтральной таблицы форума вокруг html наполнителя????
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Ой у меня тут тот же вопрос, только как мне вставить свой скрипт, только в портале?

Как это сделано тут.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

вот код моей страницы

 

<?php

/*
+--------------------------------------------------------------------------
|   Invision Power Board v1.3 Final
|   ========================================
|   by Matthew Mecham
|   (c) 2001 - 2003 Invision Power Services
|   http://www.invisionpower.com
|   ========================================
|   Web: http://www.invisionboard.com
|   Time: Sun, 01 Feb 2004 22:33:36 GMT
|   Release: 010dcb6b87f00ef315509d8790a2bf84
|   Email: matt@invisionpower.com
|   Licence Info: http://www.invisionboard.com/?license
+---------------------------------------------------------------------------
|
|   > Show all the members
|   > Module written by Matt Mecham
|   > Date started: 20th February 2002
|
|	> Module Version Number: 1.0.0
+--------------------------------------------------------------------------
*/


$idx = new earn;

class Memberlist {

    var $output     = "";
    var $page_title = "";
    var $nav        = array();
    var $html       = "";
    var $base_url   = "";


    function earn()
    {
    global $ibforums, $DB, $std, $print;

    $html = "<br><h1>Заработок в сети</h1></br>";

    $print->add_output("$html");
       $print->do_output( array( 'TITLE' => "earn", 'JS' => 0, NAV => array( "earn" ) ) );
 }

}

?>

Добавлено в [mergetime]1080927015[/mergetime]

при попытке вызова страницы - http://www.kulabu.com/index.php?act=earn получаю ошибку:

 

 

 

Fatal error: Cannot instantiate non-existent class: earn in /stuff/www/Hottt/sources/earn.php on line 27

Добавлено в [mergetime]1080927207[/mergetime]

На 27-й строке у меня находится:

$idx = new earn;

Ссылка на комментарий
Поделиться на других сайтах

  • 0

А вот какой я мод нашёл на IBplanet - http://mods.ibplanet.com/db/?mod=705

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

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

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

Гость
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.