RSS Feed Generator

Swert_p
Beiträge: 9
Registriert: Di 12. Sep 2006, 08:19
Wohnort: Düsseldorf
Kontaktdaten:

Re: RSS Feed Generator und Terminliste univeral

Beitrag von Swert_p » Mo 7. Nov 2011, 16:51

Hallo,
ich möchte den RSS Feed Generator so anpassen, dass er die Termine des Terminmoduls von Schlaucher als RSS ausspuckt. Dank Forum, konnte ich es schon so einrichten, dass die Headlines richtig ausgegeben werden. Jetzt möchte ich, dass nicht das Erstellungsdatum, sondern das Datum auf das sich der Termin bezieht mit ausgegeben wird. Leider werde ich aus dem Code der beiden Module nicht so richtig schlau. Vielleicht hat ja jemand dieses Problem schon angegangen.
Wäre für Tipps dankbar.

almighty7
Beiträge: 12
Registriert: So 1. Nov 2009, 23:51
Kontaktdaten:

Re: RSS Feed Generator

Beitrag von almighty7 » Do 19. Jan 2012, 21:40

Hallo in die Runde,

ich bin heute auf dieses wunderbare Modul aufmerksam geworden, habe aber Probleme mit der Konfiguration. Der RSS-Feed wird angezeigt, allerdings werden die Artikel dort nicht ausgespuckt, obwohl ich alles nach der Anleitung gemacht habe. Könnte mir vielleicht jemand auf die Sprünge helfen, ob ich vielleicht einen Denkfehler habe?

Link RSS-Feed: http://www.queerportal.de/rssfeed.php
Artikel, die rauskommen sollten: http://www.queerportal.de/locations/hamburg/index.php

Liebe Grüße
Marcel
Dateianhänge
Artikelkonfiguration.jpg
Artikelkonfiguration
Artikelkonfiguration.jpg (243.26 KiB) 10538 mal betrachtet

Spider IT
Beiträge: 1416
Registriert: Fr 3. Dez 2004, 10:15

Re: RSS Feed Generator

Beitrag von Spider IT » Fr 20. Jan 2012, 10:16

Hallo Marcel,

so auf dem ersten Blick kann ich keinen Fehler erkennen.
Ich kann mir das aber gerne mal genauer ansehen, brauche dafür dann aber einen Backend-Zugang.
Daten bitte nur per PN ;)

Gruß
René

Spider IT
Beiträge: 1416
Registriert: Fr 3. Dez 2004, 10:15

Re: RSS Feed Generator

Beitrag von Spider IT » Fr 20. Jan 2012, 13:35

"Fehler" behoben :)
In den Artikeln wurde nicht CMS_HTMLHEAD[] sondern CMS_HEAD[] verwendet.

Gruß
René

Stefan_Br
Beiträge: 36
Registriert: Di 29. Nov 2005, 18:06
Kontaktdaten:

Sonderzeichen

Beitrag von Stefan_Br » Mo 21. Mai 2012, 00:26

Tolles Modul

Allerdings hatte ich Probleme mit Sonderzeichen. Hier die Lösung:

Definiere irgendwo zu Beginn des Modul-Outputs folgende Funktionen:

Code: Alles auswählen

/* html_convert_entities($string) -- convert named HTML entities to 
 * XML-compatible numeric entities.
 */

function html_convert_entities($string) {
  return preg_replace_callback('/&([a-zA-Z][a-zA-Z0-9]+);/S', 
                               'convert_entity', $string);
}

/* Swap HTML named entity with its numeric equivalent. If the entity
 * isn't in the lookup table, this function returns a blank, which
 * destroys the character in the output - this is probably the 
 * desired behaviour when producing XML. */
function convert_entity($matches) {
  static $table = array('quot'    => '"',
                        'amp'      => '&',
                        'lt'       => '<',
                        'gt'       => '>',
                        'OElig'    => '&#338;',
                        'oelig'    => '&#339;',
                        'Scaron'   => '&#352;',
                        'scaron'   => '&#353;',
                        'Yuml'     => '&#376;',
                        'circ'     => '&#710;',
                        'tilde'    => '&#732;',
                        'ensp'     => '&#8194;',
                        'emsp'     => '&#8195;',
                        'thinsp'   => '&#8201;',
                        'zwnj'     => '&#8204;',
                        'zwj'      => '&#8205;',
                        'lrm'      => '&#8206;',
                        'rlm'      => '&#8207;',
                        'ndash'    => '&#8211;',
                        'mdash'    => '&#8212;',
                        'lsquo'    => '&#8216;',
                        'rsquo'    => '&#8217;',
                        'sbquo'    => '&#8218;',
                        'ldquo'    => '&#8220;',
                        'rdquo'    => '&#8221;',
                        'bdquo'    => '&#8222;',
                        'dagger'   => '&#8224;',
                        'Dagger'   => '&#8225;',
                        'permil'   => '&#8240;',
                        'lsaquo'   => '&#8249;',
                        'rsaquo'   => '&#8250;',
                        'euro'     => '&#8364;',
                        'fnof'     => '&#402;',
                        'Alpha'    => '&#913;',
                        'Beta'     => '&#914;',
                        'Gamma'    => '&#915;',
                        'Delta'    => '&#916;',
                        'Epsilon'  => '&#917;',
                        'Zeta'     => '&#918;',
                        'Eta'      => '&#919;',
                        'Theta'    => '&#920;',
                        'Iota'     => '&#921;',
                        'Kappa'    => '&#922;',
                        'Lambda'   => '&#923;',
                        'Mu'       => '&#924;',
                        'Nu'       => '&#925;',
                        'Xi'       => '&#926;',
                        'Omicron'  => '&#927;',
                        'Pi'       => '&#928;',
                        'Rho'      => '&#929;',
                        'Sigma'    => '&#931;',
                        'Tau'      => '&#932;',
                        'Upsilon'  => '&#933;',
                        'Phi'      => '&#934;',
                        'Chi'      => '&#935;',
                        'Psi'      => '&#936;',
                        'Omega'    => '&#937;',
                        'alpha'    => '&#945;',
                        'beta'     => '&#946;',
                        'gamma'    => '&#947;',
                        'delta'    => '&#948;',
                        'epsilon'  => '&#949;',
                        'zeta'     => '&#950;',
                        'eta'      => '&#951;',
                        'theta'    => '&#952;',
                        'iota'     => '&#953;',
                        'kappa'    => '&#954;',
                        'lambda'   => '&#955;',
                        'mu'       => '&#956;',
                        'nu'       => '&#957;',
                        'xi'       => '&#958;',
                        'omicron'  => '&#959;',
                        'pi'       => '&#960;',
                        'rho'      => '&#961;',
                        'sigmaf'   => '&#962;',
                        'sigma'    => '&#963;',
                        'tau'      => '&#964;',
                        'upsilon'  => '&#965;',
                        'phi'      => '&#966;',
                        'chi'      => '&#967;',
                        'psi'      => '&#968;',
                        'omega'    => '&#969;',
                        'thetasym' => '&#977;',
                        'upsih'    => '&#978;',
                        'piv'      => '&#982;',
                        'bull'     => '&#8226;',
                        'hellip'   => '&#8230;',
                        'prime'    => '&#8242;',
                        'Prime'    => '&#8243;',
                        'oline'    => '&#8254;',
                        'frasl'    => '&#8260;',
                        'weierp'   => '&#8472;',
                        'image'    => '&#8465;',
                        'real'     => '&#8476;',
                        'trade'    => '&#8482;',
                        'alefsym'  => '&#8501;',
                        'larr'     => '&#8592;',
                        'uarr'     => '&#8593;',
                        'rarr'     => '&#8594;',
                        'darr'     => '&#8595;',
                        'harr'     => '&#8596;',
                        'crarr'    => '&#8629;',
                        'lArr'     => '&#8656;',
                        'uArr'     => '&#8657;',
                        'rArr'     => '&#8658;',
                        'dArr'     => '&#8659;',
                        'hArr'     => '&#8660;',
                        'forall'   => '&#8704;',
                        'part'     => '&#8706;',
                        'exist'    => '&#8707;',
                        'empty'    => '&#8709;',
                        'nabla'    => '&#8711;',
                        'isin'     => '&#8712;',
                        'notin'    => '&#8713;',
                        'ni'       => '&#8715;',
                        'prod'     => '&#8719;',
                        'sum'      => '&#8721;',
                        'minus'    => '&#8722;',
                        'lowast'   => '&#8727;',
                        'radic'    => '&#8730;',
                        'prop'     => '&#8733;',
                        'infin'    => '&#8734;',
                        'ang'      => '&#8736;',
                        'and'      => '&#8743;',
                        'or'       => '&#8744;',
                        'cap'      => '&#8745;',
                        'cup'      => '&#8746;',
                        'int'      => '&#8747;',
                        'there4'   => '&#8756;',
                        'sim'      => '&#8764;',
                        'cong'     => '&#8773;',
                        'asymp'    => '&#8776;',
                        'ne'       => '&#8800;',
                        'equiv'    => '&#8801;',
                        'le'       => '&#8804;',
                        'ge'       => '&#8805;',
                        'sub'      => '&#8834;',
                        'sup'      => '&#8835;',
                        'nsub'     => '&#8836;',
                        'sube'     => '&#8838;',
                        'supe'     => '&#8839;',
                        'oplus'    => '&#8853;',
                        'otimes'   => '&#8855;',
                        'perp'     => '&#8869;',
                        'sdot'     => '&#8901;',
                        'lceil'    => '&#8968;',
                        'rceil'    => '&#8969;',
                        'lfloor'   => '&#8970;',
                        'rfloor'   => '&#8971;',
                        'lang'     => '&#9001;',
                        'rang'     => '&#9002;',
                        'loz'      => '&#9674;',
                        'spades'   => '&#9824;',
                        'clubs'    => '&#9827;',
                        'hearts'   => '&#9829;',
                        'diams'    => '&#9830;',
                        'nbsp'     => '&#160;',
                        'iexcl'    => '&#161;',
                        'cent'     => '&#162;',
                        'pound'    => '&#163;',
                        'curren'   => '&#164;',
                        'yen'      => '&#165;',
                        'brvbar'   => '&#166;',
                        'sect'     => '&#167;',
                        'uml'      => '&#168;',
                        'copy'     => '&#169;',
                        'ordf'     => '&#170;',
                        'laquo'    => '&#171;',
                        'not'      => '&#172;',
                        'shy'      => '&#173;',
                        'reg'      => '&#174;',
                        'macr'     => '&#175;',
                        'deg'      => '&#176;',
                        'plusmn'   => '&#177;',
                        'sup2'     => '&#178;',
                        'sup3'     => '&#179;',
                        'acute'    => '&#180;',
                        'micro'    => '&#181;',
                        'para'     => '&#182;',
                        'middot'   => '&#183;',
                        'cedil'    => '&#184;',
                        'sup1'     => '&#185;',
                        'ordm'     => '&#186;',
                        'raquo'    => '&#187;',
                        'frac14'   => '&#188;',
                        'frac12'   => '&#189;',
                        'frac34'   => '&#190;',
                        'iquest'   => '&#191;',
                        'Agrave'   => '&#192;',
                        'Aacute'   => '&#193;',
                        'Acirc'    => '&#194;',
                        'Atilde'   => '&#195;',
                        'Auml'     => '&#196;',
                        'Aring'    => '&#197;',
                        'AElig'    => '&#198;',
                        'Ccedil'   => '&#199;',
                        'Egrave'   => '&#200;',
                        'Eacute'   => '&#201;',
                        'Ecirc'    => '&#202;',
                        'Euml'     => '&#203;',
                        'Igrave'   => '&#204;',
                        'Iacute'   => '&#205;',
                        'Icirc'    => '&#206;',
                        'Iuml'     => '&#207;',
                        'ETH'      => '&#208;',
                        'Ntilde'   => '&#209;',
                        'Ograve'   => '&#210;',
                        'Oacute'   => '&#211;',
                        'Ocirc'    => '&#212;',
                        'Otilde'   => '&#213;',
                        'Ouml'     => '&#214;',
                        'times'    => '&#215;',
                        'Oslash'   => '&#216;',
                        'Ugrave'   => '&#217;',
                        'Uacute'   => '&#218;',
                        'Ucirc'    => '&#219;',
                        'Uuml'     => '&#220;',
                        'Yacute'   => '&#221;',
                        'THORN'    => '&#222;',
                        'szlig'    => '&#223;',
                        'agrave'   => '&#224;',
                        'aacute'   => '&#225;',
                        'acirc'    => '&#226;',
                        'atilde'   => '&#227;',
                        'auml'     => '&#228;',
                        'aring'    => '&#229;',
                        'aelig'    => '&#230;',
                        'ccedil'   => '&#231;',
                        'egrave'   => '&#232;',
                        'eacute'   => '&#233;',
                        'ecirc'    => '&#234;',
                        'euml'     => '&#235;',
                        'igrave'   => '&#236;',
                        'iacute'   => '&#237;',
                        'icirc'    => '&#238;',
                        'iuml'     => '&#239;',
                        'eth'      => '&#240;',
                        'ntilde'   => '&#241;',
                        'ograve'   => '&#242;',
                        'oacute'   => '&#243;',
                        'ocirc'    => '&#244;',
                        'otilde'   => '&#245;',
                        'ouml'     => '&#246;',
                        'divide'   => '&#247;',
                        'oslash'   => '&#248;',
                        'ugrave'   => '&#249;',
                        'uacute'   => '&#250;',
                        'ucirc'    => '&#251;',
                        'uuml'     => '&#252;',
                        'yacute'   => '&#253;',
                        'thorn'    => '&#254;',
                        'yuml'     => '&#255;'

                        );
  // Entity not found? Destroy it.
  return isset($table[$matches[1]]) ? $table[$matches[1]] : '';
}
Diese Funktionen ersetzen die html-Entities, die in RSS-Feeds nicht vorgesehen sind, durch die erlaubten numerischen Entities.

Sie muss aufgerufen werden in prepareStringForOutput:

Code: Alles auswählen

function prepareStringForOutput($sIn, $sCode = 'ISO-8859-1') {
    $sIn = str_replace('&nbsp;', ' ', $sIn);
    $sIn = str_replace('&nbsp;', ' ', $sIn);
    $sIn = str_replace('&bull;', '-', $sIn);
    $sIn = str_replace('<br>', ' ', $sIn);
    $sIn = html_convert_entities($sIn);
//    $sIn = html_entity_decode($sIn, ENT_COMPAT, $sCode);
    return $sIn;
}
Dann Folgendes ändern:

Spider IT
Beiträge: 1416
Registriert: Fr 3. Dez 2004, 10:15

Re: RSS Feed Generator

Beitrag von Spider IT » Mo 21. Mai 2012, 08:50

Hallo Stefan,

danke dafür, obwohl die RSS-Prüfung von W3C bisher keine Fehler ausgegeben hat (nur Empfehlungen für zusätzlichen Angaben), siehe http://feed2.w3.org/check.cgi?url=http% ... odule.html
Die Codes werden übrigens durch die von dir auskommentierte Zeile in prepareStringForOutput() in richtige Zeichen umgewandelt, im Zeichensatz des Outputs, also kann auch da eigentlich kein Problem entstehen (ist auch zusätzlich alles in CDATA verpackt).
Ich werde das die Tage aber mal testen :)

Ist dein Beitrag unvollständig, oder warum endet er mit "Dann Folgendes ändern:" :?:

Gruß
René

derSteffen
Beiträge: 847
Registriert: Mi 14. Dez 2005, 16:15
Wohnort: Königs Wusterhausen bei Berlin
Kontaktdaten:

Re: RSS Feed Generator

Beitrag von derSteffen » Mo 11. Mär 2013, 19:50

Hallo

im Post http://forum.contenido.org/viewtopic.ph ... 35#p151310 vom 26.08.2011 wurde das Thema angesprochen den RSS Creator auch mit Hilfe der Content-Allocation zu füllen. Gab es dafür eine Lösung? Ich würde nämlich gerne sagen "Hauputajketgorie" "Unterkategorien einbeziehen" und dann die entsprechenden CA anzugeben uoder Artikelspezifikationen. Wäre ja nur eine Definition, und zwar "RSS".

Vielen Dank

MfG Steffen

Spider IT
Beiträge: 1416
Registriert: Fr 3. Dez 2004, 10:15

Re: RSS Feed Generator

Beitrag von Spider IT » Di 12. Mär 2013, 09:19

Hallo Steffen,

nein, da ist nichts weiter passiert, da habe ich auch nichts weiter gehört oder erhalten.
Schick mir doch am besten eine Mail mit etwas genauere Definition, dann schaue ich mir das am Wochenende mal an.

Gruß
René

steve04
Beiträge: 46
Registriert: Fr 5. Nov 2010, 20:26
Kontaktdaten:

Re: RSS Feed Generator

Beitrag von steve04 » Mo 26. Mai 2014, 10:19

Hallo,

ich verwende das Modul RSS Feed generator 2.11, um die Artikel einer Kategorie als RSS ausgeben zu lassen. Jetzt kommt auf mich die neue Anforderung zu, zusätzlich in einem weiteren Feed nur ausgewählte Artikel derselben Kategorie per RSS ausgeben zu lassen.

Meine erste Idee war, diesen Artikeln in der Eigenschaft Artikelspezifikation einen bestimmten Wert zuzuweisen, damit sie von den übrigen Artikeln zu unterscheiden sind.
Allerdings habe ich im Modul keine SQL-Selektion gefunden, über die ich die Artikelspezifikation oder andere Merkmale auf Artikelebene abfragen könnte.

Übersehe ich etwas? Hat jemand eine Idee?

Vielen Dank schon mal!
Stephan

Gesperrt