wersja skryptu MyBB:1.6.12
adres forum:cabrio-club.pl
na czym polega problem (screen, opis, komunikaty, nazwa i wersja wtyczki):
Mam na forum wgrany boczny panel. Jak dodać ten plugin w tabeli użytkownicy online w linku "Sprawdź co oznaczają rangi"
Jaka zmienna odpowiada za ten plugin ?
ACP -> Style i Szablony -> Szablony -> Twój_Szablon -> Portal -> portal_whosonline
Kod:
<table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder">
<tr>
<td class="thead"><strong>{$lang->online}</strong></td>
</tr>
<tr>
<td class="trow1">
<span class="smalltext">
{$lang->online_users}<br /><strong>»</strong> {$lang->online_counts}<br />{$onlinemembers}
<br />
Sprawdź co oznaczają rangi
</span>
</td>
</tr>
</table>
<br />
Pomożesz gdzie mam wstawić treść odpowiedzialną za te grupy ?
Ale jak to miałoby wyglądać, chcesz zrobić nową stronę z rangami? (
http://mybbsite.pl/dodawanie-nowej-podstrony )
Potem w pliku / szablonie dodajesz rangi, chyba, że chcesz to jakoś inaczej zrobić.
Potem w szablonie, tym co podałeś dodaj <a href="{$mybb->settings['bburl']}/[nazwapliku].php">Sprawdź</a>
Ale jaka jest nazwa pliku odpowiedzialna za dodanie tego pluginu ? [nazwapliku].php ? - jaka nazwa ?
Czekaj, czekaj, to co Ty w końcu chcesz zrobić? Jak?
Te grupy mają się wyświetlać na nowej stronie, prawda?
Czyli tak:
1.
http://mybbsite.pl/dodawanie-nowej-podstrony
2. Do tworzonego pliku dodaj:
Kod PHP:
$plugins->run_hooks("mojanazwa");
i do
grouplegend.php (plik pluginu)
po:
Kod PHP:
$plugins->add_hook("index_start", "grouplegend_show");
dodaj:
Kod PHP:
$plugins->add_hook("mojanazwa", "grouplegend_show");
Oczywiście
mojanazwa jest dowolna.
2. Do tworzonego szablonu dodaj:
{$ugl_userlegend}.
3. W szablonie
portal_whosonline dodaj:
Kod PHP:
<a href="{$mybb->settings['bburl']}/nazwapliku.php">Sprawdź</a>
Gdzie
nazwapliku - to nazwa pliku, który stworzyłeś.
legenda.php
Kod:
<?php
define('IN_MYBB', 1);
require "./global.php";
add_breadcrumb("Legenda grup", "legenda.php"); //Tekst w pierwszym cudzysłowie "nazwa nowej podstrony" oznacza tekst wyświetlany w nawigacji, a tekst w drugim cudzysłowie "legenda.php" oznacza nazwę plik, w którym znajduje się ten kod
eval("\$podstr = \"".$templates->get("legenda")."\";"); // kod "("Default Templates")oznacza z jakiego szablonu będzie pobierana treść, Jeżeli Twój szablon nosi nazwę np. regulamin, to kod "("Default Templates")" zmień na "("regulamin")"
output_page($podstr);
?>
Plik w szablonie:
Kod:
<html>
<head>
{$headerinclude}
<title>Legenda grup</title>
</head>
<body>
{$header}
<table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder" style="clear: both; border-bottom-width: 0;">
<tr>
<td class="thead" colspan="2">
LEGENDA GRUP
</td>
</tr>
<tr>
<td class="trow2 post_content ">
$plugins->run_hooks("Grupy");
{$ugl_userlegend}
</td>
</tr>
</table>
{$footer}
</body>
</html>
plik portal_whosonline
Kod:
<table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder">
<tr>
<td class="thead"><strong>{$lang->online}</strong></td>
</tr>
<tr>
<td class="trow1">
<span class="smalltext">
{$lang->online_users}<br /><strong>»</strong> {$lang->online_counts}<br />{$onlinemembers}
<br />
<a href="{$mybb->settings['bburl']}/legenda.php">Sprawdź</a>
</span>
</td>
</tr>
</table>
<br />
Coś zapewne pomieszałem. Bo nie działa jak powinno.
legenda.php
Kod PHP:
<?php
define('IN_MYBB', 1);
require "./global.php";
$plugins->run_hooks("grupy");
add_breadcrumb("Legenda grup", "legenda.php");
eval("\$podstr = \"".$templates->get("legenda")."\";");
output_page($podstr);
?>
Szablon o nazwie
legenda:
Kod PHP:
<html>
<head>
{$headerinclude}
<title>Legenda grup</title>
</head>
<body>
{$header}
<table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder" style="clear: both; border-bottom-width: 0;">
<tr>
<td class="thead" colspan="2">
LEGENDA GRUP
</td>
</tr>
<tr>
<td class="trow2 post_content ">
{$ugl_userlegend}
</td>
</tr>
</table>
{$footer}
</body>
</html>
i teraz w pliku pluginu
inc/plugins/
grouplegend.php
Szukasz:
Kod PHP:
$plugins->add_hook("index_start", "grouplegend_show");
po tym dodajesz:
Kod PHP:
$plugins->add_hook("grupy", "grouplegend_show");
Szablon:
portal_whosonline:
Kod PHP:
<table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder">
<tr>
<td class="thead"><strong>{$lang->online}</strong></td>
</tr>
<tr>
<td class="trow1">
<span class="smalltext">
{$lang->online_users}<br /><strong>»</strong> {$lang->online_counts}<br />{$onlinemembers}
<br />
<a href="{$mybb->settings['bburl']}/legenda.php">Sprawdź co oznaczają rangi</a>
</span>
</td>
</tr>
</table>
<br />
Wstawię jak mam teraz to zrobione.
legenda.php
Kod:
<?php
define('IN_MYBB', 1);
require "./global.php";
$plugins->run_hooks("grupy");
add_breadcrumb("Legenda grup", "legenda.php");
eval("\$podstr = \"".$templates->get("legenda")."\";");
output_page($podstr);
?>
Szablon o nazwie
legenda:
Kod:
</head>
<body>
{$header}
<table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder" style="clear: both; border-bottom-width: 0;">
<tr>
<td class="thead" colspan="2">
LEGENDA GRUP
</td>
</tr>
<tr>
<td class="trow2 post_content ">
{$ugl_userlegend}
</td>
</tr>
</table>
{$footer}
</body>
</html>
inc/plugins/
grouplegend.php
Kod:
// Carligul de legatura cu forumul tau
$plugins->add_hook("index_start", "grouplegend_show");
$plugins->add_hook("grupy", "grouplegend_show");
// Functie pentru intoarcerea informatiilor despre modificare
Szablon:
portal_whosonline:
Kod:
<table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder">
<tr>
<td class="thead"><strong>{$lang->online}</strong></td>
</tr>
<tr>
<td class="trow1">
<span class="smalltext">
{$lang->online_users}<br /><strong>»</strong> {$lang->online_counts}<br />{$onlinemembers}
<br />
<a href="{$mybb->settings['bburl']}/legenda.php">Sprawdź co oznaczają rangi</a>
</span>
</td>
</tr>
</table>
<br />
Wszystko dobrze, ale:
Szablon o nazwie legenda: ...
pousuwaj , najlepiej wstaw podany przeze mnie kod inną przeglądarką, lub wstaw kod do notepad++, potem na stronę.
Szablon legenda wygląda tak:
Kod:
<html>
<head>
{$headerinclude}
<title>Legenda grup</title>
</head>
<body>
{$header}
<table;border="0";cellspacing="{$theme['borderwidth']}";cellpadding="{$theme['tablespace']}";class="tborder";style="clear:both;border-bottom-width: 0;">
<tr>
Ale grup nie widać
http://forum.cabrio-club.pl/legenda.php
Ale to nie jest cały, po za tym jeszcze został znak:
;...
ma wyglądać tak:
Kod PHP:
<html>
<head>
{$headerinclude}
<title>Legenda grup</title>
</head>
<body>
{$header}
<table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder" style="clear: both; border-bottom-width: 0;">
<tr>
<td class="thead" colspan="2">
LEGENDA GRUP
</td>
</tr>
<tr>
<td class="trow2 post_content ">
{$ugl_userlegend}
</td>
</tr>
</table>
{$footer}
</body>
</html>
bez niepotrzebnych znaków.
Jak zwykle pomogłeś.
A jak zrobić żeby każda grupa była jako link i po wejściu w daną grupę pokazywali się użytkownicy którzy się w niej znajdują ?
Tak jak jest tu na forum.