Webboard

Pełna wersja: Funkcje w MyBB
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Witam to mój pierwszy post na forum ale nie będe się jakoś szczegółowo opisywał zrobię to gdzieś indziej , przechodząc do mojego pytania otóż to od początku mojej zabawy z mybb używałem głównej strony do pomocy teraz po 2 miesiącach pragnę robić pluginy do mybb i poczytałem parę poradników , kursów z CSS , Javascript , PHP i mysql i oczywiście HTML teraz chcę zrobić plugin typu Hello World użyje funkcij echo do wyświetlania tekstu ale nie mam bladego pojęcia co dalej jakie są funkcje? Chodzi mi o np wyświetlenie tekstu i dodanie zakładki w której administror będzie mógł konfigurować plugin i wpisać dowolny tekst i jak pobrać ten tekst do zmiennej? Za pomoc z góry dziękuje i oczywiście dam pomógł.
Do tabeli mybb_settinggroups musisz dodac kategorię a nastepnie znajac gid dodac ustawienie do mybb_settings.

Wtedy w ustawieniach w ACP pokaze Ci sie nowa kategoria z Twoim ustawieniem i bedziesz mial do niego dostep z poziomu zmiennej $mybb->settings['NAZWA_OPCJI'];
A jakich funkcij użyć do zwykłego tekstu? A do pola tekstowego? Jak pobrać z pola tekstowego dane do zmiennej?
Widzisz czyli jednak nie masz podstaw.

Pobierz ze cztery proste pluginy i prześledź kod.

Musisz w funkcji odpowiadajacej za instalowanie/aktywowanie zglobalizowac klasę $db i dzięki niej dodać do bazy rekord grupy ustaiwen i ustawienia. Nie ma funkcji odpowiadajacej za dodawanie ustaweinia, tu musisz sam wbic je do bazy. Musisz przesledzic cale te dwie tabele o ktorych Ci wspominalem i poznac jakie wartosci moga przyjmowac poszczegolne kolumny.

Po dodaniu rekordu zaleznie od tego jaki name mu nadales masz do niego dostep z calego mybb poprzez $mybb->settings['NAME'];. Oczywiscie w funkcjach w pluginie najpierw musisz zglobalizować $mybb.

Nie rozumiesz o czym mowie? To juz naprawdę było najprostszym językiem. Poczytaj kod innych programistów. Najlepiej najprostszych pluginów.
Teraz coś rozumiem prześledze jakieś proste pluginy i tabele o której wspomniałeś ;) Pomógł za pomoc i wielkie dzięki
No i jak coś to pytaj. Oby konkretnie :P.
Ok nowy problem , zacząłem pisać sobie plugin i doszedłem do funkcji tzn zrobiłem ustawienia ale nie wiem co dalej czyli co muszę zrobić żeby jak wybierze się w opcji że skrypt ma wyłączony żeby był wyłączony i nie wiem czy dobrze pobrałem tekst jaki może zostać wpisany przez administratora do zmiennej o to mój plugin:
Kod:
<?php
if(!defined("IN_MYBB"))
{
    die("Direct initialization of this file is not allowed.<br /><br />Please make sure IN_MYBB is defined.");
}

define('MOD_NAME', 'Hello Forum!');
define('MOD_DESCRIPTION', 'Message');
define('MOD_VER', '1.0');
define('WEBSITE_MYBB', 'http://www.mybb.com');
define('MOD_AUTHOR', 'Twardy');
define('MOD_COMP', '1.6.8/2.0.0');
$MessageSystem = " "

function HelloForum_info()
    {

    return array(
        "name"            => MOD_NAME,
        "description"   => MOD_DESCRIPTION,
        "website"        => WEBSITE_MYBB,
        "author"        => MOD_AUTHOR,
        "authorsite"    => WEBSITE_MYBB,
        "version"        => MOD_VER,
        "guid"             => "",
        "compatibility"    => MOD_COMP
        );
    }
    
function HelloForum_is_installed()
    {
     global $db
     echo $MessageSystem
    }
    
function HelloForum_install()
{
    global $db;
    
    
    $settinggroup = array(
        "name" =>            MOD_NAME,
        "title" =>            MOD_NAME,
        "description" =>    MOD_DESCRIPTION,
    );
    $db->insert_query("settinggroups", $settinggroup);
    $gid = intval($db->insert_id());
    
    
    $setting[] = array(
        "name"            => "Hello_Forum_Enable",
        "title"            => "Hello Forum enable?",
        "optionscode"    => "yesno",
        "value"            => 1,
    );
    $setting[] = array(
        "name"            => "Hello_Forum_Message",
        "title"            => "Enter Message to forum",
        "optionscode"    => "text",<=$MessageSystem);
        "value"            => 50,
?>
Oczywiście dam drugi raz "pomógł" tym razem jakoś inne pluginy mi nic nie mówią.