Перейти к контенту
  • 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

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

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

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

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить на вопрос...

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

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

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

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

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

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

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

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