![]() |
Wie kann ich den Newsfeed der DP auf meiner HP einbinden?
Ja, das Topic sagt eigentlich schon alles. Leider habe ich da keinen Plan von. Wäre deswegen nett, wenn mir da jemand auf die Sprünge helfen könnte. Ich weiß nur so viel, dass ich wohl irgendwie die xml Datei verlinken muss - und dann weiter? :gruebel:
Edit: Habe jetzt das Beispiel für den DP Newsfeed gefunden. Nur scheint das nicht so ganz zu klappen: Zitat:
Dann habe ich noch diese Seite gefunden: ![]() Das ginge auch, nur ist dann immer deren Copyright am Ende jedes Feeds und es funktioniert nur mit Javascript, was ich eigentlich vermeiden wollte. So doch noch selber geschafft. ;) Mit diesem php-Script: ![]() ![]() |
Re: Wie kann ich den Newsfeed der DP auf meiner HP einbinden
Schick. :-)
Bei Deinem ersten Beispiel konnte Dein Script die Datei 'lastRSS.php' nicht finden. Entweder lag sie im falschen Verzeichnis oder noch gar nicht auf Deinem Server. Künfig wird das Script Parameter akzeptieren, um eine Variable Anzahl an Themen zu erhalten oder die Ausgabe zu filtern. |
Re: Wie kann ich den Newsfeed der DP auf meiner HP einbinden
*hi hi*, is´ ja witzig. Ich habe etwas ähnliches gestern mit JavaScript gestern selbst gemacht. Daniel weiß es möglicherweise?! Das Skript sucht sich die 10 aktuellsten Beiträge der DP und bindet sich in die Navigation der "delphi-Sparte" auf meiner HP ein. Funktioniert aber nur im IE (wg. MS-XML-4), und darum werde ich mich sicher noch an eine eigene PHP-Lösung setzen. ;)
Code:
// this is for MS-IE users only!
if(navigator.userAgent.indexOf("MSIE") != -1) { var xmldoc = null; try { xmldoc = new ActiveXObject("Msxml2.DOMDocument.4.0"); } catch(e) { xmldoc = null; } // MS-XML-4 is available if(xmldoc) { xmldoc.async = false; xmldoc.validateOnParse = false; xmldoc.resolveExternals = true; xmldoc.setProperty("SelectionNamespaces", "xmlns:ns='http://my.netscape.com/rdf/simple/0.9/'"); // get this document's right table var rTable = null; var td = document.getElementsByTagName("td"); for(var i=0;i<td.length;i++) { if(td[i].getAttribute("className")=="RightBar") { rTable = td[i]; } } if(rTable) { rTable.insertAdjacentHTML("beforeEnd", " </p>" + "<table border=\"0\" class=\"Navigation\"" + " id=\"insert_rdf_feed\" style=\"display:none;\">" + "<tr><th>Aktuelle Beiträge in der DP</th></tr>" + "</table>"); var xmldoc_loaded = false; try { xmldoc.load("http://www.delphipraxis.net/rdf"); xmldoc_loaded = (xmldoc.parseError.errorCode==0); } catch(e) { xmldoc_loaded = false; } if(xmldoc_loaded) { var table = document.getElementById("insert_rdf_feed"); var items = xmldoc.selectNodes("//ns:item"); var len = (items.length>10)?10:items.length; for(var i=0;i<len;i++) { var title = items[i].selectSingleNode("ns:title"); var link = items[i].selectSingleNode("ns:link"); if(table && title && link) { var tr = table.insertRow(i+1); if(tr) { var td = tr.insertCell(0); if(td) { td.innerHTML = "<a href=\"" + link.text + "\" target=\"_blank\">" + title.text + "</a>"; } } td = null; tr = null; } link = null; title = null; } if(table) table.style.display = ""; } rTable = null; } } } |
Re: Wie kann ich den Newsfeed der DP auf meiner HP einbinden
@Mathias: Bezüglich deiner E-mail an mich: Zusammen wird kaum gehen, da ich absolut kein PHP kann und im mOment auch nicht die zeit habe mich da rein zu arbeiten. Aber wenn du mir eine PHP Lösung machen willst, ich halte dich nicht ab. ;)
|
Re: Wie kann ich den Newsfeed der DP auf meiner HP einbinden
Zitat:
Zitat:
Hast du irgendwelche Wünsche bezüglich des Designs? *kicher* |
Re: Wie kann ich den Newsfeed der DP auf meiner HP einbinden
Zitat:
Es sollte alles via CSS formtierbar sein. Will heissen: Im Prinzip alles in eine Liste packen und der eine entsprechende CSS-Id geben. Alles andere ist dann Benutzerdefiniert :) |
Re: Wie kann ich den Newsfeed der DP auf meiner HP einbinden
Offen gesagt, @Phoenix, das versteht sich von selbst.
Ich habe nur gerade mal ein Testskript zusammengeschraubt, das zwar keinen besonders schönen Output erzeugt, aber immerhin funktioniert. Für das Aussehen ist dann Luckie verantwortlich. Ist ja seine Seite. ;) |
Re: Wie kann ich den Newsfeed der DP auf meiner HP einbinden
hallo matthias,
auf firefox0.8 laufen sie auch, und sehen im gegensatz zu luckie's design richtig gut aus :mrgreen: aber ich denke bei luckie wird das noch. raik |
Re: Wie kann ich den Newsfeed der DP auf meiner HP einbinden
Ich habe auf meiner Seite ja jetzt auch ein PHP-Skript laufen. (Muss übrigens mal bei Tino fragen, ob das DF auch ein Newsfeed hat. ;)). Das JavaScript von oben war eine schöne Spielerei, aber eben leider nur auf den IE begrenzt. Hier ist der PHP-Code von meiner Seite:
Code:
(wird nach der Navigation aufgerufen)
function Ten_Good_Things_To_Show() {
// get RDF $xmlString = implode("",file("http://www.delphipraxis.net/rdf")); if(!empty($xmlString)) { $xmldoc = xml_parser_create(); xml_parse_into_struct($xmldoc,$xmlString,$vals,$idx); xml_parser_free($xmldoc); if(count($vals) > 0) { $type = 0; $feeds[] = array(); $tmp[] = array(); for($i=0;$i<count($vals);$i++) { if($vals[$i]["tag"]=="ITEM") { if($vals[$i]["type"]=="open") $type=1; if($vals[$i]["type"]=="close") { $type = 0; $feeds[] = $tmp; } } if($type==1) { switch($vals[$i]["tag"]) { case "TITLE": $tmp[0] = $vals[$i]["value"]; break; case "LINK": $tmp[1] = $vals[$i]["value"]; break; } } } if(count($feeds) > 0) { echo "<table border=\"0\" class=\"Navigation\">\n"; echo " <tr><th>Delphi-PRAXiS</th></tr>\n"; $len=(count($feeds)>5)?5:count($feeds); for($i=0;$i<$len;$i++) { if(!empty($feeds[$i][0]) && !empty($feeds[$i][1])) { echo " <tr><td><a href=\"".$feeds[$i][1]. "\" target=\"_blank\">".$feeds[$i][0]. "</a></td></tr>\n"; } } echo "</table>\n"; } } } } |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:07 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz