Script-solution.de » Community » Support-Board » Foren » Boardsolution » Boardsolution v1.2x und älter » Mod-Anleitungen » MOD für V1.22 und V1.3 Beta - RSS Syndication
  • Willkommen, Gast!
  • Freitag, 10. Februar 2012, 04:49:11
 
Thema: "MOD für V1.22 und V1.3 Beta - RSS Syndication" [ Seite 1 ]

Kein neuer Beitrag KingGO , 18.05.2007, 16:41
Beitrag #1   

IP: n/a
Rang: * * * * * O O
Registrierung: 17.05.2007, 20:49
Homepage: http://www.donotart.de
Wohnort: Magdeburg
 

Supporter mit 391 Punkte, 307 Beiträge
MOD für V1.22 - RSS Syndication

Auf diese Modifikation haben einige von euch schon sehr lange gewartet und was soll ich sagen das
warten hat ein Ende.
Wir haben uns die Boardfunktionen zu nutze gemacht und dieses einfach als externes Script
programmiert es muss also nix in *.php Dateien umgeschrieben werden, Der große vorteil jedoch ist
das die Themen Auflistung im RSS Feed nun rücksicht auf die Rechte des Mitgliedes im Forum nimmt.

Fangen wir also an ;)

Zunächst erstellt Ihr eine Datei namens rss.php
mit folgenden inhalt.

Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php

define('ROOT_PATH','../');
define('RSS_TITLE', 'Netcode Forum - Die letzten Themen');
define('RSS_DESCRIPTION', 'Die letzten Themen von Netcode Forum.');

$time = date("D, d M Y H:i:s T");
include_once('bs_api.php');

$topics = BS_API_get_module('latest_topics');

// Feed Header einfügen.
$out  ="<?xml version=\"1.0\" encoding=\"ISO-8859-1\" ?><rss version=\"0.91\">
 <channel>
  <title>". RSS_TITLE ."</title>
  <link>". BOARD_URL ."</link>
  <description>". RSS_DESCRIPTION ."</description>
  <language>de-de</language>
  <copyright>". $time ."</copyright>\n";

foreach($topics->latest_topics as $topic)
{
   // Url vom Forum zusammensetzen...
   $turl = BOARD_URL.'/index.php?'.URL_ACTION.'=posts&amp;'.URL_FID.'='.$topic['forum_id'].'&amp;';
   $turl .= URL_TID.'='.$topic['id'];   
   $out .="  <item>
   <title>". $topic['name'] ."</title>
   <link>". $turl ."</link>
  </item>\n";
}
$out .=" </channel>
</rss>"; // Feed Footer einfügen
header("Content-type: application/xml");
echo $out;
?>


.... Zeile .... 4 und. 5. passt Ihr bitte euren bedürfnissen an...

Code:
1
2
define('RSS_TITLE', 'Netcode Forum - Die letzten Themen');
define('RSS_DESCRIPTION', 'Die letzten Themen von Netcode Forum.');


speichert diese Datei nun ab und ladet diese rauf in euer Forenverzeichnis auf dem Server in den
Unterordner extern
bei mir wäre es /httpdocs/Board/extern/ das ist je nach Server unterschiedlich. :D

jetzt könnte man die rss.php schon benutzen man gibt einfach Leuten den Link zur rss.php und das
jeweilige Feedprogramm übernimmt den Rest.

Zusätzlich könnt Ihr auch ein RSS-Icon oben in der Adresszeile darstellen (ist mir bisher nur von
Firefox und Internet Explorer 7 bekannt)

Dazu geht Ihr einfach in den Board/themes/default/templates/ Ordner auf euern Server und öffnet die
structure.htm mit einen Editor und fügt im Bereich <head> ... </head> einfach diesen Code hinzu.

Code:
1
<link rel="alternate" type="application/rss+xml" title="Netcode Board - Aktuelle Themen" href="http://www.netcode.sunsonic.de/Board/extern/rss.php"


Den jeweiligen URL-Pfad müsst ihr dementsprechend anpassen.

Bei mir sieht das ganze nun so aus.

Code:
1
2
3
4
5
6
7
8
9
10
11
12
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>{forum_title} {page_title}</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta name="robots" content="index, follow" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<script type="text/javascript" language="Javascript" src="{root}src/functions.js"></script>

<link rel="stylesheet" type="text/css" href="{css_file}" />
<link rel="alternate" type="application/rss+xml" title="Netcode Board - Aktuelle Themen" href="http://www.netcode.sunsonic.de/Board/extern/rss.php" />


speichern und wieder hochladen. :D

nun kann man wenn man auf die Startseite des Boards geht einen Feed abonniern in dem man auf das
Icon klickt.

http://img185.imageshack.us/img185/3551/unbenannt1kopiefr0.jpg

So das wars für Verbesserungsvorschläge sind wir euch natürlich dankbar. ;-)
Dieser Beitrag wurde insgesamt 1 mal editiert. Das letzte mal 18.05.2007, 17:08 von KingGO.

 
Kein neuer Beitrag Nils , 18.05.2007, 16:51
Beitrag #2   

IP: n/a
Rang: * * * * * * *
Registrierung: 01.07.2003, 18:55
Homepage: http://www.script-solution.de
Wohnort: Marburg
 

Forum-Gott mit 7594 Punkte, 7360 Beiträge
Hallo,

vielen Dank für deine Mühe! :-)

Eine kleine Anmerkung noch zu "rücksicht auf die Rechte des Mitgliedes im Forum":
Das ganze funktioniert nur, wenn ihr den Feed mit dem Browser aufruft, mit welchem ihr auch das
Board besucht. Denn die nötigen Cookies müssen gesetzt sein. D.h. mit anderen Programmen wird das
nicht funktionieren, sprich dort wird man nur sehen können, was Gäste sehen können.

mfg Nils

Edit: Die Anzahl der Themen kann man folgendermaßen anpassen:
Code:
1
$topics = BS_API_get_module('latest_topics',array('limit' => 15));
Wobei 15 die Anzahl der Themen ist.

mfg Nils
Dieser Beitrag wurde insgesamt 3 mal editiert. Das letzte mal 18.05.2007, 17:20 von Nils.

 
Kein neuer Beitrag coderworld , 18.05.2007, 17:51
Beitrag #3   

IP: n/a
Rang: * * * O O O O
Registrierung: 17.05.2007, 19:19
Homepage: http://www.coderworld.eu/
Wohnort: Fredersdorf b. Berlin
 

Fortgeschritten mit 150 Punkte, 114 Beiträge
Also erstmal: Danke!

Du hast recht! Darauf haben wir alle gewartet! Ich habe es probiert. Es funktioniert wunderbar! Nur
eine Frage:

Kann man des RSS so einrichten, das unter den Titeln auch der Beitrag erscheint?

Gruß Michael aus Berlin 8-)

 
Kein neuer Beitrag KingGO , 18.05.2007, 19:54
Beitrag #4   

IP: n/a
Rang: * * * * * O O
Registrierung: 17.05.2007, 20:49
Homepage: http://www.donotart.de
Wohnort: Magdeburg
 

Supporter mit 391 Punkte, 307 Beiträge
kommt mit der nächsten Version aber Nils weiß sicher besser bescheid muss ja nur <description>topic
text ohne bbcode</description> :D

 
Kein neuer Beitrag coderworld , 19.05.2007, 18:19
Beitrag #5   

IP: n/a
Rang: * * * O O O O
Registrierung: 17.05.2007, 19:19
Homepage: http://www.coderworld.eu/
Wohnort: Fredersdorf b. Berlin
 

Fortgeschritten mit 150 Punkte, 114 Beiträge
Bei mir zeigt er jetzt komischerweise einen Fehler im rss an.

Fehler bei der aktualisierung.

Kann mir einer sagen warum? Und wie mache ich das, das ein Teil des Beitrags im RSS steht?
Dieser Beitrag wurde insgesamt 1 mal editiert. Das letzte mal 19.05.2007, 18:35 von coderworld.

 
Kein neuer Beitrag KingGO , 19.05.2007, 21:20
Beitrag #6   

IP: n/a
Rang: * * * * * O O
Registrierung: 17.05.2007, 20:49
Homepage: http://www.donotart.de
Wohnort: Magdeburg
 

Supporter mit 391 Punkte, 307 Beiträge
Ich hab deine rss.php mal aufgerufen, du hast einen Fehler, Please define the constant "ROOT_PATH"
first!

Haste die etwa gelöscht? :-/

Wegen dem Beitrag da sitze ich bereits an einer Lösung das kann aber dauern.

 
Kein neuer Beitrag php2you , 21.05.2007, 12:23
Beitrag #7   

IP: n/a
Rang: * * * O O O O
Registrierung: 16.05.2006, 15:23
Homepage: http://php2you.ph.funpic.de
Wohnort: Erfurt
 

Fortgeschritten mit 91 Punkte, 55 Beiträge
echt ein super teil !
ich nehme mal an,dass dieses feature dann in bs 1.23 standartmäßig dabei sein wird.

is aber auch egal - ich finds klasse!

Php2you-Scripts | Forum meiner Website
Extra was für Leute die mit PHP arbeiten!Leider ist fast noch alles leer!:-/
Schreibt doch was rein!8-)


 
Kein neuer Beitrag Nils , 21.05.2007, 12:32
Beitrag #8   

IP: n/a
Rang: * * * * * * *
Registrierung: 01.07.2003, 18:55
Homepage: http://www.script-solution.de
Wohnort: Marburg
 

Forum-Gott mit 7594 Punkte, 7360 Beiträge
php2you hat folgendes geschrieben:
echt ein super teil !
ich nehme mal an,dass dieses feature dann in bs 1.23 standartmäßig dabei sein wird.

is aber auch egal - ich finds klasse!
1.23 wäre die nächste "Bugfix-Version". 1.30 wird die nächste sein, die auch einige neue Features
usw. enthalten wird.

Aber nein, dieses Feature wird sie voraussichtlich nicht enthalten. Begründung siehe hier.

mfg Nils

 
Kein neuer Beitrag php2you , 21.05.2007, 13:06
Beitrag #9   

IP: n/a
Rang: * * * O O O O
Registrierung: 16.05.2006, 15:23
Homepage: http://php2you.ph.funpic.de
Wohnort: Erfurt
 

Fortgeschritten mit 91 Punkte, 55 Beiträge
naja man kann es ja,wenn man will trotzdem einbauen,nicht wahr?
ich finde bloß das dieses kleine lesezeichen oben im browser doch ziemlich viel sinn hat,weil man
halt gleich sehen kann as im forum los ist.

Php2you-Scripts | Forum meiner Website
Extra was für Leute die mit PHP arbeiten!Leider ist fast noch alles leer!:-/
Schreibt doch was rein!8-)


 
Kein neuer Beitrag Nils , 21.05.2007, 13:45
Beitrag #10   

IP: n/a
Rang: * * * * * * *
Registrierung: 01.07.2003, 18:55
Homepage: http://www.script-solution.de
Wohnort: Marburg
 

Forum-Gott mit 7594 Punkte, 7360 Beiträge
php2you hat folgendes geschrieben:
naja man kann es ja,wenn man will trotzdem einbauen,nicht wahr?
ich finde bloß das dieses kleine lesezeichen oben im browser doch ziemlich viel sinn hat,weil man
halt gleich sehen kann as im forum los ist.
Das Script müsste natürlich für die neue Version angepasst werden. Aber ja, man kann es natürlich
einbauen.

Wenn du sowieso schon im Forum bist, kannst du doch auch die aktuellen Themen angucken ;-)
Der Sinn eines RSS-Feeds ist doch nicht, dass man oben ein RSS-Icon hat, sondern dass man ohne das
Forum besuchen zu müssen die neusten Infos bekommt.
Und wie gesagt, bei "normalen" Themen geht es um das Diskutieren und die eigene Beteiligung. Daher
macht da ein RSS-Feed im allgmeinen wenig Sinn, meiner Meinung nach.

mfg Nils

 
Kein neuer Beitrag KingGO , 17.07.2007, 21:41
Beitrag #11   

IP: n/a
Rang: * * * * * O O
Registrierung: 17.05.2007, 20:49
Homepage: http://www.donotart.de
Wohnort: Magdeburg
 

Supporter mit 391 Punkte, 307 Beiträge
Und hier kommt das Update für die neuste Version von Boardsolution. Es handelt sich zwar noch um
eine Beta Version die nur zu testzwecken verwendet werden sollte aber ohne Tester würde das ja nix
werden. ;)

wie oben schon einmal beschrieben nur statt den obern PHP-Code nehmt Ihr diesen...

Neuerung: Datum des Posts wird mitgelifert, und der Text wird auch mit geliefert worauf ich
verzichtet habe ist das kürzen von beiträgen da dieses teilweise noch probleme bereitet...

Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<?php
/*
   Dieses Script ist ein Teil der example.php
   Coded: KingGO, 17.05.2007, 14:36
   Last Edit: 17.06.2007, 12:56.
*/

define('BS_PATH','../');
define('RSS_TITLE', 'Netcode Forum - Die letzten Themen'); // Titel eures Feed's
define('RSS_DESCRIPTION', 'Die letzten Themen von Netcode Forum.'); // Beschreibung eures Feed's

############################
###       AB HIER NIX MEHR ÄNDERN      ###
############################

function clean($var)
{
 $var = preg_replace("/<!--.+?-->/"," ","$var");
 $var = preg_replace("/<.+?>/"," ","$var");
 return $var;
}

$BS_base = include_once('bs_api.php');
$topics = BS_API_get_module($BS_base,'latest_topics');
$time = date("D, d M Y H:i:s T");

$out ='<?xml version="1.0" encoding="iso-8859-15" ?><rss version="2.0">'."\n";
$out .='<channel>'."\n";
$out .=' <title>'. RSS_TITLE .'</title>'."\n";
$out .=' <description>'. RSS_DESCRIPTION .'</description>'."\n";
$out .=' <link>'. BS_FOLDER_URL .'</link>'."\n";
$out .=' <pubDate>'. $time .'</pubDate>'."\n";

foreach($topics->latest_topics as $topic)
{
 $data = $BS_base->db->sql_fetch("SELECT id,threadid,text FROM ".BS_TB_POSTS." WHERE threadid='". $topic['id'] ."' ORDER BY id DESC");
 $lastpost_url = BS_FOLDER_URL.'/index.php?'.BS_URL_ACTION.'=redirect&amp;'.BS_URL_LOC.'=show_post&amp;'.BS_URL_ID.'='.$topic['lastpost_id'];
 $lastpost_time = date("D, d M Y H:i:s T",$topic['lastpost_date']);

 
 $out .="<item>\n";
 $out .=" <title><![CDATA[". $topic['name'] ."]]></title>\n";
 $out .=" <description><![CDATA[". clean($data['text']) ."]]></description>\n";
 $out .=" <link>". $lastpost_url ."</link>\n";
 $out .=" <pubDate>". $lastpost_time ."</pubDate>\n";
 $out .="</item>\n";
}

$out .=" </channel>\n";
$out .="</rss>";

header("Content-type: application/xml");
echo $out;

?>


Besten dank nochmal an Nils für die tolle unterstützung ;-)
Dieser Beitrag wurde insgesamt 1 mal editiert. Das letzte mal 17.07.2007, 21:59 von KingGO.

 
Kein neuer Beitrag Nils , 17.07.2007, 21:53
Beitrag #12   

IP: n/a
Rang: * * * * * * *
Registrierung: 01.07.2003, 18:55
Homepage: http://www.script-solution.de
Wohnort: Marburg
 

Forum-Gott mit 7594 Punkte, 7360 Beiträge
Sieht gut aus. Danke für den MOD :)

Aber soll es in Zeile 18 nicht eher:
Code:
1
$var = preg_replace("/<!--.+?-->/"," ","$var");
sein?

mfg Nils

 
Kein neuer Beitrag KingGO , 17.07.2007, 21:59
Beitrag #13   

IP: n/a
Rang: * * * * * O O
Registrierung: 17.05.2007, 20:49
Homepage: http://www.donotart.de
Wohnort: Magdeburg
 

Supporter mit 391 Punkte, 307 Beiträge
ja klar ;) mein Fehler habs abgeändert danke =)

 
Kein neuer Beitrag KingGO , 23.08.2007, 15:51
Beitrag #14   

IP: n/a
Rang: * * * * * O O
Registrierung: 17.05.2007, 20:49
Homepage: http://www.donotart.de
Wohnort: Magdeburg
 

Supporter mit 391 Punkte, 307 Beiträge
Fix für BS 1.3, Beta 2.

Zeile 27:

Code:
1
$out ='<?xml version="1.0" encoding="iso-8859-15" ?><rss version="2.0">'."\n";


in

Code:
1
$out ='<?xml version="1.0" encoding="UTF-8" ?><rss version="2.0">'."\n";



Gehört nicht dazu ist eine Anzeige für Nils....

Code:
1
$out  ="<?xml version=\"1.0\" encoding=\"ISO-8859-1\" ?><rss version=\"0.91\">

Eingegeben wurde: $out ="<?xml version=\"1.0\" encoding=\"ISO-8859-1\" ?><rss version=\"0.91\">
Dieser Beitrag wurde insgesamt 3 mal editiert. Das letzte mal 23.08.2007, 15:55 von KingGO.

 
Kein neuer Beitrag Nils , 23.08.2007, 16:25
Beitrag #15   

IP: n/a
Rang: * * * * * * *
Registrierung: 01.07.2003, 18:55
Homepage: http://www.script-solution.de
Wohnort: Marburg
 

Forum-Gott mit 7594 Punkte, 7360 Beiträge
Hallo,

ja, das ist mir auch gestern aufgefallen, als ich den Beitrag im anderen Thema geschrieben habe.
Hab im Moment noch keine Ahnung was das ist. Muss ich mal nachschauen..

mfg Nils

n/a n/a 1     ( Anzeige: 1 - 15 , Gesamt: 15 ) n/a n/a
User in diesem Thema: 0 Registrierte, 0 Versteckte, 1 Gast, 0 Bots
Keine
Thema-Aktionen:

Toggle Ähnliche Themen zu "MOD für V1.22 und V1.3 Beta - RSS Syndication"
  Antworten Aufrufe Themeneröffnung Letzter Beitrag
Keine neuen Beiträge, nicht wichtig Keine neuen Beiträge, kein 'heißes Thema'
Keine neuen Beiträge, offen Keine neuen Beiträge, nicht verschoben
  Checkboxen in einen Array laden und wieder au ... 2 1633 25.01.2012, 09:04
Von: KingGO
25.01.2012, 11:01
Von: KingGO Zum letzten Beitrag
Keine neuen Beiträge, nicht wichtig Keine neuen Beiträge, kein 'heißes Thema'
Keine neuen Beiträge, offen Keine neuen Beiträge, verschoben
  RSS 1 928 11.01.2012, 10:33
Von: Mars
11.01.2012, 11:47
Von: Nils Zum letzten Beitrag
Keine neuen Beiträge, nicht wichtig Keine neuen Beiträge, kein 'heißes Thema'
Keine neuen Beiträge, offen Keine neuen Beiträge, nicht verschoben
  Frohes Neues 4 1968 01.01.2012, 00:34
Von: Mars
02.01.2012, 21:00
Von: langer Zum letzten Beitrag
Keine neuen Beiträge, nicht wichtig Keine neuen Beiträge, kein 'heißes Thema'
Keine neuen Beiträge, offen Keine neuen Beiträge, nicht verschoben
  Frohe Weihnachten und einen guten Rutsch ins ... 1 955 24.12.2011, 00:20
Von: Rafioso
24.12.2011, 09:37
Von: Nils Zum letzten Beitrag
Keine neuen Beiträge, nicht wichtig Keine neuen Beiträge, 'heißes Thema'
Keine neuen Beiträge, offen Keine neuen Beiträge, nicht verschoben
  nochmal Frage zu Menüeinträge   Seiten 1 2 ] 20 2266 04.12.2011, 09:56
Von: Siggi
22.12.2011, 19:41
Von: Rafioso Zum letzten Beitrag
  • 0.162881 Sek., 11 DB-Zugriffe, 6.510 MiB
  • Boardsolution v1.43 | © Nils Asmussen 2003-2009
Valid XHTML and CSS © 2003 - 2009 script-solution.de, Powered by Joomla!