Simple Machines Community Forum

SMF Support => Language Specific Support => Svenska/Norsk/Dansk (Swedish/Norwegian/Danish) => Topic started by: espenf on November 16, 2004, 04:39:26 PM

Title: Utelukke innlegg fra å vises i "Nyeste innlegg" på forsiden?
Post by: espenf on November 16, 2004, 04:39:26 PM
Jeg har opprettet en seksjon hvor alt som legges i kalenderen havner. Jeg ønsker ikke at innlegg postet i denne seksjonen skal vises under "Nyeste innlegg" for forumets forside.

Er dette mulig å få til?
Title: Re: Utelukke innlegg fra å vises i "Nyeste innlegg" på forsiden?
Post by: Skoen on November 16, 2004, 07:17:52 PM
Det er nok ikke mulig å unngå at du vil vise dette fra forumets forside, med mindre du lager den seksjonen kun tilgjengelig for medlemmer eller bare deg selv.
Men det er mulig ved å trikse litt med SSI å skjule den seksjonen fra å vises på selve forsida, altså ikke forumets forside.
Title: Re: Utelukke innlegg fra å vises i "Nyeste innlegg" på forsiden?
Post by: bloc on November 16, 2004, 08:40:10 PM
En rask løsning:

Åpne opp Recent.php i Sources mappa og finn følgende part:

        // Find the 10 most recent messages they can *view*.
        $request = db_query("
                SELECT m.ID_MSG
                FROM {$db_prefix}messages AS m, {$db_prefix}boards AS b
                WHERE b.ID_BOARD = m.ID_BOARD" . (!empty($modSettings['recycle_enable']) && $modSettings['recycle_board'] > 0 ? "
                        AND b.ID_BOARD != $modSettings[recycle_board]" : '') . "
                        AND $user_info[query_see_board]
                ORDER BY m.ID_MSG DESC
                LIMIT 10", __FILE__, __LINE__);


Finn ut hvilket id den seksjonen du har kalender-innlegg i ( hold over link til den, så ser du board=xx , xx er id-nummeret) og legg til denne linjen på denne måten:

        // Find the 10 most recent messages they can *view*.
        $request = db_query("
                SELECT m.ID_MSG
                FROM {$db_prefix}messages AS m, {$db_prefix}boards AS b
                WHERE b.ID_BOARD = m.ID_BOARD" . (!empty($modSettings['recycle_enable']) && $modSettings['recycle_board'] > 0 ? "
                        AND b.ID_BOARD != $modSettings[recycle_board]" : '') . "
                   
     AND b.ID_BOARD !=xx[/b]
                        AND $user_info[query_see_board]
                ORDER BY m.ID_MSG DESC
                LIMIT 10", __FILE__, __LINE__);[/size]

...hvor du bytter ut xx med id-nummer self.

Dette er en "quick-fix", så ved oppdatering må du gjøre det igjen - men siden det er så lite burde det ikke være noe problem. Jeg hadde et par seksjoner hvor folk bare postet "leke-innlegg" - korte 1-2 ord i hvert innlegg, og ville ha de bort fra "nyeste innlegg".
Title: Re: Utelukke innlegg fra å vises i "Nyeste innlegg" på forsiden?
Post by: espenf on November 17, 2004, 02:19:47 AM
Bloc, din løsning virker når man klikker på lenken "Vis de 10 nyeste innleggene på forumet". Det var ikke akkurat dette jeg var ute etter, men jeg skal benytte meg av dette i tillegg.

Jeg har under "Innstillinger for gjeldende design" satt at de 5 siste innleggene skal vises på forumets forside. Det er i denne oversikten at jeg ikke vil vise innlegg fra en bestemt seksjon.

Har du en "quick-fix" for denne problemstillingen også eller har Skoen rett i at det ikke er mulig å få til? Hvis du har en løsning, vil det være mulig å utelukke innlegg fra flere enn en seksjon?
Title: Re: Utelukke innlegg fra å vises i "Nyeste innlegg" på forsiden?
Post by: bloc on November 17, 2004, 04:48:57 AM
Ja, det går fint det også - på nøyaktig samme måten. Bare gå litt lengre opp i Recent.php og finn denne teksten og legg til det i rød fet skrift. Som du ser....bare bytt ut xx,yy osv med dine seksjon-nummer ( ID-nummer) og du utelukker alle disse fra resultatet.  8)

Det var egentlig denne funksjonen som skulle modifiseres - jeg blander alltid de 2 sammen..  ::)

        // Find all the posts.  Newer ones will have higher IDs.  (assuming the last 4 * number are accessable...)
        $request = db_query("
                SELECT
                        m.posterTime, m.subject, m.ID_TOPIC, m.ID_MEMBER, m.ID_MSG,
                        IFNULL(mem.realName, m.posterName) AS posterName, t.ID_BOARD, b.name AS bName,
                        m.body, m.smileysEnabled
                FROM {$db_prefix}messages AS m, {$db_prefix}topics AS t, {$db_prefix}boards AS b
                        LEFT JOIN {$db_prefix}members AS mem ON (mem.ID_MEMBER = m.ID_MEMBER)
                WHERE m.ID_MSG >= " . ($modSettings['maxMsgID'] - 4 * $showlatestcount) . "
                        AND t.ID_TOPIC = m.ID_TOPIC
                       
AND b.ID_BOARD != xx
                        AND b.ID_BOARD != yy
                        AND b.ID_BOARD != zz
                        AND b.ID_BOARD = t.ID_BOARD" . (!empty($modSettings['recycle_enable']) && $modSettings['recycle_board'] > 0 ? "
                        AND b.ID_BOARD != $modSettings[recycle_board]" : '') . "
                        AND $user_info[query_see_board]
                ORDER BY m.ID_MSG DESC
                LIMIT $showlatestcount", __FILE__, __LINE__);
        $posts = array();[/size]  

Title: Re: Utelukke innlegg fra å vises i "Nyeste innlegg" på forsiden?
Post by: espenf on November 17, 2004, 08:38:04 AM
Glimrende, Bloc! Det fungerer som bare det.

Tusen takk for hjelpen! O0