web commit by http://ccshan.myopenid.com/
[ikiwiki.git] / doc / patchqueue / meta_plugin_should_not_escape_title.mdwn
1 The meta plugin escapes the overridden title of a page, which makes the title doubly escaped in RSS feeds.
2 Instead, the meta plugin should not escape the overridden title, but the templates should escape the title (overridden or not) whenever needed.
3
4         === perl/IkiWiki/Plugin/meta.pm
5         ==================================================================
6         --- perl/IkiWiki/Plugin/meta.pm (revision 6730)
7         +++ perl/IkiWiki/Plugin/meta.pm (revision 6731)
8         @@ -122,7 +122,7 @@
9                 $template->param(meta => $meta{$page})
10                         if exists $meta{$page} && $template->query(name => "meta");
11                 if (exists $title{$page} && $template->query(name => "title")) {
12         -               $template->param(title => $title{$page});
13         +               $template->param(title => decode_entities($title{$page}));
14                         $template->param(title_overridden => 1);
15                 }
16                 $template->param(permalink => $permalink{$page})
17         === templates/recentchanges.tmpl
18         ==================================================================
19         --- templates/recentchanges.tmpl        (revision 6730)
20         +++ templates/recentchanges.tmpl        (revision 6731)
21         @@ -4,7 +4,7 @@
22          <head>
23          <base href="<TMPL_VAR BASEURL>" />
24          <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
25         -<title><TMPL_VAR TITLE></title>
26         +<title><TMPL_VAR TITLE ESCAPE=HTML></title>
27          <link rel="stylesheet" href="<TMPL_VAR BASEURL>style.css" type="text/css" />
28          <link rel="stylesheet" href="<TMPL_VAR BASEURL>local.css" type="text/css" />
29          <TMPL_IF NAME="FAVICON">
30         @@ -15,7 +15,7 @@
31          
32          <div class="header">
33          <span>
34         -<TMPL_VAR INDEXLINK>/ <span class="title"><TMPL_VAR TITLE></span>
35         +<TMPL_VAR INDEXLINK>/ <span class="title"><TMPL_VAR TITLE ESCAPE=HTML></span>
36          </span>
37          </div>
38          
39         === templates/inlinepage.tmpl
40         ==================================================================
41         --- templates/inlinepage.tmpl   (revision 6730)
42         +++ templates/inlinepage.tmpl   (revision 6731)
43         @@ -10,9 +10,9 @@
44          </TMPL_IF>
45          <span class="header">
46          <TMPL_IF NAME="PERMALINK">
47         -<a href="<TMPL_VAR PERMALINK>"><TMPL_VAR TITLE></a>
48         +<a href="<TMPL_VAR PERMALINK>"><TMPL_VAR TITLE ESCAPE=HTML></a>
49          <TMPL_ELSE>
50         -<a href="<TMPL_VAR PAGEURL>"><TMPL_VAR TITLE></a>
51         +<a href="<TMPL_VAR PAGEURL>"><TMPL_VAR TITLE ESCAPE=HTML></a>
52          </TMPL_IF>
53          </span>
54          <TMPL_VAR CONTENT>
55         === templates/misc.tmpl
56         ==================================================================
57         --- templates/misc.tmpl (revision 6730)
58         +++ templates/misc.tmpl (revision 6731)
59         @@ -4,7 +4,7 @@
60          <head>
61          <base href="<TMPL_VAR BASEURL>" />
62          <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
63         -<title><TMPL_VAR TITLE></title>
64         +<title><TMPL_VAR TITLE ESCAPE=HTML></title>
65          <link rel="stylesheet" href="<TMPL_VAR BASEURL>style.css" type="text/css" />
66          <link rel="stylesheet" href="<TMPL_VAR BASEURL>local.css" type="text/css" />
67          <TMPL_IF NAME="FAVICON">
68         @@ -15,7 +15,7 @@
69          
70          <div class="header">
71          <span>
72         -<TMPL_VAR INDEXLINK>/ <span class="title"><TMPL_VAR TITLE></span>
73         +<TMPL_VAR INDEXLINK>/ <span class="title"><TMPL_VAR TITLE ESCAPE=HTML></span>
74          </span>
75          </div>
76          
77         === templates/page.tmpl
78         ==================================================================
79         --- templates/page.tmpl (revision 6730)
80         +++ templates/page.tmpl (revision 6731)
81         @@ -3,7 +3,7 @@
82          <html>
83          <head>
84          <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
85         -<title><TMPL_VAR TITLE></title>
86         +<title><TMPL_VAR TITLE ESCAPE=HTML></title>
87          <TMPL_IF NAME="FAVICON">
88          <link rel="icon" href="<TMPL_VAR BASEURL><TMPL_VAR FAVICON>" type="image/x-icon" />
89          </TMPL_IF>
90         @@ -18,7 +18,7 @@
91          <span>
92          <span class="parentlinks"><TMPL_LOOP NAME="PARENTLINKS">
93          <a href="<TMPL_VAR NAME=URL>"><TMPL_VAR NAME=PAGE></a>/ 
94         -</TMPL_LOOP></span><span class="title"><TMPL_VAR TITLE></span>
95         +</TMPL_LOOP></span><span class="title"><TMPL_VAR TITLE ESCAPE=HTML></span>
96          </span>
97          <TMPL_IF NAME="SEARCHFORM">
98          <TMPL_VAR SEARCHFORM>
99         === templates/archivepage.tmpl
100         ==================================================================
101         --- templates/archivepage.tmpl  (revision 6730)
102         +++ templates/archivepage.tmpl  (revision 6731)
103         @@ -1,4 +1,4 @@
104          <p>
105          <i><TMPL_VAR CTIME></i>
106         -<a href="<TMPL_VAR PAGEURL>"><TMPL_VAR TITLE></a>
107         +<a href="<TMPL_VAR PAGEURL>"><TMPL_VAR TITLE ESCAPE=HTML></a>
108          </p>
109         === templates/titlepage.tmpl
110         ==================================================================
111         --- templates/titlepage.tmpl    (revision 6730)
112         +++ templates/titlepage.tmpl    (revision 6731)
113         @@ -1 +1 @@
114         -<p><a href="<TMPL_VAR PAGEURL>"><TMPL_VAR TITLE></a></p>
115         +<p><a href="<TMPL_VAR PAGEURL>"><TMPL_VAR TITLE ESCAPE=HTML></a></p>