Webboard

Pełna wersja: Link do działu w newsie na portalu.
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
wersja skryptu MyBB: 1.6.9
adres forum: FerryCraft!
na czym polega problem (screen, opis, komunikaty, nazwa stylu/theme/szablonu): Witam. Od razu mówię że nie miałem kompletnego pojęcia gdzie to napisać, ani jaki tytuł dać :P Ale do rzeczy, jak dodać link do działu w jakim postowano dany news? Chodzi mi o taki coś jak Wy macie na portalu: https://webboard.pl/ ze piszę np.:
Cytat:Napisał Łukasz Tkacz w kategorii Ze świata MyBB — 19 maja 2013 o 20:28
Upodobniam trochę swój portal pod wordpress`a albo joomla, ale nie chcę używać tych skryptów tylko samo MyBB :)
Jako, że jest to Wordpress, to nie da rady uzyskać czegoś takiego w identyczny sposób. Jednak można np. dodać autora, godzinę napisania itp. Coś takiego może być? Bo mogę coś wykombinować.

Chociaż z dwojga złego to wszystko jest, tylko trzeba by było ładnie to uporządkować. A jeśli chodzi o działy, to wystarczyłoby zmienną dodać.
Próbowałem wszystkiego lecz nic nie wychodzi.. :<
(6dni)
portal.php, zapytanie w liniach 441-447 zmień na takie (dołączone pobieranie nazwy forum w którym napisano temat):
Kod:
            SELECT t.*, t.username AS threadusername, u.username, u.avatar, u.avatardimensions, f.name
            FROM ".TABLE_PREFIX."threads t
            LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid = t.uid)
            LEFT JOIN ".TABLE_PREFIX."forums f ON (f.fid = t.fid)
            WHERE t.fid IN (".$announcementsfids.") AND t.tid IN (0{$tids}) AND t.visible='1' AND t.closed NOT LIKE 'moved|%'
            ORDER BY t.dateline DESC
            LIMIT 0, {$numannouncements}"

W pętli, po linii 455 dodaj:
Kod PHP:
            $forumname $announcement['name']; 

Edytuj szablon portal_announcement - dodaj gdzie chcesz zmienną {$forumname}, która wyświetli nazwę działu.
Devilshakerz napisał(a): SELECT t.*, t.username AS threadusername, u.username, u.avatar, u.avatardimensions, f.name
            FROM ".TABLE_PREFIX."threads t
            LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid = t.uid)
            LEFT JOIN ".TABLE_PREFIX."forums f ON (f.fid = t.fid)
            WHERE t.fid IN (".$announcementsfids.") AND t.tid IN (0{$tids}) AND t.visible='1' AND t.closed NOT LIKE 'moved|%'
            ORDER BY t.dateline DESC
            LIMIT 0, {$numannouncements}"
Czy to mam wklepać czy dodać dodatkowe zapytanie czy coś?? Nie kumam :P jeśli nowe zapytanie to podaj je proszę :)


Ps. portal.php linie 441-477:
Kod:
// Make sure we can view this announcement
    if($forumpermissions[$announcement['fid']]['canview'] == 0 || $forumpermissions[$announcement['fid']]['canviewthreads'] == 0 || $forumpermissions[$announcement['fid']]['canonlyviewownthreads'] == 1 && $announcement['uid'] != $mybb->user['uid'])
    {
        continue;
    }

    $announcement['message'] = $posts[$announcement['tid']]['message'];
    $announcement['pid'] = $posts[$announcement['tid']]['pid'];
    $announcement['smilieoff'] = $posts[$announcement['tid']]['smilieoff'];
    $announcement['threadlink'] = get_thread_link($announcement['tid']);
    
    if($announcement['uid'] == 0)
    {
        $profilelink = htmlspecialchars_uni($announcement['threadusername']);
    }
    else
    {
        $profilelink = build_profile_link($announcement['username'], $announcement['uid']);
    }
    
    if(!$announcement['username'])
    {
        $announcement['username'] = $announcement['threadusername'];
    }
    $announcement['subject'] = htmlspecialchars_uni($parser->parse_badwords($announcement['subject']));
    if($announcement['icon'] > 0 && $icon_cache[$announcement['icon']])
    {
        $icon = $icon_cache[$announcement['icon']];
        $icon = "<img src=\"{$icon['path']}\" alt=\"{$icon['name']}\" />";
    }
    else
    {
        $icon = "&nbsp;";
    }
    if($announcement['avatar'] != '')
    {
        $avatar_dimensions = explode("|", $announcement['avatardimensions']);

To zapytanie co podałeś jest w linii 431 :P
Zamienić to w podanych liniach na nowe.
W razie wątpliwości załączam zmodyfikowany plik ;)
Ok śmiga. A da się jeszcze jakoś to dać jako link do działu? Bo na razie to jest tylko tekst zwykły.
A, nie zauważyłem. Poprawka - do oryginalnego portal.php dodaj po linii 454:
Kod PHP:
            $foruminfo get_forum($announcement['fid']);
            
$forumname '<a href="'.get_forum_link($foruminfo['fid']).'">'.$foruminfo['name'].'</a>'