Дополнительная страница для IP.Board 2.3

Дополнительная страница для IP.Board 2.3

Ещё один артефакт прошлого. Инструкция по созданию дополнительных страниц в #IPB 2.3. Старая, но вдруг кому-то пригодится.

Что такое дополнительная страница (или Custom Pages)?

Дополнительная страница (или Custom Pages) - это страница, “совмещённая” со стилем форума и находится по адресу:

1
http://example.com/index.php?autocom=название_страницы

Объект название_страницы представляет собой название файла .php дополнительной страницы.

Как сделать дополнительную страницу?

Создаём файл .php следующего содержания:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
class component_public
{
  var $ipsclass;

  function run_component()
  {
    $this->pagetitle = "Название страницы";
    /* Здесь идёт название вашей страницы.
    Название также будет показано в панели навигации вашего форума. */

    $this->nav[] = "<a href='{$this->ipsclass->base_url}autocom=custom'>{$this->pagetitle}</a>";
    $this->ipsclass->load_template('skin_global');

    $output .= "Здесь содержимое страницы";
    /* Здесь будет содержимое вашей будущей страницы.
    Содержимое помещается между кавычками.
    Также, как обычно, вам доступен HTML-код. */

    $this->ipsclass->print->add_output($output);
    $this->ipsclass->print->do_output(array('TITLE' => "{$this->ipsclass->vars['board_name']} - {$this->pagetitle}", 'JS' => 0, 'NAV' => $this->nav));
  }
}

В самом коде установлены комментарии, так что вы без труда разберётесь что к чему.

После создания этого PHP-файла, вы должны поместить его в папку ./sources/components_public.

Всё!