Webboard

Pełna wersja: Losowy cytat
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
wersja skryptu MyBB: 1.8.6
adres forum: streetworkout-ns.pl
na czym polega problem (screen, opis, komunikaty, nazwa i wersja wtyczki):

Szukam pluginu, który będzie wyświetlał na forum losowe, wcześniej zdefiniowane cytaty. Najlepiej jeśli cytat ten pojawiałby się np. pod przyciskami menu, ewentualnie w formie wyskakującego okna podczas wizyty na forum. Szukałem na forum ale na nic nie natrafiłem. Z góry dziękuję za pomoc. Pozdrawiam.
Taki na szybko, ale chyba powinien spełniać Twoje oczekiwania.
Kod PHP:
<?php 
if(!defined('IN_MYBB'))
{
    die(
'Direct initialization of this file is not allowed.');
}
$plugins->add_hook('index_start''cytaty'); //jeśli chcesz, aby wyświetlało globalnie index_start zamień na global_start
function cytaty_info()
{
    return [
        
'name'          => 'Cytaty',
        
'description'   => '',
        
'website'       => '',
        
'author'        => 'Snake_',
        
'authorsite'    => '',
        
'version'       => '1.0',
        
'guid'          => '',
        
'codename'      => '',
        
'compatibility' => '*'
    
];
}


function 
cytaty_activate()
{
    
#jeśli chcesz coś (ustawienie czy coś innego).
}

function 
cytaty_deactivate()
{
    
#j/w
}

function 
cytaty() 
{
    global 
$cytaty;
    
$array_cytaty = [
        
'Najpierw Cię ignorują. Potem śmieją się z Ciebie. Później z Tobą walczą. Później wygrywasz.',
        
'Aby wypełnić ludzkie serce, wystarczy walka prowadząca ku szczytom.',
        
'To ty dajesz moc demonom, które zwalczasz.',
        
'Obawiać się należy nie tych, którzy walczą, lecz tych, co unikają walki.',
        
'Tylko niekiedy szczęście bywa darem, najczęściej trzeba o nie walczyć.'
    
];
    
$cytaty $array_cytaty[array_rand($array_cytaty)];

{$cytaty} do szablonu index.
Dziękuję, jednak nie działa... tzn coś chyba jest z kodem ponieważ po wgraniu pluginu wyskakuje error w linijce nr 9, 36, 37 itd... testowałeś to może? U Ciebie chodziło? nie znam się niestety tak na programowaniu aby to naprawić.
Testowałem, ale zapomniałem dodać, że napisałem to pod wersję PHP 5.4+.
Cóż, to ma śmigać:
Kod PHP:
<?php 
if(!defined('IN_MYBB'))
{
    die(
'Direct initialization of this file is not allowed.');
}
$plugins->add_hook('index_start''cytaty'); //jeśli chcesz, aby wyświetlało globalnie index_start zamień na global_start
function cytaty_info()
{
    return array(
        
'name'          => 'Cytaty',
        
'description'   => '',
        
'website'       => '',
        
'author'        => 'Snake_',
        
'authorsite'    => '',
        
'version'       => '1.0',
        
'guid'          => '',
        
'codename'      => '',
        
'compatibility' => '*'
    
);
}


function 
cytaty_activate()
{
    
#jeśli chcesz coś (ustawienie czy coś innego).
}

function 
cytaty_deactivate()
{
    
#j/w
}

function 
cytaty() 
{
    global 
$cytaty;
    
$array_cytaty = array(
        
'Najpierw Cię ignorują. Potem śmieją się z Ciebie. Później z Tobą walczą. Później wygrywasz.',
        
'Aby wypełnić ludzkie serce, wystarczy walka prowadząca ku szczytom.',
        
'To ty dajesz moc demonom, które zwalczasz.',
        
'Obawiać się należy nie tych, którzy walczą, lecz tych, co unikają walki.',
        
'Tylko niekiedy szczęście bywa darem, najczęściej trzeba o nie walczyć.'
    
);
    
$cytaty $array_cytaty[array_rand($array_cytaty)];

Teraz działa ::) jest możliwość aby {$cytaty} umieścić w innym pliku niż index (?) bo wtedy nie działa, nie ukrywam, że chciałbym aby się to wyświetlało pod przyciskami nawigacji (jak w załączniku). Nie wyświetlają się również polskie znaki.
Napisałem to w komentarz do linii 6 bodajże.
index_start zamień na global_start i wtedy będziesz mógł używać {$cytaty} globalnie, niekoniecznie w szablonie indexu.
(31.10.2015, 10:24)Snake_ napisał(a): [ -> ]Napisałem to w komentarz do linii 6 bodajże.
index_start zamień na global_start i wtedy będziesz mógł używać {$cytaty} globalnie, niekoniecznie w szablonie indexu.

Już rozumiem, wcześniej odebrałem to że po prostu cytaty będą się wyświetlały na każdej stronie. Dziękuję :)