So einfach ist das leider nicht, unmöglich aber auch nicht. Es sind ein paar Änderungen in diversen Dateien nötig.
Fangen wir mit der viewforum.php an:
Zunächst suche nach
Davor müssen 2 Variablen gesetzt werden:
Code: Alles auswählen
if( $topic_type == POST_ANNOUNCE )
{
$topic_type = $lang['Topic_Announcement'] . ' ';
}
Ersetze dieses durch
Code: Alles auswählen
if( $topic_type == POST_ANNOUNCE )
{
$topic_type = $lang['Topic_Announcement'] . ' ';
$type_has_changed = $type_of_row == POST_ANNOUNCE ? FALSE : TRUE;
$type_of_row = POST_ANNOUNCE;
}
Analog mit dieser Stelle:
Code: Alles auswählen
else if( $topic_type == POST_STICKY )
{
$topic_type = $lang['Topic_Sticky'] . ' ';
}
=>
Code: Alles auswählen
else if( $topic_type == POST_STICKY )
{
$topic_type = $lang['Topic_Sticky'] . ' ';
$type_of_row = POST_STICKY;
$type_has_changed = $type_of_row == POST_STICKY ? FALSE : TRUE;
}
Und ebenso die direkt darauf folgende
Code: Alles auswählen
else
{
$topic_type = '';
$type_of_row = 0;
$type_has_changed = $type_of_row == 0 ? FALSE : TRUE;
}
(Datei ist noch nicht fertig, aber ich mache das in nachvollziehbarer Reihenfolge)
Jetzt wissen wir schon mal was es ist, denn im Original wird diese Variable ja leider überschrieben mit dem Text des Themas, außerdem wissen wir ob es einen Wechsel gegeben hat (also ein anderer Typ als Vorher ausgegeben werden soll). Dies reicht aus, da die Themen ja sortiert aus der DB kommen. Bei jedem Wechsel können wir dann die Dummyzeile "einschieben". Gerade dieses Einschieben ist allerdings noch nicht vorgesehen, daher sind an dem Template für die Forenausgabe einige Änderungen nötig:
öffne die viewforum_body.tpl (Achtung ich habe keinen großen Wert auf eine "hübsche Darstellung" gelegt, wenn dir die eingefügte Zeile nicht passt musst du sie anpassen)
Suche nach
Direkt danach musst du einfügen
Code: Alles auswählen
<!-- BEGIN topic_subheader -->
<tr>
<td colspan="6" class="catHead" align="center"><span class="cattitle">{topic_row.topic_subheader.DESCRIPTION}</span></td>
</tr>
<!-- END topic_subheader -->
Das ist später die zusätzliche Zeile in der Forumdarstellung.
Diese muss allerdings noch mit Text gefüllt werden.
Also wieder zurück zur viewforum.php:
nach dieser Stelle
Code: Alles auswählen
$template->assign_block_vars('topicrow', array(
'ROW_COLOR' => $row_color,
'ROW_CLASS' => $row_class,
'FORUM_ID' => $forum_id,
'TOPIC_ID' => $topic_id,
'TOPIC_FOLDER_IMG' => $folder_image,
'TOPIC_AUTHOR' => $topic_author,
'GOTO_PAGE' => $goto_page,
'REPLIES' => $replies,
'NEWEST_POST_IMG' => $newest_post_img,
'TOPIC_TITLE' => $topic_title,
'TOPIC_TYPE' => $topic_type,
'VIEWS' => $views,
'FIRST_POST_TIME' => $first_post_time,
'LAST_POST_TIME' => $last_post_time,
'LAST_POST_AUTHOR' => $last_post_author,
'LAST_POST_IMG' => $last_post_url,
'L_TOPIC_FOLDER_ALT' => $folder_alt,
'U_VIEW_TOPIC' => $view_topic_url)
);
muss ein neuer Codeblock hinein:
Code: Alles auswählen
if($type_has_changed && $type_of_row == POST_ANNOUNCE)
{
$template->assign_block_vars('topicrow.topic_subheader',array('DESCRIPTION'=>preg_replace("#(<b>|</b>|:)#is",'',$lang['Topic_Announcement'])));
}
elseif($type_has_changed && $type_of_row == POST_STICKY)
{
$template->assign_block_vars('topicrow.topic_subheader',array('DESCRIPTION'=>preg_replace("#(<b>|</b>|:|!)#is",'',$lang['Topic_Sticky'])));
}
elseif($type_has_changed)
{
$template->assign_block_vars('topicrow.topic_subheader',array('DESCRIPTION'=>$lang['Topics']));
}
Falls die Überschriften um eine Position verrutscht sein sollten versuche mal stattdessen das ganze oberhalb des codeblocks einzufügen, vielleicht habe ich mich mit der Reihenfolge vertan.
Sollten sich in einem Forum nur normale Themen befinden gibt es auch keine Überschrift. Nur Themen eines anderen Typs werden nicht erkannt, ich denke aber das ist nicht tragisch.
Alternativ zu den preg_replace Befehlen (sollen nur die "Announcement" und "Sticky" Schriftzüge von den HTML Formatierungen und Doppelpunkten befreien) könntest du auch einfach $lang Variablen mit entsprechendem Inhalt anlegen.
Naja, so viele Dateien waren das jetzt doch nicht wie ich dachte.
Wichtig: Alle Dateien vor der Änderung sichern! Ich habe das nicht getestet und übernehme keine Garantie!