Forenübersicht anpassen - aber wie genau?
Verfasst: 18.08.2009 12:06
Hallo,
ich habe vor bei meinem Forum die Forenübersicht etwas anzupassen.
Genauer gesagt will ich den Subforen einer bestimmten Kategorie eine weitere CSS Klasse mitgeben.
Das tut auch schon soweit alles. Allerdings musste ich dafür einiges in der forum_display Funktion anpassen. Unteranderen sind in das forumrow Array weitere Dinge mit reingelaufen (Parent_ID, gefilterte Forenname (wegen Umlauten) und ob das Forum gelesen wurde oder nicht (den True/False Wert)). Allerdings gefällt mir die Idee direkt an den internen phpBB Funktionen rumzuschrauben nicht wirklich.
Gibt es da andere Tricks und Kniffe wie ich das trotzdem hinbekomme?
Hier mal die beiden Codestellen die ich angepasst habe:
forumlist_body.html
functions_display.php / Funktion display_forums (ab Zeile 423)
(Ich hab mal hinter die hinzugefügten Stellen ein #!!!!!! gemacht ^^)
Ich finde das irgendwie nicht gut so. Allerdings weiss ich auch nicht wie man es besser macht in phpBB ^^ Bitte helft mir dabei ^^
Gruß
Saij
ich habe vor bei meinem Forum die Forenübersicht etwas anzupassen.
Genauer gesagt will ich den Subforen einer bestimmten Kategorie eine weitere CSS Klasse mitgeben.
Das tut auch schon soweit alles. Allerdings musste ich dafür einiges in der forum_display Funktion anpassen. Unteranderen sind in das forumrow Array weitere Dinge mit reingelaufen (Parent_ID, gefilterte Forenname (wegen Umlauten) und ob das Forum gelesen wurde oder nicht (den True/False Wert)). Allerdings gefällt mir die Idee direkt an den internen phpBB Funktionen rumzuschrauben nicht wirklich.
Gibt es da andere Tricks und Kniffe wie ich das trotzdem hinbekomme?
Hier mal die beiden Codestellen die ich angepasst habe:
forumlist_body.html
Code: Alles auswählen
<!-- IF forumrow.PARENT_ID == 13 -->
<!-- IF forumrow.IG_UNREAD -->
<li class="row klasse_{forumrow.IG_CLASS_NAME}_unread">
<!-- ELSE -->
<li class="row klasse_{forumrow.IG_CLASS_NAME}">
<!-- ENDIF -->
<!-- ELSE -->
<li class="row">
<!-- ENDIF -->
Code: Alles auswählen
$template->assign_block_vars('forumrow', array(
'S_IS_CAT' => false,
'S_NO_CAT' => $catless && !$last_catless,
'S_IS_LINK' => ($row['forum_type'] == FORUM_LINK) ? true : false,
'S_UNREAD_FORUM' => $forum_unread,
'S_LOCKED_FORUM' => ($row['forum_status'] == ITEM_LOCKED) ? true : false,
'S_LIST_SUBFORUMS' => ($row['display_subforum_list']) ? true : false,
'S_SUBFORUMS' => (sizeof($subforums_list)) ? true : false,
'FORUM_ID' => $row['forum_id'],
'PARENT_ID' => $row['parent_id'], # !!!!!!!!!!!!!
'FORUM_NAME' => $row['forum_name'],
'FORUM_DESC' => generate_text_for_display($row['forum_desc'], $row['forum_desc_uid'], $row['forum_desc_bitfield'], $row['forum_desc_options']),
'TOPICS' => $row['forum_topics'],
$l_post_click_count => $post_click_count,
'FORUM_FOLDER_IMG' => $user->img($folder_image, $folder_alt),
'FORUM_FOLDER_IMG_SRC' => $user->img($folder_image, $folder_alt, false, '', 'src'),
'FORUM_FOLDER_IMG_ALT' => isset($user->lang[$folder_alt]) ? $user->lang[$folder_alt] : '',
'FORUM_IMAGE' => ($row['forum_image']) ? '<img src="' . $phpbb_root_path . $row['forum_image'] . '" alt="' . $user->lang[$folder_alt] . '" />' : '',
'FORUM_IMAGE_SRC' => ($row['forum_image']) ? $phpbb_root_path . $row['forum_image'] : '',
'LAST_POST_SUBJECT' => censor_text($last_post_subject),
'LAST_POST_TIME' => $last_post_time,
'LAST_POSTER' => get_username_string('username', $row['forum_last_poster_id'], $row['forum_last_poster_name'], $row['forum_last_poster_colour']),
'LAST_POSTER_COLOUR' => get_username_string('colour', $row['forum_last_poster_id'], $row['forum_last_poster_name'], $row['forum_last_poster_colour']),
'LAST_POSTER_FULL' => get_username_string('full', $row['forum_last_poster_id'], $row['forum_last_poster_name'], $row['forum_last_poster_colour']),
'MODERATORS' => $moderators_list,
'SUBFORUMS' => $s_subforums_list,
'L_SUBFORUM_STR' => $l_subforums,
'L_FORUM_FOLDER_ALT' => $folder_alt,
'L_MODERATOR_STR' => $l_moderator,
'U_VIEWFORUM' => $u_viewforum,
'U_LAST_POSTER' => get_username_string('profile', $row['forum_last_poster_id'], $row['forum_last_poster_name'], $row['forum_last_poster_colour']),
'U_LAST_POST' => $last_post_url,
'IG_CLASS_NAME' => str_replace(array('Ä','ä','Ö','ö','Ü','ü','ß'), array('Ae', 'ae', 'Oe', 'oe', 'Ue', 'ue', 'ss'), $row['forum_name']), #!!!!!!!!!!!!!
'IG_UNREAD' => $forum_unread, #!!!!!!!!!!!!!!
));
Ich finde das irgendwie nicht gut so. Allerdings weiss ich auch nicht wie man es besser macht in phpBB ^^ Bitte helft mir dabei ^^
Gruß
Saij