Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.37 veröffentlicht (04.11.23)


Benutzer, die gerade dieses Thema anschauen: 3 Gast/Gäste
Die letzen Beiträge?!
#51
Das ist wirklich merkwürdig. Wenn ein Template nicht gefunden wird, gibt es normalerweise eine Fehlermeldung. Stimmen die Variablen mit den Definitionen in der portal.php überein oder hast du an den Namen etwas geändert?

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#52
Hallo Michael,

ich komme da nicht weiter, hatte die veränderte/n Datei/Templates usw. nochmal neu gemacht, wieder ohne Ergebnis. Aber das "Script" von Modercol [https://www.mybb.de/forum/thread-5343-page-1.html] funktioniert. Nur leider ist dort kein Link, daß es zum letzten (dem neuen) Beitrag eines Threads springt, sondern es geht zum Anfang.

Ist das leichter zu verändern oder ist das das, was Jan´s Script machen sollte? Ich weiß ja gar nicht, wie die Übersicht genau ausschaut. : - D

Ansonsten belasse ich es erstmal so und beschäftige mich später nochmal damit.

Dank an Dich dennoch. : )
Zitieren
#53
Hallo ...

ich bin es wieder - in gleicher Sache. Blush

Ich habe es nochmal neu gemacht, aber bekomme es nicht hin. Im Quelltext werden auch diese "latestthreadssub" bzw. "latestthreadssub_thread" - Templates nicht erwähnt.

Zitat:Stimmen die Variablen mit den Definitionen in der portal.php überein oder hast du an den Namen etwas geändert?

An den Namen/Bezeichnungen habe ich nichts verändert, außer, daß das ich den Pfad "www..../mybb/forum" in "www..../mybb/Forum" "veränderte" aber vor dem Hochladen umgeändert habe. Wäre das einzige, was mir dazu einfiel, hat vermutlich nichts damit zu tun.

Ich denke , daß es irgendwas mit der Änderung in der portal.php zu tun hat.

Kenne mich ja nicht aus, aber hatte probeweiser mal in die Auflistung der Templates im portal.php ...
PHP-Code:
$templatelist "portal_welcome,portal_welcome_membertext,portal_stats,portal_search,portal_whosonline_memberbit,portal_whosonline,portal_latestthreads_thread_lastpost,portal_latestthreads_thread,portal_latestthreads,portal_latestthreadssub,portal_latestthreadssub_thread,portal_announcement_numcomments_no,portal_announcement,portal_announcement_numcomments,portal"

... die zwei neuen Templates ("latestthreadssub" und "latestthreadssub_thread") mit angegeben - auch ohne Wirkung. Dachte nur, so rein logisch, müßten sie vielleicht mit aufgeführt werden.

Oder muß ich irgendwas im den Portaleinstellungen verändern (da ist "Letzte Beiträge" anzeigen aktiviert), an allgemeinen Einstellungen?
Verwende Mybb-Version: 1.4.11
Zitieren
#54
Also ich wollte doch nochmal nach haken: Ist es möglich diesen kleinen grünen Pfeil der vor jedem neuen Beitrag im Forum angezeigt wird, auch vor einem Thema in der Portal.php angezeigt zu bekommen ? Das wäre einfach viel übersichtlicher !

Hoffe jemand kann mir da unter die Arme greifen, das würde das ganze echt perfektionieren Smile.

Gruß
RF
Hab jetzt mal in der forumdisplay.php geguckt, habe die abfrage auch gefunden aber natürlich geht das nicht weil man ja irgendwas auslesen muss ... So und da hört mein wissen auf lol... folgendes hab ich gefunden:
PHP-Code:
if($mybb->settings['threadreadcut'] > && $mybb->user['uid'] && $thread['lastpost'] > $forum_read)
                {
                        if(
$thread['lastread'])
                        {
                                
$last_read $thread['lastread'];
                        }
                        else
                        {
                                
$last_read $read_cutoff;
                        }
                }
                else
                {
                        
$last_read my_get_array_cookie("threadread"$thread['tid']);
                }

                if(
$forum_read $last_read)
                {
                        
$last_read $forum_read;
                }

                if(
$thread['lastpost'] > $last_read && $moved[0] != "moved")
                {
                        
$folder .= "new";
                        
$folder_label .= $lang->icon_new;
                        
$new_class "subject_new";
                        
$thread['newpostlink'] = get_thread_link($thread['tid'], 0"newpost");
                        eval(
"\$gotounread = \"".$templates->get("forumdisplay_thread_gotounread")."\";");
                        
$unreadpost 1;
                }
                else
                {
                        
$folder_label .= $lang->icon_no_new;
                        
$new_class "";
                } 

Aber es muss doch irgendwie möglich sein ! Im prinzip muss das doch irgendwie auch in der forumdisplay.php abgefragt werden. Der liest das doch auch nur aus der Datenbank aus oder ?
So nun hab ich es auch soweit das dieser grüne Pfeil auf den neusten Post verlinkt, trotzdem ist er noch konstant da Sad...

auszug aus der portal.php:
PHP-Code:
// Latest forum discussions
if($mybb->settings['portal_showdiscussions'] != && $mybb->settings['portal_showdiscussionsnum'])
{
        
$altbg alt_trow();
        
$threadlist '';
        
$gotounread '';
        
$query $db->query("
                SELECT t.*, u.username
                FROM "
.TABLE_PREFIX."threads t
                LEFT JOIN "
.TABLE_PREFIX."users u ON (u.uid=t.uid)
                WHERE 1=1 
$unviewwhere AND t.visible='1' AND t.closed NOT LIKE 'moved|%'
                ORDER BY t.lastpost DESC
                LIMIT 0, "
.$mybb->settings['portal_showdiscussionsnum']
        );
        while(
$thread $db->fetch_array($query))
        {
                
$lastpostdate my_date($mybb->settings['dateformat'], $thread['lastpost']);
                
$lastposttime my_date($mybb->settings['timeformat'], $thread['lastpost']);
                
// Don't link to guest's profiles (they have no profile).
                
if($thread['lastposteruid'] == 0)
                {
                        
$lastposterlink $thread['lastposter'];
                }
                else
                {
                        
$lastposterlink build_profile_link($thread['lastposter'], $thread['lastposteruid']);
                }
                if(
my_strlen($thread['subject']) > 40)
                {
                        
$thread['subject'] = my_substr($thread['subject'], 040) . "...";
                }
                
$thread['subject'] = htmlspecialchars_uni($parser->parse_badwords($thread['subject']));
                
$thread['threadlink'] = get_thread_link($thread['tid']);
                if(!
is_array($forum_cache))
{
    
cache_forums();
}

if(
$thread['lastpost'] > $last_read && $moved[0] != "moved")
                {
                        
$folder .= "new";
                        
$folder_label .= $lang->icon_new;
                        
$new_class "subject_new";
                        
$unreadpost 1;
                        
$thread['newpostlink'] = get_thread_link($thread['tid'], 0"newpost");
                        eval(
"\$gotounread = \"".$templates->get("portal_latestthreads_thread")."\";");
                         }
                else
                {
                        
$folder_label .= $lang->icon_no_new;
                        
$new_class "";
                }
$latestthreads['forum'] = htmlspecialchars_uni($forum_cache[$thread['fid']]['name']);
$threadstarter build_profile_link($thread['username'], $thread['uid']);
                eval(
"\$threadlist .= \"".$templates->get("portal_latestthreads_thread")."\";");
                
$altbg alt_trow();
        }
        if(
$threadlist)
        {

                
// Show the table only if there are threads
                
eval("\$latestthreads = \"".$templates->get("portal_latestthreads")."\";");
        }

   } 
Zitieren
#55
Schau dir mal den Code vom Benutzer-CP an. Dort wird das bei der Liste für abonnierten Themen gemacht. Mit dem Code aus der forumdisplay.php kannst du nichts anfangen.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#56
Hallo Stephan, habe in der Usercp.php geguckt und folgenden Code gefunden und in der portal.php eingefügt:
PHP-Code:
$gotounread '';
                        
$isnew 0;
                        
$donenew 0;
                        
$lastread 0;

                        if(
$mybb->settings['threadreadcut'] > && $mybb->user['uid'])
                        {
                                
$forum_read $readforums[$thread['fid']];

                                
$read_cutoff TIME_NOW-$mybb->settings['threadreadcut']*60*60*24;
                                if(
$forum_read == || $forum_read $read_cutoff)
                                {
                                        
$forum_read $read_cutoff;
                                }
                        }
                        else
                        {
                                
$forum_read $forumsread[$thread['fid']];
                        }

                        if(
$mybb->settings['threadreadcut'] > && $thread['lastpost'] > $forum_read)
                        {
                                
$cutoff TIME_NOW-$mybb->settings['threadreadcut']*60*60*24;
                        }

                        if(
$thread['lastpost'] > $cutoff)
                        {
                                if(
$thread['lastpost'] > $cutoff)
                                {
                                        if(
$thread['lastread'])
                                        {
                                                
$lastread $thread['lastread'];
                                        }
                                        else
                                        {
                                                
$lastread 1;
                                        }
                                }
                        }

                        if(!
$lastread)
                        {
                                
$readcookie $threadread my_get_array_cookie("threadread"$thread['tid']);
                                if(
$readcookie $forum_read)
                                {
                                        
$lastread $readcookie;
                                }
                                else
                                {
                                        
$lastread $forum_read;
                                }
                        }

                        if(
$thread['lastpost'] > $lastread && $lastread)
                        {
                                
$folder .= "new";
                                
$folder_label .= $lang->icon_new;
                                
$new_class "subject_new";
                                
$thread['newpostlink'] = get_thread_link($thread['tid'], 0"newpost");
                                eval(
"\$gotounread = \"".$templates->get("portal_latestthreads_thread")."\";");
                                
$unreadpost 1;
                        }
                        else
                        {
                                
$folder_label .= $lang->icon_no_new;
                                
$new_class "";
                        } 

Leider keine änderung der Pfeil ist immer noch konstant da Sad
Also ich raff es echt nicht irgendwas fehlt da noch ! Ich habe jetzt auch n eigenes Template gemacht "portal_gotounread" dort habe ich diesen link rein gesetzt:
PHP-Code:
<a href="{$thread['newpostlink']}"><img src="{$theme['imgdir']}/jump.gif" alt="{$lang->goto_first_unread}title="{$lang->goto_first_unread}/></a

So dann habe ich {$gotounread} in der portal_latestthread_thread eingefügt vor dem Thema. Der Pfeil verlinkt auch auf das letzte Thema aber er verschwindet einfach nicht ! Ich verzweifel gerade -.-.

Hier mal der teil der Portal.php wo er die Threads ausliest, dort habe ich auch den Codeschnipsel von der Usercp.php eingefügt:
PHP-Code:
// Latest forum discussions
if($mybb->settings['portal_showdiscussions'] != && $mybb->settings['portal_showdiscussionsnum'])
{
        
$altbg alt_trow();
        
$threadlist '';
        
$gotounread '';
        
$isnew 0;
        
$donenew 0;
        
$lastread 0;
        
$query $db->query("
                SELECT t.*, u.username
                FROM "
.TABLE_PREFIX."threads t
                LEFT JOIN "
.TABLE_PREFIX."users u ON (u.uid=t.uid)
                WHERE 1=1 
$unviewwhere AND t.visible='1' AND t.closed NOT LIKE 'moved|%'
                ORDER BY t.lastpost DESC
                LIMIT 0, "
.$mybb->settings['portal_showdiscussionsnum']
        );
        while(
$thread $db->fetch_array($query))
        {
                
$lastpostdate my_date($mybb->settings['dateformat'], $thread['lastpost']);
                
$lastposttime my_date($mybb->settings['timeformat'], $thread['lastpost']);
                
// Don't link to guest's profiles (they have no profile).
                
if($thread['lastposteruid'] == 0)
                {
                        
$lastposterlink $thread['lastposter'];
                }
                else
                {
                        
$lastposterlink build_profile_link($thread['lastposter'], $thread['lastposteruid']);
                }
                if(
my_strlen($thread['subject']) > 40)
                {
                        
$thread['subject'] = my_substr($thread['subject'], 040) . "...";
                }
                
$thread['subject'] = htmlspecialchars_uni($parser->parse_badwords($thread['subject']));
                
$thread['threadlink'] = get_thread_link($thread['tid']);
                if(!
is_array($forum_cache))
{
    
cache_forums();
}

 
//Start

                        
if($mybb->settings['threadreadcut'] > && $mybb->user['uid'])
                        {
                                
$forum_read $readforums[$thread['fid']];

                                
$read_cutoff TIME_NOW-$mybb->settings['threadreadcut']*60*60*24;
                                if(
$forum_read == || $forum_read $read_cutoff)
                                {
                                        
$forum_read $read_cutoff;
                                }
                        }
                        else
                        {
                                
$forum_read $forumsread[$thread['fid']];
                        }

                        if(
$mybb->settings['threadreadcut'] > && $thread['lastpost'] > $forum_read)
                        {
                                
$cutoff TIME_NOW-$mybb->settings['threadreadcut']*60*60*24;
                        }

                        if(
$thread['lastpost'] > $cutoff)
                        {
                                if(
$thread['lastpost'] > $cutoff)
                                {
                                        if(
$thread['lastread'])
                                        {
                                                
$lastread $thread['lastread'];
                                        }
                                        else
                                        {
                                                
$lastread 1;
                                        }
                                }
                        }

                        if(!
$lastread)
                        {
                                
$readcookie $threadread my_get_array_cookie("threadread"$thread['tid']);
                                if(
$readcookie $forum_read)
                                {
                                        
$lastread $readcookie;
                                }
                                else
                                {
                                        
$lastread $forum_read;
                                }
                        }

                        if(
$thread['lastpost'] > $lastread && $lastread)
                        {
                                
$folder .= "new";
                                
$folder_label .= $lang->icon_new;
                                
$new_class "subject_new";
                                
$thread['newpostlink'] = get_thread_link($thread['tid'], 0"newpost");
                                eval(
"\$gotounread = \"".$templates->get("portal_gotounread")."\";");
                                
$unreadpost 1;
                        }
                        else
                        {
                                
$folder_label .= $lang->icon_no_new;
                                
$new_class "";
                        }

$latestthreads['forum'] = htmlspecialchars_uni($forum_cache[$thread['fid']]['name']);
$threadstarter build_profile_link($thread['username'], $thread['uid']);
                eval(
"\$threadlist .= \"".$templates->get("portal_latestthreads_thread")."\";");
                
$altbg alt_trow();

        }
        if(
$threadlist)
        {

                
// Show the table only if there are threads
                
eval("\$latestthreads = \"".$templates->get("portal_latestthreads")."\";");
        }

   } 
Zitieren
#57
Moin, hat keiner eine Lösung ? Ich bin echt am ende mit meinen Nerven Sad

Gruß
RF
Zitieren
#58
Hallo,
jetzt ist es mir bis hierhin gelungen, aus diesem Thread wichtige Änderungen herauszunehmen.
Worum geht es.
http://diehoerbar.net/hbcomm/portal.php
In der zweiten Box der "letzten Beitrage" wird der Name des Forums nicht angezeigt.
Das Template sieht genaus so aus wie das der ersten Box - sollte da aber vielleicht etwas anderes angegeben werden?

Code template portal_latestthreads_thread:
PHP-Code:
<tr>

<
td  class="trow1" align="left">
<
span class="smalltext"><strong><a href="{$mybb->settings['bburl']}/showthread.php?tid={$thread['tid']}">{$thread['subject']}</a></strong></span><br />
<
span class="antw">Starter:&nbsp;{$thread['username']}</span>
</
td>
<
td class="trow2" align="left">
<
span class="smalltext"><a href="{$mybb->settings['bburl']}/forumdisplay.php?fid={$thread['fid']}">{$latestthreads['forum']}</a>
</
span></td>
<
td class="antw"><span class="smalltext">{$thread['replies']}</span></td>
<
td class="trow1"align="left"><span class="smalltext">{$thread['views']}</span></td>

<
td class="trow2"align="left"><span class="smalltext">{$lastpostdate} {$lastposttime}</span>
<
div align="right" style=" float:right;">
<
span class="smalltext"><a href="{$mybb->settings['bburl']}/showthread.php?tid={$thread['tid']}&action=lastpost"><img src="http://diehoerbar.net/forum/images/pfeilrot.gif" border="0" alt="pfeil" /></a></span
</
div><br />
<
span class="smalltext">von {$lastposterlink}</span>
</
td>
</
tr

Vielleicht weiß jemand von Euch einen Rat.
LG
hoerbartina
Zitieren
#59
Keiner eine Idee oder einen Tipp? :-)
Zitieren
#60
Welche Beiträge hast Du denn genau verwendet, um das umzusetzen?
viele Grüße
Jockl
übersetzte und eigene Plugins
Zitieren