Tworzenie własnej strony współpracującej z MyBB

Założony przez  patryk.

Sprawa nadzwyczaj prosta
Weżmy na przykład stronę do wyświetlania linków twoich przyjaciół

Tworzysz następujący plik php:
<?php

define
("IN_MYBB"1);

$templatelist "links,links_link";

require_once 
"./global.php";
require_once 
"./inc/init.php";

$pageTitle "Links";

 
add_breadcrumb("Links"); // this is a forum navigation: Forum / Links
                          // you can change word links to any other name

$linkList "";

$www = array(
  
"http://gamers100.freenukehosting.com/forums/index.php" => "Gamers Community",
  
"http://freescripts.engpol-community.org/" => "Free Scripts Community"
  
);

foreach (
$www as $link => $title) {
    eval(
"\$linkList .= \"".$templates->get("links_link")."\";");
}

$out "<html><head>";
eval(
"\$out .= \"".$templates->get("links")."\";");
$out .= "</body></html>";

output_page($out);

?>

Tworzysz następnie templates, ale zanim to zrobiy, musisz wiedzieć, że przed zapisanim ich, musisz ustawić "Template Set" na Global.

Template "links" zawierający szablon sałej strony
<title>{$mybb->settings['bbname']} - {$pageTitle}</title>
{
$headerinclude}

</
head><body>
{
$header}

  {
$linkList}

{
$footer
oraz template link_link, zawiera szablon tworzenia pojedyńczego linku, np
<a href="{$link}">{$title}</a

można też dodać autentykację usera - czy zalogowany:
poniżej require_once dodaj
$userID $mybb->user['uid'];
if(
$userID == 0)
{
    
error_no_permission();


Mam nadzieję, że się przykład przyda :)
Jeżeli chodzi o integrację strony z forum to też chciałbym coś dodać od siebie!

Wyszukiwarka na stronie
Wklejamy to w miejscu gdzie chcemy mieć wyszukiwarkę.

<form method="post" action="http://forum.xn--dowcipni-tvb.pl/search.php">
<input type="hidden" name="action" value="do_search" />
<input type="hidden" name="postthread" value="1" />
<input type="hidden" name="forums" value="all" />
<input type="hidden" name="showresults" value="threads" />
<input type="text" class="textbox" name="keywords" value="" />
<!-- start: gobutton -->
<input type="submit" class="button" value="Szukaj" />
<!-- end: gobutton -->
</form>

Panel logowania na stronę (szybkie logowanie)

Poniższy kod wklejamy w miejscu gdzie chcemy mieć panel logowania

<form action="forum/member.php" method="post">
    <input type="hidden" name="action" value="do_login" />
    <span class="smalltext"><strong>Logowanie:</strong></span>
    <input type="text" class="textbox" name="username" title="Username" value="Nazwa uzytkownika" onfocus="if(this.value == 'Username') { this.value=''; }" onblur="if(this.value=='') { this.value='Username'; }" />
    <input type="password" class="textbox" name="password" title="Haslo" value="Password" onfocus="if(this.value == 'Password') { this.value=''; }" onblur="if(this.value=='') { this.value='Password'; }" />

    <input type="submit" class="button" value="Zaloguj" />
</form>

Ilość postów, użytkowników, tematów na stronie

Na podstawie tego tutka : Statystyki Forum w sygnaturce

Tworzymy plik o nazwie np staty.php

Wklejamy do niego poniższy kod:

<?php
// dane konfiguracyjne i połączenie z bazą danych
$host = 'localhost'; //adres bazy danych
$user =  'root'; //nazwa użytkownika
$pass = 'haslo'; //hasło do bazy danych
$db = 'nazwa'; //nazwa bazy danych
$connect = mysql_connect($host, $user, $pass);
mysql_select_db($db);

// pobieranie poszczególnych danych z bazy
$zarejestrowanych = mysql_num_rows(mysql_query("SELECT * FROM mybb_users"));
$ostatnia_rejestracja = mysql_fetch_array(mysql_query("SELECT * FROM mybb_users ORDER BY uid DESC LIMIT 1"));
$ilosc_tematow = mysql_num_rows(mysql_query("SELECT * FROM mybb_threads"));
$ilosc_postow = mysql_num_rows(mysql_query("SELECT * FROM mybb_posts"));
?>

Następnie w miejscu gdzie mają wyświetlać się pliki wklejamy kod

<?php
require_once "staty.php"; //to nazwa pliku który utworzyliśmy wyżej
echo 'Zarejestrowanych: '.$zarejestrowanych;
echo '<br />';
echo 'Tematów: '.$ilosc_tematow;
echo '<br />';
echo 'Postów: '.$ilosc_postow;
echo '<br />';
?>


Mam nadzieję że przyda się ten tutorial szczególnie początkującym użytkownikom.
Pozdrawiam



Użytkownicy przeglądający ten wątek:

1 gości