--- default-filters.php.~1.2.~ 2005-02-15 01:21:21.000000000 +0100 +++ default-filters.php 2005-04-28 17:09:13.665652487 +0200 @@ -63,6 +63,11 @@ add_filter('the_title_rss', 'strip_tags'); +// Deals with named entities for RSS feeds +add_filter('the_title_rss', 'filter_named_entities'); +add_filter('the_content', 'filter_named_entities'); +add_filter('the_excerpt_rss', 'filter_named_entities'); + add_filter('the_content', 'convert_smilies'); add_filter('the_content', 'convert_chars'); add_filter('the_content', 'wpautop'); --- functions-formatting.php 2005-04-28 17:12:55.842827850 +0200 +++ functions-formatting.php.old 2005-04-28 17:06:17.388907217 +0200 @@ -294,288 +294,6 @@ return $content; } - -/* - filter_named_entities - - Turns HTML named entities into numeric entities (useful for output that doesn't support named entities, e.g. RSS) - - @param text Text to be converted to numeric entities - @return Returns converted text - @author Dominique Hazael-Massieux (dom@w3.org) - @version v1.0 - @date April 28, 2006 - @license GPL v2.0 - @notes See also http://wordpress.org/support/topic.php?id=19421 - @changelog - --- 1.0 First Version -*/ - -function filter_named_entities($content) { - $html_named_entities_mapping = - array ( - // Obtained with: - // less /usr/share/xml/entities/xhtml/*.ent|grep '^\2,/' > /home/dom/data/2005/04/entities-table - "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, - "quot"=>34, - "amp"=>38, - "lt"=>60, - "gt"=>62, - "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, - ); - foreach($html_named_entities_mapping as $name => $value) { - $content=str_replace('&'.$name.';','&#'.$value.';',$content); - } - return $content; - -} - function funky_javascript_fix($text) { // Fixes for browsers' javascript bugs global $is_macIE, $is_winIE;