<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>
<channel>
	<title>desenvolvimento para web &#187; wordpress</title>
	<atom:link href="http://desenvolvimentoparaweb.com/categoria/wordpress/feed/" rel="self" type="application/rss+xml" />
	<link>http://desenvolvimentoparaweb.com</link>
	<description>padrões da web, usabilidade, acessibilidade, web design, SEO, blogs e tecnologias para desenvolver a web</description>
	<lastBuildDate>Mon, 16 Aug 2010 13:00:14 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>URLs amig&#225;veis (slug) &#224; WordPress</title>
		<link>http://desenvolvimentoparaweb.com/php/urls-amigaveis-slug-a-wordpress/</link>
		<comments>http://desenvolvimentoparaweb.com/php/urls-amigaveis-slug-a-wordpress/#comments</comments>
		<pubDate>Mon, 12 Jul 2010 14:40:36 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[desenvolvimento]]></category>
		<category><![CDATA[programação]]></category>
		<category><![CDATA[projetos]]></category>
		<guid isPermaLink="false">http://desenvolvimentoparaweb.com/?p=652</guid>
		<description><![CDATA[Apenda a gerar URLs amig&aacute;veis como &eacute; feito no WordPress e implemente em seu sistema PHP]]></description>
			<content:encoded><![CDATA[<p><img src="http://desenvolvimentoparaweb.com/wp-content/uploads/2010/07/urls-amigaveis-slug-wordpress.jpg" alt="URLs amig&aacute;veis (slug) WordPress" title="" width="300" height="300" class="aligncenter size-full wp-image-653" /></p>
<p>O <strong>desenvolvimento web em WordPress</strong> &eacute; excelente! O CMS j&aacute; vem com diversas fun&ccedil;&otilde;es e funcionalidades para facilitar a vida de desenvolvedores e, at&eacute; mesmo, de pessoas que n&atilde;o tem o m&iacute;nimo conhecimento em programa&ccedil;&atilde;o (um dos objetivos &eacute; esse, mesmo).</p>
<p>Mas muitos desenvolvedores, principalmente os ainda incipientes, esquecem que o WordPress nada mais &eacute; do que <strong>PHP</strong>! Claro, o WP &eacute; nada mais, nada menos, que um sistema feito em PHP, como voc&ecirc; e eu poder&iacute;amos ter feito. Mas, por motivos que me fogem ao conhecimento, as pessoas esquecem isso&#8230; Talvez o n&iacute;vel de abstra&ccedil;&atilde;o em programa&ccedil;&atilde;o que o CMS proporcione seja o &#8220;culpado&#8221;, mas, sinceramente, n&atilde;o tenho certeza.</p>
<p>Ent&atilde;o, se voc&ecirc; tiver a curiosidade de vasculhar os arquivos PHP que fazem do WordPress o que ele &eacute;, vai ter uma grata surpresa e encontrar uma rica fonte de scripts, fun&ccedil;&otilde;es e funcionalidades que voc&ecirc; sempre quis implementar e n&atilde;o sabia como!  :-D</p>
<h3>URLs amig&aacute;ves &agrave; WordPress</h3>
<p>Por exemplo, muitos querem implementar uma estrutura de URLs amig&aacute;ves (gerar os famosos &#8220;slugs&#8221;) em sistemas desenvolvidos do zero  &#8211; seja atrav&eacute;s de frameworks ou em PHPU (&#8220;PHP Unha&#8221;) -, mas n&atilde;o sabem como. Ora, se sabemos que o WordPress possui um &oacute;timo sistema de gera&ccedil;&atilde;o de slugs e temos acesso a seu c&oacute;digo-fonte, tudo o que &eacute; preciso &eacute; vasculhar o c&oacute;digo-fonte e encontrar as fun&ccedil;&otilde;es certas.</p>
<p>Seguindo o exemplo de <strong>gerar slugs</strong>, procurando um pouco, &eacute; poss&iacute;vel saber que as fun&ccedil;&otilde;es necess&aacute;rias se encontram em <strong>/wp-includes/formatting.php</strong>. E, como era de se esperar, as fun&ccedil;&otilde;es est&atilde;o devidamente documentadas com seu escopo, par&acirc;metros e retorno. Precisa de mais?</p>
<p>Para gerar URLs amig&aacute;veis &agrave; WordPress, s&atilde;o necess&aacute;rias 4 fun&ccedil;&otilde;es. 3 &#8220;preliminares&#8221; que s&atilde;o:</p>
<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #009933; font-style: italic;">/**
 * Converts all accent characters to ASCII characters.
 *
 * If there are no accent characters, then the string given is just returned.
 *
 * @since 1.2.1
 *
 * @param string $string Text that might have accent characters
 * @return string Filtered string with replaced &quot;nice&quot; characters.
 */</span>
<span style="color: #000000; font-weight: bold;">function</span> remove_accents<span style="color: #009900;">&#40;</span><span style="color: #000088;">$string</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #339933;">!</span><span style="color: #990000;">preg_match</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'/[\x80-\xff]/'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$string</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span>
		<span style="color: #b1b100;">return</span> <span style="color: #000088;">$string</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span>seems_utf8<span style="color: #009900;">&#40;</span><span style="color: #000088;">$string</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #000088;">$chars</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
		<span style="color: #666666; font-style: italic;">// Decompositions for Latin-1 Supplement</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">128</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'A'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">129</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'A'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">130</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'A'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">131</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'A'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">132</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'A'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">133</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'A'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">135</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'C'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">136</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'E'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">137</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'E'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">138</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'E'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">139</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'E'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">140</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'I'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">141</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'I'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">142</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'I'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">143</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'I'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">145</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'N'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">146</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'O'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">147</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'O'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">148</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'O'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">149</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'O'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">150</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'O'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">153</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'U'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">154</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'U'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">155</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'U'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">156</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'U'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">157</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'Y'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">159</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'s'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">160</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'a'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">161</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'a'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">162</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'a'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">163</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'a'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">164</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'a'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">165</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'a'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">167</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'c'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">168</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'e'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">169</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'e'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">170</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'e'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">171</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'e'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">172</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'i'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">173</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'i'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">174</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'i'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">175</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'i'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">177</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'n'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">178</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'o'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">179</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'o'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">180</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'o'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">181</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'o'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">182</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'o'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">182</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'o'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">185</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'u'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">186</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'u'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">187</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'u'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">188</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'u'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">189</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'y'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">191</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'y'</span><span style="color: #339933;">,</span>
		<span style="color: #666666; font-style: italic;">// Decompositions for Latin Extended-A</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">128</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'A'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">129</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'a'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">130</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'A'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">131</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'a'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">132</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'A'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">133</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'a'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">134</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'C'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">135</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'c'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">136</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'C'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">137</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'c'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">138</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'C'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">139</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'c'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">140</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'C'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">141</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'c'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">142</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'D'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">143</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'d'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">144</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'D'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">145</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'d'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">146</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'E'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">147</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'e'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">148</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'E'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">149</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'e'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">150</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'E'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">151</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'e'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">152</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'E'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">153</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'e'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">154</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'E'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">155</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'e'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">156</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'G'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">157</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'g'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">158</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'G'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">159</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'g'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">160</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'G'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">161</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'g'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">162</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'G'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">163</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'g'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">164</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'H'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">165</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'h'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">166</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'H'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">167</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'h'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">168</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'I'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">169</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'i'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">170</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'I'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">171</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'i'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">172</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'I'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">173</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'i'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">174</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'I'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">175</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'i'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">176</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'I'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">177</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'i'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">178</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'IJ'</span><span style="color: #339933;">,</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">179</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'ij'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">180</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'J'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">181</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'j'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">182</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'K'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">183</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'k'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">184</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'k'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">185</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'L'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">186</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'l'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">187</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'L'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">188</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'l'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">189</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'L'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">190</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'l'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">191</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'L'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">128</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'l'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">129</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'L'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">130</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'l'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">131</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'N'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">132</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'n'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">133</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'N'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">134</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'n'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">135</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'N'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">136</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'n'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">137</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'N'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">138</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'n'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">139</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'N'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">140</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'O'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">141</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'o'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">142</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'O'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">143</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'o'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">144</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'O'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">145</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'o'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">146</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'OE'</span><span style="color: #339933;">,</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">147</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'oe'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">148</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'R'</span><span style="color: #339933;">,</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">149</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'r'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">150</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'R'</span><span style="color: #339933;">,</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">151</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'r'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">152</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'R'</span><span style="color: #339933;">,</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">153</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'r'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">154</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'S'</span><span style="color: #339933;">,</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">155</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'s'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">156</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'S'</span><span style="color: #339933;">,</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">157</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'s'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">158</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'S'</span><span style="color: #339933;">,</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">159</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'s'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">160</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'S'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">161</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'s'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">162</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'T'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">163</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'t'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">164</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'T'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">165</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'t'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">166</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'T'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">167</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'t'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">168</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'U'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">169</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'u'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">170</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'U'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">171</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'u'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">172</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'U'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">173</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'u'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">174</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'U'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">175</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'u'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">176</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'U'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">177</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'u'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">178</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'U'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">179</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'u'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">180</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'W'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">181</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'w'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">182</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'Y'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">183</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'y'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">184</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'Y'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">185</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'Z'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">186</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'z'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">187</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'Z'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">188</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'z'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">189</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'Z'</span><span style="color: #339933;">,</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">190</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'z'</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">191</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'s'</span><span style="color: #339933;">,</span>
		<span style="color: #666666; font-style: italic;">// Euro Sign</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">226</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">130</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">172</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'E'</span><span style="color: #339933;">,</span>
		<span style="color: #666666; font-style: italic;">// GBP (Pound) Sign</span>
		<span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">194</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">163</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">''</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #000088;">$string</span> <span style="color: #339933;">=</span> <span style="color: #990000;">strtr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$string</span><span style="color: #339933;">,</span> <span style="color: #000088;">$chars</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #666666; font-style: italic;">// Assume ISO-8859-1 if not UTF-8</span>
		<span style="color: #000088;">$chars</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'in'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">128</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">131</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">138</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">142</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">154</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">158</span><span style="color: #009900;">&#41;</span>
			<span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">159</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">162</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">165</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">181</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">192</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">193</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">194</span><span style="color: #009900;">&#41;</span>
			<span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">195</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">196</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">197</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">199</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">200</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">201</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">202</span><span style="color: #009900;">&#41;</span>
			<span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">203</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">204</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">205</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">206</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">207</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">209</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">210</span><span style="color: #009900;">&#41;</span>
			<span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">211</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">212</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">213</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">214</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">216</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">217</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">218</span><span style="color: #009900;">&#41;</span>
			<span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">219</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">220</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">221</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">224</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">225</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">226</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">227</span><span style="color: #009900;">&#41;</span>
			<span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">228</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">229</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">231</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">232</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">233</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">234</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">235</span><span style="color: #009900;">&#41;</span>
			<span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">236</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">237</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">238</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">239</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">241</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">242</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">243</span><span style="color: #009900;">&#41;</span>
			<span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">244</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">245</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">246</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">248</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">249</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">250</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">251</span><span style="color: #009900;">&#41;</span>
			<span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">252</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">253</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">255</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #000088;">$chars</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'out'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;EfSZszYcYuAAAAAACEEEEIIIINOOOOOOUUUUYaaaaaaceeeeiiiinoooooouuuuyy&quot;</span><span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #000088;">$string</span> <span style="color: #339933;">=</span> <span style="color: #990000;">strtr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$string</span><span style="color: #339933;">,</span> <span style="color: #000088;">$chars</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'in'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$chars</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'out'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #000088;">$double_chars</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'in'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">140</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">156</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">198</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">208</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">222</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">223</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">230</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">240</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">254</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #000088;">$double_chars</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'out'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'OE'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'oe'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'AE'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'DH'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'TH'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'ss'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'ae'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'dh'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'th'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #000088;">$string</span> <span style="color: #339933;">=</span> <span style="color: #990000;">str_replace</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$double_chars</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'in'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$double_chars</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'out'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$string</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #b1b100;">return</span> <span style="color: #000088;">$string</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>
<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>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
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #009933; font-style: italic;">/**
 * Checks to see if a string is utf8 encoded.
 *
 * NOTE: This function checks for 5-Byte sequences, UTF8
 *       has Bytes Sequences with a maximum length of 4.
 *
 * @author bmorel at ssi dot fr (modified)
 * @since 1.2.1
 *
 * @param string $str The string to be checked
 * @return bool True if $str fits a UTF-8 model, false otherwise.
 */</span>
<span style="color: #000000; font-weight: bold;">function</span> seems_utf8<span style="color: #009900;">&#40;</span><span style="color: #000088;">$str</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #000088;">$length</span> <span style="color: #339933;">=</span> <span style="color: #990000;">strlen</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$str</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$i</span><span style="color: #339933;">=</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span> <span style="color: #000088;">$i</span> <span style="color: #339933;">&lt;</span> <span style="color: #000088;">$length</span><span style="color: #339933;">;</span> <span style="color: #000088;">$i</span><span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #000088;">$c</span> <span style="color: #339933;">=</span> <span style="color: #990000;">ord</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$str</span><span style="color: #009900;">&#91;</span><span style="color: #000088;">$i</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$c</span> <span style="color: #339933;">&lt;</span> <span style="color: #208080;">0x80</span><span style="color: #009900;">&#41;</span> <span style="color: #000088;">$n</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;"># 0bbbbbbb
</span>		<span style="color: #b1b100;">elseif</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$c</span> <span style="color: #339933;">&amp;</span> <span style="color: #208080;">0xE0</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #208080;">0xC0</span><span style="color: #009900;">&#41;</span> <span style="color: #000088;">$n</span><span style="color: #339933;">=</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;"># 110bbbbb
</span>		<span style="color: #b1b100;">elseif</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$c</span> <span style="color: #339933;">&amp;</span> <span style="color: #208080;">0xF0</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #208080;">0xE0</span><span style="color: #009900;">&#41;</span> <span style="color: #000088;">$n</span><span style="color: #339933;">=</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;"># 1110bbbb
</span>		<span style="color: #b1b100;">elseif</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$c</span> <span style="color: #339933;">&amp;</span> <span style="color: #208080;">0xF8</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #208080;">0xF0</span><span style="color: #009900;">&#41;</span> <span style="color: #000088;">$n</span><span style="color: #339933;">=</span><span style="color: #cc66cc;">3</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;"># 11110bbb
</span>		<span style="color: #b1b100;">elseif</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$c</span> <span style="color: #339933;">&amp;</span> <span style="color: #208080;">0xFC</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #208080;">0xF8</span><span style="color: #009900;">&#41;</span> <span style="color: #000088;">$n</span><span style="color: #339933;">=</span><span style="color: #cc66cc;">4</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;"># 111110bb
</span>		<span style="color: #b1b100;">elseif</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$c</span> <span style="color: #339933;">&amp;</span> <span style="color: #208080;">0xFE</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #208080;">0xFC</span><span style="color: #009900;">&#41;</span> <span style="color: #000088;">$n</span><span style="color: #339933;">=</span><span style="color: #cc66cc;">5</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;"># 1111110b
</span>		<span style="color: #b1b100;">else</span> <span style="color: #b1b100;">return</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;"># Does not match any model
</span>		<span style="color: #b1b100;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$j</span><span style="color: #339933;">=</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span> <span style="color: #000088;">$j</span><span style="color: #339933;">&lt;</span><span style="color: #000088;">$n</span><span style="color: #339933;">;</span> <span style="color: #000088;">$j</span><span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span> <span style="color: #666666; font-style: italic;"># n bytes matching 10bbbbbb follow ?
</span>			<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">++</span><span style="color: #000088;">$i</span> <span style="color: #339933;">==</span> <span style="color: #000088;">$length</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">||</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">ord</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$str</span><span style="color: #009900;">&#91;</span><span style="color: #000088;">$i</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;</span> <span style="color: #208080;">0xC0</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">!=</span> <span style="color: #208080;">0x80</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
				<span style="color: #b1b100;">return</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
	<span style="color: #009900;">&#125;</span>
	<span style="color: #b1b100;">return</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>
<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>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
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #009933; font-style: italic;">/**
 * Encode the Unicode values to be used in the URI.
 *
 * @since 1.5.0
 *
 * @param string $utf8_string
 * @param int $length Max length of the string
 * @return string String with Unicode encoded for URI.
 */</span>
<span style="color: #000000; font-weight: bold;">function</span> utf8_uri_encode<span style="color: #009900;">&#40;</span> <span style="color: #000088;">$utf8_string</span><span style="color: #339933;">,</span> <span style="color: #000088;">$length</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #000088;">$unicode</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">''</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$values</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$num_octets</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$unicode_length</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #000088;">$string_length</span> <span style="color: #339933;">=</span> <span style="color: #990000;">strlen</span><span style="color: #009900;">&#40;</span> <span style="color: #000088;">$utf8_string</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$i</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span> <span style="color: #000088;">$i</span> <span style="color: #339933;">&lt;</span> <span style="color: #000088;">$string_length</span><span style="color: #339933;">;</span> <span style="color: #000088;">$i</span><span style="color: #339933;">++</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
		<span style="color: #000088;">$value</span> <span style="color: #339933;">=</span> <span style="color: #990000;">ord</span><span style="color: #009900;">&#40;</span> <span style="color: #000088;">$utf8_string</span><span style="color: #009900;">&#91;</span> <span style="color: #000088;">$i</span> <span style="color: #009900;">&#93;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #000088;">$value</span> <span style="color: #339933;">&lt;</span> <span style="color: #cc66cc;">128</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #000088;">$length</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #009900;">&#40;</span> <span style="color: #000088;">$unicode_length</span> <span style="color: #339933;">&gt;=</span> <span style="color: #000088;">$length</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span>
				<span style="color: #b1b100;">break</span><span style="color: #339933;">;</span>
			<span style="color: #000088;">$unicode</span> <span style="color: #339933;">.=</span> <span style="color: #990000;">chr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$value</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #000088;">$unicode_length</span><span style="color: #339933;">++;</span>
		<span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #990000;">count</span><span style="color: #009900;">&#40;</span> <span style="color: #000088;">$values</span> <span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #cc66cc;">0</span> <span style="color: #009900;">&#41;</span> <span style="color: #000088;">$num_octets</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span> <span style="color: #000088;">$value</span> <span style="color: #339933;">&lt;</span> <span style="color: #cc66cc;">224</span> <span style="color: #009900;">&#41;</span> ? <span style="color: #cc66cc;">2</span> <span style="color: #339933;">:</span> <span style="color: #cc66cc;">3</span><span style="color: #339933;">;</span>
&nbsp;
			<span style="color: #000088;">$values</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$value</span><span style="color: #339933;">;</span>
&nbsp;
			<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #000088;">$length</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #009900;">&#40;</span> <span style="color: #000088;">$unicode_length</span> <span style="color: #339933;">+</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$num_octets</span> <span style="color: #339933;">*</span> <span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span> <span style="color: #339933;">&gt;</span> <span style="color: #000088;">$length</span> <span style="color: #009900;">&#41;</span>
				<span style="color: #b1b100;">break</span><span style="color: #339933;">;</span>
			<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #990000;">count</span><span style="color: #009900;">&#40;</span> <span style="color: #000088;">$values</span> <span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #000088;">$num_octets</span> <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
				<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$num_octets</span> <span style="color: #339933;">==</span> <span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
					<span style="color: #000088;">$unicode</span> <span style="color: #339933;">.=</span> <span style="color: #0000ff;">'%'</span> <span style="color: #339933;">.</span> <span style="color: #990000;">dechex</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$values</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'%'</span> <span style="color: #339933;">.</span> <span style="color: #990000;">dechex</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$values</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'%'</span> <span style="color: #339933;">.</span> <span style="color: #990000;">dechex</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$values</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
					<span style="color: #000088;">$unicode_length</span> <span style="color: #339933;">+=</span> <span style="color: #cc66cc;">9</span><span style="color: #339933;">;</span>
				<span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #009900;">&#123;</span>
					<span style="color: #000088;">$unicode</span> <span style="color: #339933;">.=</span> <span style="color: #0000ff;">'%'</span> <span style="color: #339933;">.</span> <span style="color: #990000;">dechex</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$values</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'%'</span> <span style="color: #339933;">.</span> <span style="color: #990000;">dechex</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$values</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
					<span style="color: #000088;">$unicode_length</span> <span style="color: #339933;">+=</span> <span style="color: #cc66cc;">6</span><span style="color: #339933;">;</span>
				<span style="color: #009900;">&#125;</span>
&nbsp;
				<span style="color: #000088;">$values</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				<span style="color: #000088;">$num_octets</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">;</span>
			<span style="color: #009900;">&#125;</span>
		<span style="color: #009900;">&#125;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #b1b100;">return</span> <span style="color: #000088;">$unicode</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>
<p>E, com essas fun&ccedil;&otilde;es devidamente estabelecidas, a fun&ccedil;&atilde;o que gera os slugs, propriamente dita:</p>
<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>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
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #009933; font-style: italic;">/**
 * Sanitizes title, replacing whitespace with dashes.
 *
 * Limits the output to alphanumeric characters, underscore (_) and dash (-).
 * Whitespace becomes a dash.
 *
 * @since 1.2.0
 *
 * @param string $title The title to be sanitized.
 * @return string The sanitized title.
 */</span>
<span style="color: #000000; font-weight: bold;">function</span> sanitize_title_with_dashes<span style="color: #009900;">&#40;</span><span style="color: #000088;">$title</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #000088;">$title</span> <span style="color: #339933;">=</span> <span style="color: #990000;">strip_tags</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$title</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #666666; font-style: italic;">// Preserve escaped octets.</span>
	<span style="color: #000088;">$title</span> <span style="color: #339933;">=</span> <span style="color: #990000;">preg_replace</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'|%([a-fA-F0-9][a-fA-F0-9])|'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'---$1---'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$title</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #666666; font-style: italic;">// Remove percent signs that are not part of an octet.</span>
	<span style="color: #000088;">$title</span> <span style="color: #339933;">=</span> <span style="color: #990000;">str_replace</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'%'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">''</span><span style="color: #339933;">,</span> <span style="color: #000088;">$title</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #666666; font-style: italic;">// Restore octets.</span>
	<span style="color: #000088;">$title</span> <span style="color: #339933;">=</span> <span style="color: #990000;">preg_replace</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'|---([a-fA-F0-9][a-fA-F0-9])---|'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'%$1'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$title</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #000088;">$title</span> <span style="color: #339933;">=</span> remove_accents<span style="color: #009900;">&#40;</span><span style="color: #000088;">$title</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span>seems_utf8<span style="color: #009900;">&#40;</span><span style="color: #000088;">$title</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">function_exists</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'mb_strtolower'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #000088;">$title</span> <span style="color: #339933;">=</span> <span style="color: #990000;">mb_strtolower</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$title</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'UTF-8'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
		<span style="color: #000088;">$title</span> <span style="color: #339933;">=</span> utf8_uri_encode<span style="color: #009900;">&#40;</span><span style="color: #000088;">$title</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">200</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000088;">$title</span> <span style="color: #339933;">=</span> <span style="color: #990000;">strtolower</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$title</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$title</span> <span style="color: #339933;">=</span> <span style="color: #990000;">preg_replace</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'/&amp;.+?;/'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">''</span><span style="color: #339933;">,</span> <span style="color: #000088;">$title</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// kill entities</span>
	<span style="color: #000088;">$title</span> <span style="color: #339933;">=</span> <span style="color: #990000;">str_replace</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'.'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'-'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$title</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$title</span> <span style="color: #339933;">=</span> <span style="color: #990000;">preg_replace</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'/[^%a-z0-9 _-]/'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">''</span><span style="color: #339933;">,</span> <span style="color: #000088;">$title</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$title</span> <span style="color: #339933;">=</span> <span style="color: #990000;">preg_replace</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'/\s+/'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'-'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$title</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$title</span> <span style="color: #339933;">=</span> <span style="color: #990000;">preg_replace</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'|-+|'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'-'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$title</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$title</span> <span style="color: #339933;">=</span> <span style="color: #990000;">trim</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$title</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'-'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #b1b100;">return</span> <span style="color: #000088;">$title</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>
<p>Ent&atilde;o, para gerar um slug em seu pr&oacute;prio sistema depois de implementar as fun&ccedil;&otilde;es mostradas, basta escrever:</p>
<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="php" style="font-family:monospace;">sanitize_title_with_dashes<span style="color: #009900;">&#40;</span><span style="color: #000088;">$var</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>
<p>Achou o nome da fun&ccedil;&atilde;o grande ou feio? Voc&ecirc; tem o c&oacute;digo, altere como bem entender!</p>
<h3>Considera&ccedil;&otilde;es finais</h3>
<p>O WordPress &eacute; <strong>software livre</strong> (registrado sob a licen&ccedil;a <a href="http://pt.wikipedia.org/wiki/GNU_General_Public_License">GPL</a>), ent&atilde;o voc&ecirc; pode pegar essas 4 fun&ccedil;&otilde;es e implementar em seu site/sistema/softwares sem o medo de receber uma cartinha do advogado da equipe WordPress amanh&atilde; ou depois.</p>
<p>Fica uma pergunta: voc&ecirc; tem um software livre &agrave; disposi&ccedil;&atilde;o e fica quebrando a cabe&ccedil;a em busca de solu&ccedil;&otilde;es de c&oacute;digo que j&aacute; existem e est&atilde;o implementadas nele? Vasculhe todo o c&oacute;digo fonte (veja alguns recursos que ajudam no artigo sobre <a href="/indicacoes/ferramentas-e-recursos-para-desenvolvimento-web/">ferramentas e recursos para desenvolvimento web</a>) e procure por aquilo que vai lhe ser &uacute;til!</p>
<p>N&atilde;o seja t&iacute;mido!  ;-)</p>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li><a href="http://desenvolvimentoparaweb.com/miscelanea/jetpack-explorando-novas-maneiras-de-ampliar-e-personalizar-a-web/" title="Jetpack: explorando novas maneiras de ampliar e personalizar a web">Jetpack: explorando novas maneiras de ampliar e personalizar a web</a></li><li><a href="http://desenvolvimentoparaweb.com/php/dicas-para-otimizar-codigos-php/" title="Dicas para otimizar códigos PHP">Dicas para otimizar códigos PHP</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/como-montar-um-portfolio-sem-ter-clientes/" title="Como montar um portfolio sem ter clientes">Como montar um portfolio sem ter clientes</a></li><li><a href="http://desenvolvimentoparaweb.com/php/swift-mailer-solucao-php-para-envio-de-e-mails/" title="Swift Mailer: solução PHP para envio de e-mails">Swift Mailer: solução PHP para envio de e-mails</a></li><li><a href="http://desenvolvimentoparaweb.com/php/como-pegar-parte-do-conteudo-dados-de-outro-site-com-php/" title="Como pegar parte do conteúdo (dados) de outro site com PHP">Como pegar parte do conteúdo (dados) de outro site com PHP</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/otimizacao-wordpress-performance-desempenho-blog-site/" title="Otimização WordPress: aumente a performance e desempenho de seu blog / site">Otimização WordPress: aumente a performance e desempenho de seu blog / site</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/8-dicas-fazer-codigos-melhores-jquery/" title="8 dicas para fazer códigos melhores com jQuery">8 dicas para fazer códigos melhores com jQuery</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/truques-de-configuracao-do-wordpress/" title="Truques de configuração do WordPress">Truques de configuração do WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/sobre-parcerias-de-trabalhos-de-desenvolvimento-web/" title="Sobre parcerias de trabalhos em desenvolvimento web">Sobre parcerias de trabalhos em desenvolvimento web</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/como-criar-sumarios-dinamicamente-com-o-toc-table-of-contents-jquery-plugin-jquerytoc/" title="Como criar sumários dinamicamente com o TOC (Table of Contents) jQuery plugin">Como criar sumários dinamicamente com o TOC (Table of Contents) jQuery plugin</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/php/urls-amigaveis-slug-a-wordpress/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>15 fant&#225;sticos comandos SQL para WordPress</title>
		<link>http://desenvolvimentoparaweb.com/wordpress/15-comandos-sql-wordpress/</link>
		<comments>http://desenvolvimentoparaweb.com/wordpress/15-comandos-sql-wordpress/#comments</comments>
		<pubDate>Mon, 24 May 2010 13:00:50 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[sql]]></category>
		<guid isPermaLink="false">http://desenvolvimentoparaweb.com/?p=626</guid>
		<description><![CDATA[Comandos SQL para WordPress para ajudar com quest&otilde;es do dia-a-dia do trabalho com WP]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-628" title="comandos-sql-wordpress" src="http://desenvolvimentoparaweb.com/wp-content/uploads/2010/05/comandos-sql-wordpress.gif" alt="Comandos SQL para WordPress" width="150" height="150" /></p>
<p>Para quem faz uso um pouco mais avan&ccedil;ado do <a href="http://desenvolvimentoparaweb.com/categoria/wordpress/">WordPress</a>, especialmente quem trabalha desenvolvendo sites com a plataforma, &eacute; bem comum aparecerem situa&ccedil;&otilde;es um tanto complexas. Para estas quest&otilde;es, seguem <strong>13 fant&aacute;sticos comandos SQL para WordPress</strong>!</p>
<div class="artigo-traduzido">Este &eacute; um artigo traduzido do original &#8220;<a title="Ler o artigo original" href="http://www.onextrapixel.com/2010/01/30/13-useful-wordpress-sql-queries-you-wish-you-knew-earlier/">13 Useful WordPress SQL Queries You Wish You Knew Earlier</a>&#8220;, do blog <a href="http://www.onextrapixel.com/">Onextrapixel</a>, e sofreu algumas adapta&ccedil;&otilde;es.</div>
<p>Uma maneira pr&aacute;tica de executar comandos SQL &eacute; atrav&eacute;s do phpMyAdmin. At&eacute; a hospedagem mais b&aacute;sica d&aacute; acesso &agrave; ferramenta de banco de dados, ent&atilde;o n&atilde;o h&aacute; dificuldades nisso. Uma vez no sistema, voc&ecirc; deve selecionar aba &#8220;SQL&#8221; e escrever/colar a instru&ccedil;&atilde;o SQL que deseja executar.</p>
<p><img class="aligncenter size-full wp-image-627" src="http://desenvolvimentoparaweb.com/wp-content/uploads/2010/05/13-comandos-sql-wordpress-phpmyadmin.jpg" alt="13 fant&aacute;sticos comandos SQL para WordPress: aba SQL do phpMyAdmin" width="580" height="263" /></p>
<div class="atencao">Os comandos SQL para WordPress a seguir s&atilde;o para o prefixo padr&atilde;o do WordPress &#8220;wp_&#8221;. Caso o prefixo de suas tabelas seja diferente (o que &eacute; recomendado, por quest&otilde;es de seguran&ccedil;a), fa&ccedil;a os devidos complementos necess&aacute;rios &agrave;s queries.</div>
<h3>Alterar siteurl e homeurl</h3>
<p>WordPress armazena o caminho absoluto da URL do site (&#8220;siteurl&#8221;) e URL da home (&#8220;homeurl&#8221;) no banco de dados. Portanto, se voc&ecirc; transferir o seu site WordPress do localhost para o servidor, por exemplo, o site n&atilde;o vai carregar! Isso ocorre porque o caminho absoluto ainda est&aacute; apontando para o seu localhost. Voc&ecirc; vai precisar executar um comando para resolver isso.</p>
<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">UPDATE</span> wp_options
<span style="color: #993333; font-weight: bold;">SET</span> option_value <span style="color: #66cc66;">=</span> <span style="color: #993333; font-weight: bold;">REPLACE</span><span style="color: #66cc66;">&#40;</span>option_value<span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'http://www.enderecoantigo.com'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'http://www.endereconovo.com'</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #993333; font-weight: bold;">WHERE</span> option_name <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'home'</span>
<span style="color: #993333; font-weight: bold;">OR</span> option_name <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'siteurl'</span>;</pre></div></div>
<h3>Alterar GUID</h3>
<p>Depois de migrar seu blog a partir de, por exemplo, localhost, para o servidor ou de um outro dom&iacute;nio para um novo dom&iacute;nio, voc&ecirc; ter&aacute; que corrigir as URLs para o campo GUID na tabela wp_posts. Isto &eacute; crucial, porque GUID &eacute; usado para montar o slug de seu post do caminho absoluto do artigo correto.</p>
<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">UPDATE</span> wp_posts
<span style="color: #993333; font-weight: bold;">SET</span> guid <span style="color: #66cc66;">=</span> <span style="color: #993333; font-weight: bold;">REPLACE</span> <span style="color: #66cc66;">&#40;</span>guid<span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'http://www.enderecoantigo.com'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'http://www.endereconovo.com'</span><span style="color: #66cc66;">&#41;</span>;</pre></div></div>
<h3>Alterar URL no conte&uacute;do</h3>
<p>O WordPress utiliza caminhos absolutos no URL ao inv&eacute;s de um caminho relativo quando vai armazen&aacute;-los no banco de dados. Dentro do conte&uacute;do de cada registro de artigo, ele armazena todas as URLs antigas referenciando as fontes antigas. Portanto, voc&ecirc; precisar&aacute; alterar todas essas URLs com o endere&ccedil;o do novo dom&iacute;nio.</p>
<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">UPDATE</span> wp_posts
<span style="color: #993333; font-weight: bold;">SET</span> post_content <span style="color: #66cc66;">=</span> <span style="color: #993333; font-weight: bold;">REPLACE</span> <span style="color: #66cc66;">&#40;</span>post_content<span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'http://www.enderecoantigo.com'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'http://www.endereconovo.com'</span><span style="color: #66cc66;">&#41;</span>;</pre></div></div>
<h3>Alterar apenas o caminho das imagens</h3>
<p>Caso seja preciso alterar o dom&iacute;nio das imagens inseridas nas p&aacute;ginas e artigos, esta solu&ccedil;&atilde;o vai ajudar voc&ecirc; a fazer isso de forma simples.</p>
<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">UPDATE</span> wp_posts
<span style="color: #993333; font-weight: bold;">SET</span> post_content <span style="color: #66cc66;">=</span> <span style="color: #993333; font-weight: bold;">REPLACE</span> <span style="color: #66cc66;">&#40;</span>post_content<span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'src=&quot;http://www.enderecoantigo.com'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'src=&quot;http://www.endereconovo.com'</span><span style="color: #66cc66;">&#41;</span>;</pre></div></div>
<p>Tamb&eacute;m &eacute; preciso atualizar o GUID para o tipo &#8220;attachment&#8221; com a seguinte instru&ccedil;&atilde;o SQL:</p>
<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">UPDATE</span> wp_posts
<span style="color: #993333; font-weight: bold;">SET</span> guid <span style="color: #66cc66;">=</span> <span style="color: #993333; font-weight: bold;">REPLACE</span> <span style="color: #66cc66;">&#40;</span>guid<span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'http://www.enderecoantigo.com'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'http://www.endereconovo.com'</span><span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">WHERE</span> post_type <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'attachment'</span>;</pre></div></div>
<h3>Atualizar Post Meta</h3>
<p>Atualizar Post Meta funciona quase da mesma maneira como atualizar a URL no conte&uacute;do do post. Se voc&ecirc; tiver dados extras para cada post, voc&ecirc; pode usar a seguinte instru&ccedil;&atilde;o para alterar todos eles.</p>
<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">UPDATE</span> wp_postmeta
<span style="color: #993333; font-weight: bold;">SET</span> meta_value <span style="color: #66cc66;">=</span> <span style="color: #993333; font-weight: bold;">REPLACE</span> <span style="color: #66cc66;">&#40;</span>meta_value<span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'http://www.enderecoantigo.com'</span><span style="color: #66cc66;">,</span><span style="color: #ff0000;">'http://www.endereconovo.com'</span><span style="color: #66cc66;">&#41;</span>;</pre></div></div>
<h3>Alterar o nome usu&aacute;rio padr&atilde;o &#8220;admin&#8221;</h3>
<p>Apesar de que na vers&atilde;o 3 do WordPress o usu&aacute;rio &#8220;admin&#8221; poder&aacute; ser alterado no momento da instala&ccedil;&atilde;o, n&atilde;o custa deixar para a posteridade a dica de como alterar o nome do &#8220;admin&#8221;.</p>
<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">UPDATE</span> wp_users
<span style="color: #993333; font-weight: bold;">SET</span> user_login <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'nomequevocequiser'</span>
<span style="color: #993333; font-weight: bold;">WHERE</span> user_login <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'Admin'</span>;</pre></div></div>
<h3>Resetar password</h3>
<p>J&aacute; quis resetar sua senha no WordPress mas, por algum motivo, n&atilde;o conseguiu usar a se&ccedil;&atilde;o para resetar o password? Eis a solu&ccedil;&atilde;o:</p>
<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">UPDATE</span> wp_users
<span style="color: #993333; font-weight: bold;">SET</span> user_pass <span style="color: #66cc66;">=</span> MD5<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'senha'</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #993333; font-weight: bold;">WHERE</span> user_login <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'login'</span>;</pre></div></div>
<h3>Transferir artigos de um autor para outro</h3>
<p>Para transferir os artigos de um autor para outro, voc&ecirc; gasta um tempo enorme se fizer isso manualmente. Com o comando SQL a seguir, &eacute; poss&iacute;vel fazer isso facilmente. Para a dica, &eacute; preciso <a href="http://www.google.com.br/search?q=obtain+author+id+wordpress">saber o ID dos autores</a>.</p>
<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">UPDATE</span> wp_posts
<span style="color: #993333; font-weight: bold;">SET</span> post_author <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'id_novo_autor'</span>
<span style="color: #993333; font-weight: bold;">WHERE</span> post_author <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'id_autor_antigo'</span>;</pre></div></div>
<h3>Apagar revis&otilde;es</h3>
<p>Quando se est&aacute; editando um artigo no WordPress, &eacute; comum c&oacute;pias de seguran&ccedil;a serem feitas para garantir o trabalho feito. S&atilde;o as chamadas &#8220;revis&otilde;es&#8221;. Com o tempo, o n&uacute;mero de registros de revis&otilde;es fica grande e isso pode comprometer a performance do banco de dados. Para apagar todas as revis&otilde;es de artigos, d&ecirc; o seguinte comando SQL:</p>
<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">DELETE</span> a<span style="color: #66cc66;">,</span>b<span style="color: #66cc66;">,</span>c <span style="color: #993333; font-weight: bold;">FROM</span> wp_posts a
<span style="color: #993333; font-weight: bold;">LEFT</span> <span style="color: #993333; font-weight: bold;">JOIN</span> wp_term_relationships b <span style="color: #993333; font-weight: bold;">ON</span> <span style="color: #66cc66;">&#40;</span>a<span style="color: #66cc66;">.</span>ID <span style="color: #66cc66;">=</span> b<span style="color: #66cc66;">.</span>object_id<span style="color: #66cc66;">&#41;</span>
<span style="color: #993333; font-weight: bold;">LEFT</span> <span style="color: #993333; font-weight: bold;">JOIN</span> wp_postmeta c <span style="color: #993333; font-weight: bold;">ON</span> <span style="color: #66cc66;">&#40;</span>a<span style="color: #66cc66;">.</span>ID <span style="color: #66cc66;">=</span> c<span style="color: #66cc66;">.</span>post_id<span style="color: #66cc66;">&#41;</span>
<span style="color: #993333; font-weight: bold;">WHERE</span> a<span style="color: #66cc66;">.</span>post_type <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'revision'</span></pre></div></div>
<h3>Apagar post meta</h3>
<p>Instalar e remover plugins &eacute; algo corriqueiro quando se trabalha com WordPress. Alguns plugins precisam de criar alguns post meta para funcionarem corretamente e, para esses casos, n&atilde;o &eacute; raro o acontecimento de, mesmo depois de o plugin ser desinstalado, algum &#8220;garbage meta&#8221; ficar enchendo o BD desnecessariamente. Uma limpeza em algum valor de post meta, &agrave;s vezes, se faz necess&aacute;ria.</p>
<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">DELETE</span> <span style="color: #993333; font-weight: bold;">FROM</span> wp_postmeta
<span style="color: #993333; font-weight: bold;">WHERE</span> meta_key <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'nome-chave-meta'</span>;</pre></div></div>
<h3>Exportar todos os e-mails de coment&aacute;rios</h3>
<p>Quanto mais tempo seu blog/site fica no ar, &eacute; prov&aacute;vel que mais coment&aacute;rios receba nos artigos publicados. Se, por algum motivo, for preciso uma listagem com e-mail de todas as pessoas que j&aacute; comentaram at&eacute; ent&atilde;o, basta executar o seguinte comando:</p>
<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> <span style="color: #993333; font-weight: bold;">DISTINCT</span> comment_author_email
<span style="color: #993333; font-weight: bold;">FROM</span> wp_comments;</pre></div></div>
<p>Uma vez que a listagem esteja conclu&iacute;da, exporte tudo atrav&eacute;s do phpMyAdmin.</p>
<h3>Apagar todos pingbacks</h3>
<p>A medida que o site/blog fica no ar &#8211; e se voc&ecirc; tiver bom conte&uacute;do a oferecer &#8211; o n&uacute;mero de pingbacks come&ccedil;a a influenciar a qualidade do banco de dados. Para apagar todos pingbacks, proceda da seguinte maneira:</p>
<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">DELETE</span> <span style="color: #993333; font-weight: bold;">FROM</span> wp_comments <span style="color: #993333; font-weight: bold;">WHERE</span> comment_type <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'pingback'</span>;</pre></div></div>
<h3>Apagar todos coment&aacute;rios de SPAM</h3>
<p>Sem maiores explica&ccedil;&otilde;es, eis a maneira de deletar todos os coment&aacute;rios marcados como SPAM:</p>
<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">DELETE</span> <span style="color: #993333; font-weight: bold;">FROM</span> wp_comments
<span style="color: #993333; font-weight: bold;">WHERE</span> comment_approved <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'spam'</span>;</pre></div></div>
<h3>Identificar tags n&atilde;o usadas</h3>
<p>Num banco de dados WordPress, se voc&ecirc; executar alguma query SQL para apagar posts, as tags relacionadas n&atilde;o ser&atilde;o apagadas e continuar&atilde;o aparecendo na nuvem de sugest&atilde;o de tags e listagem de tags. Para identificar esse tipo de tag, execute a seguinte instru&ccedil;&atilde;o SQL:</p>
<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> wp_terms wt
<span style="color: #993333; font-weight: bold;">INNER</span> <span style="color: #993333; font-weight: bold;">JOIN</span> wp_term_taxonomy wtt
<span style="color: #993333; font-weight: bold;">ON</span> wt<span style="color: #66cc66;">.</span>term_id<span style="color: #66cc66;">=</span>wtt<span style="color: #66cc66;">.</span>term_id
<span style="color: #993333; font-weight: bold;">WHERE</span> wtt<span style="color: #66cc66;">.</span>taxonomy<span style="color: #66cc66;">=</span><span style="color: #ff0000;">'post_tag'</span>
<span style="color: #993333; font-weight: bold;">AND</span> wtt<span style="color: #66cc66;">.</span>count<span style="color: #66cc66;">=</span><span style="color: #cc66cc;">0</span>;</pre></div></div>
<div class="atencao">Lembre-se: &eacute; sempre bom fazer um backup completo de seu banco de dados antes de executar queries SQL (principalmente se voc&ecirc; n&atilde;o souber muito bem o que est&aacute; fazendo)!</div>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li><a href="http://desenvolvimentoparaweb.com/xhtml/textarea-dicas-truques-textarea/" title="Textarea: dicas e truques que você sempre quis saber">Textarea: dicas e truques que você sempre quis saber</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/como-criar-sumarios-dinamicamente-com-o-toc-table-of-contents-jquery-plugin-jquerytoc/" title="Como criar sumários dinamicamente com o TOC (Table of Contents) jQuery plugin">Como criar sumários dinamicamente com o TOC (Table of Contents) jQuery plugin</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/preciosas-dicas-de-seguranca-e-otimizacao-para-wordpress/" title="Preciosas dicas de segurança e otimização para WordPress">Preciosas dicas de segurança e otimização para WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/seo/erros-comuns-desenvolvimento-web-campanhas-seo/" title="Erros comuns em desenvolvimento web para campanhas de SEO">Erros comuns em desenvolvimento web para campanhas de SEO</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/melhorando-interacao-formularios-busca/" title="Melhorando a interação em formulários de busca">Melhorando a interação em formulários de busca</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/8-maneiras-de-melhorar-a-performance-de-um-site/" title="8 maneiras de melhorar a performance de um site">8 maneiras de melhorar a performance de um site</a></li><li><a href="http://desenvolvimentoparaweb.com/usabilidade/ferramentas-criacao-wireframes/" title="Ferramentas para criação de wireframes">Ferramentas para criação de wireframes</a></li><li><a href="http://desenvolvimentoparaweb.com/usabilidade/recursos-usabilidade/" title="Recursos de usabilidade grátis">Recursos de usabilidade grátis</a></li><li><a href="http://desenvolvimentoparaweb.com/usabilidade/user-interface-dicas-rapidas/" title="User Interface em dicas rápidas">User Interface em dicas rápidas</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/otimizacao-wordpress-performance-desempenho-blog-site/" title="Otimização WordPress: aumente a performance e desempenho de seu blog / site">Otimização WordPress: aumente a performance e desempenho de seu blog / site</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/wordpress/15-comandos-sql-wordpress/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Otimiza&#231;&#227;o WordPress: aumente a performance e desempenho de seu blog / site</title>
		<link>http://desenvolvimentoparaweb.com/wordpress/otimizacao-wordpress-performance-desempenho-blog-site/</link>
		<comments>http://desenvolvimentoparaweb.com/wordpress/otimizacao-wordpress-performance-desempenho-blog-site/#comments</comments>
		<pubDate>Mon, 25 Jan 2010 12:17:19 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[.htaccess]]></category>
		<category><![CDATA[desempenho]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[plugins]]></category>
		<guid isPermaLink="false">http://www.desenvolvimentoparaweb.com/?p=526</guid>
		<description><![CDATA[Confira dicas de resultado garantido!]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2010/01/otimizacao-wordpress-performance-desempenho-blog-site.jpg"><img class="aligncenter size-full wp-image-527" src="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2010/01/otimizacao-wordpress-performance-desempenho-blog-site.jpg" alt="" width="300" height="300" /></a></p>
<p>H&aacute; muitas dicas &uacute;teis na <em>internet </em>sobre <strong>como otimizar seu <em>blog </em>Wordpress</strong>. Algumas delas s&atilde;o boas, mas dif&iacute;ceis de serem implementadas pelo &#8220;usu&aacute;rio m&eacute;dio&#8221;. Da experi&ecirc;ncia advinda da blogagem &eacute; poss&iacute;vel saber de dicas para tornar seu <em>site </em>mais r&aacute;pido e com melhor desempenho e performance.</p>
<p>&Eacute; interessante que um <em>web designer</em>/desenvolvedor tenha em sua m&aacute;quina o <a href="https://addons.mozilla.org/pt-BR/firefox/addon/1843">Firebug</a> e <a href="https://addons.mozilla.org/pt-BR/firefox/addon/60">Web Developer Toolbar</a>, duas das mais importantes ferramentas de depura&ccedil;&atilde;o em <strong>desenvolvimento web</strong>. Tamb&eacute;m tenha em mente que este artigo &eacute; dedicado, principalmente, aos sem possibilidade de configurar o PHP e MySQL diretamente, devido a condicionalismos e/ou restri&ccedil;&otilde;es de hospedagem.</p>
<div class="artigo-traduzido">Este &eacute; um artigo traduzido do original &#8220;<a href="http://www.graphicrating.com/2008/12/07/speed-up-your-wordpress-blog/">Speed-up Your Wordpress Blog</a>&#8220;, do blog <a href="http://www.graphicrating.com/">Graphic Rating</a>, e sofreu algumas adapta&ccedil;&otilde;es.</div>
<h3>Otimize seu c&oacute;digo HTML dentro de seu template</h3>
<p>Esta &eacute; uma etapa que, geralmente, n&atilde;o &eacute; considerada importante quando, na verdade, deveria estar no topo de sua lista! &Eacute; muito importante que seu c&oacute;digo HTML esteja validado e que voc&ecirc; n&atilde;o tenha c&oacute;digo redundante. Certifique-se que seu tema &eacute; escrito com uma quantidade m&iacute;nima de c&oacute;digo poss&iacute;vel. N&atilde;o fa&ccedil;a uso abusivo de <em>tags </em>como <strong>div</strong> e <strong>span</strong>.</p>
<h3>Comprima seu CSS</h3>
<p>Para que seu <em>site </em>seja mais r&aacute;pido e de melhor performance e desempenho, existem v&aacute;rios truques que voc&ecirc; pode aplicar no CSS, dentre eles:</p>
<ul>
<li><strong>Usar declara&ccedil;&otilde;es &uacute;nicas no CSS.</strong> Voc&ecirc; pode usar <a href="http://leonardocaineli.com.br/utilizando-a-declaracao-unica-no-seu-css/">declara&ccedil;&atilde;o &uacute;nica</a> para <em>margin</em>, <em>padding</em>, <em>background</em>, <em>border</em>, <em>font </em>e <em>list-style</em>.</li>
<li><strong>Usar nomes pequenos em classes e IDs.</strong> Cada letra conta para o tempo de resposta do <em>site</em>. Por isso, &eacute; &uacute;til para o tamanho do CSS usar nomes simples e mais curtos ao inv&eacute;s de longos e descritivos nomes.</li>
<li><strong>Evitar seletores complexos.</strong> Tente fazer com que seus seletores sejam eficientes utilizando a maneira mais simples que for poss&iacute;vel.</li>
<li><strong>Comprimir seu CSS.</strong> Depois que seu arquivo CSS estiver pronto, voc&ecirc; pode ganhar velocidade adicional usando um compressor de CSS <em>online </em>- lembre-se de <strong>sempre</strong> ter um arquivo de <em>backup </em>com o c&oacute;digo original.</li>
</ul>
<h3>Utilize Sprites CSS</h3>
<p>Ao inv&eacute;s de usar v&aacute;rios arquivos de imagem no seu <em>site/blog</em>, experimente reunir o maior n&uacute;mero poss&iacute;vel de elementos gr&aacute;ficos em uma &uacute;nica imagem. Ent&atilde;o usando a propriedade CSS <em>background</em>, voc&ecirc; pode exibir os elements que quiser &#8211; essa &eacute; a t&eacute;cnica de <a href="http://www.google.com.br/search?q=css+sprites">CSS Sprites</a>.</p>
<p>No caso dos <em>Sprites CSS</em>, o tamanho do arquivo de uma imagem &eacute; um menor que o de v&aacute;rias e o n&uacute;mero de requisi&ccedil;&otilde;es HTTP tamb&eacute;m diminui &#8211; e esse &eacute; um dos fatores-chave para a performance de um <em>site</em>, como ser&aacute; visto a seguir.</p>
<h3>Fa&ccedil;a poucas requisi&ccedil;&otilde;es HTTP</h3>
<p>Ultimamente esse tem sido um grande tema em debates sobre otimiza&ccedil;&atilde;o e performance de <em>sites</em>. Alguns especialistas pensam que este &eacute; o aspecto mais importante a respeito do carregamento de uma p&aacute;gina. A ideia principal &eacute; ter menos elementos na p&aacute;gina, como imagens, arquivos CSS, <em>javascript</em>, etc. Alguns dizem que o ideal &eacute; faze <strong>menos</strong> de 25 requisi&ccedil;&otilde;es, se poss&iacute;vel.</p>
<h3>Evite carregar elementos externos</h3>
<p>Esse &eacute; um dos mais importantes aspectos referentes &agrave; performance de <em>web sites</em><em> </em>porque, ultimamente, os <em>sites </em>est&atilde;o cheios de c&oacute;digo <em>javascript </em>e <em>iframes </em>de <em>sites </em>de terceiros. Portanto, tente manter seu <em>site </em>longe de conex&otilde;es a desnecess&aacute;rias a elementos externos. Alguns fazem isso somente para mostrar um <em>widget </em>sem grande import&acirc;ncia ou um &#8220;selinho&#8221; sobre alguma coisa que n&atilde;o acrescenta a navega&ccedil;&atilde;o do visitante. Encontre alternativas ou tente hospedar os <em>widgets </em>em seu pr&oacute;prio dominio.</p>
<h3>Deixe o tamanho da p&aacute;gina inicial menor que 150KB</h3>
<p>Para realizar essa &#8220;tarefa&#8221; selecione, <strong>no Web Developer</strong>, <em>Informa&ccedil;&otilde;es &gt; Visualizar Tamanho do Documento</em>. Isto ir&aacute; mostrar o tamanho de sua p&aacute;gina e os elementos que fazem parte dela, como arquivos CSS, imagens, <em>scripts</em>, etc. Tente manter todos esses componentes no valor <strong>m&aacute;ximo</strong> de 150KB.</p>
<h3>Exiba o resumo ao inv&eacute;s do artigo completo</h3>
<p>Outra forma de otimizar sua p&aacute;gina inicial &eacute; mostrar apenas uma parte de seus artigos. Dessa forma voc&ecirc; exibe menos caracteres e faz com que o tempo de carregamento seja menor.</p>
<h3>Reduza o n&uacute;mero de plugins</h3>
<p>A maioria dos <em>plugins </em>tem seus pr&oacute;prios arquivos CSS e/ou imagens. Ent&atilde;o, se poss&iacute;vel, &eacute; melhor manter baixo o n&uacute;mero de <em>plugins </em>instalados para baixo. Dessa forma, voc&ecirc; ir&aacute; reduzir o n&uacute;mero de requisi&ccedil;&otilde;es HTTP.</p>
<h3>Exiba no m&aacute;ximo 20 imagens na index</h3>
<p>Isso vale tamb&eacute;m para o objetivo de diminuir o n&uacute;mero de requisi&ccedil;&otilde;es HTTP. As imagens podem estender o tempo de carregamento do <em>site </em>e &eacute; indicado que voc&ecirc;<strong> n&atilde;o utilize mais de 15-20 imagens na index</strong>, quando poss&iacute;vel. Quanto a p&aacute;ginas de artigos artigo, o n&uacute;mero m&aacute;ximo de imagens deve ser de <strong>5</strong>. Dessa forma, voc&ecirc; pode ter artigos mais limpos e um <em>site </em>WordPress melhor.</p>
<h3>Limpe sua sidebar</h3>
<p>Coisas como calend&aacute;rio ou <em>blogroll </em>n&atilde;o s&atilde;o adequados para todo e qualquer <em>blog/site</em> WordPress. E estes componentes tamb&eacute;m diminuem a velocidade de carregamento de seu <em>site</em>. Voc&ecirc; pode desabilit&aacute;-los, removendo o c&oacute;digo do seu tema WordPress.</p>
<h3>Caminho absoluto para algumas template tags</h3>
<p>Quando voc&ecirc; conhece os caminhos para determinados elementos, voc&ecirc; pode usar os caminhos absolutos ao inv&eacute;s de usar as <em>template tags</em> do WordPress. Com isso, voc&ecirc; pode reduzir o tempo de carregamento de seu <em>site</em>.</p>
<p>Por exemplo, em vez de usar a<em> template tag bloginfo(&#8216;&#8217;stylesheet_url&#8217;)</em>, voc&ecirc; pode colocar o caminho absoluto: <em>http://www.seusite.com/wp-content/themes/seutema/style.css</em>.</p>
<p>Outros exemplos s&atilde;o:</p>
<ul>
<li>bloginfo(&#8216;name&#8217;)</li>
<li>wp_title()</li>
<li>bloginfo(&#8217;stylesheet_url&#8217;)</li>
<li>bloginfo(&#8216;pingback_url&#8217;)</li>
<li>bloginfo(&#8216;template_url&#8217;)</li>
<li>bloginfo(&#8216;version&#8217;)</li>
<li>bloginfo(&#8216;atom_url&#8217;)</li>
<li>bloginfo(&#8216;rss2_url&#8217;)</li>
<li>bloginfo(&#8216;url&#8217;)</li>
<li>bloginfo(&#8216;name&#8217;)</li>
<li>bloginfo(&#8216;html_type&#8217;)</li>
<li>bloginfo(&#8216;charset&#8217;)</li>
</ul>
<h3>Impulsione seu WordPress com .htaccess</h3>
<p>Esta &eacute; uma outra maneira de voc&ecirc; aumentar o desempenho e performance de seu <em>site/blog</em> WordPress. Com base nas configura&ccedil;&otilde;es do <em>site </em>e <em>workflow</em>, voc&ecirc; pode personalizar o seu <strong>.htaccess</strong> usando as informa&ccedil;&otilde;es de &#8220;<a href="http://www.askapache.com/htaccess/apache-htaccess.html">Ultimate .htaccess Tutorial</a>&#8221; (al&eacute;m de <a href="http://www.google.com.br/search?q=.htaccess">informa&ccedil;&otilde;es sobre .htaccess em outros lugares</a>). L&aacute; voc&ecirc; pode encontrar informa&ccedil;&otilde;es sobre <em>cache</em>, cabe&ccedil;alhos, compress&atilde;o gzip, etc.</p>
<h3>Conclus&atilde;o sobre otimiza&ccedil;&atilde;o WordPress</h3>
<p>A raz&atilde;o para este artigo foi a quantidade de <em>blogs</em> e <em>sites</em> WordPress atualmente dispon&iacute;veis na <em>internet</em>. Seu n&uacute;mero est&aacute; aumentando e a maioria dos <em>blogs</em> n&atilde;o tem uma hospedagem com um n&iacute;vel t&atilde;o bom.</p>
<p>Essas hospedagens n&atilde;o s&atilde;o t&atilde;o r&aacute;pidas, mas com uma pequena ajuda noo HTML, CSS e WordPress, a velocidade de <em>blogs </em>WordPress pode aumentar. Certamente essas dicas ir&atilde;o ajudar se seu objetivo e aumentar o desempenho e performance de seu <em>site</em> ou <em>blog </em>WordPress.</p>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li><a href="http://desenvolvimentoparaweb.com/miscelanea/8-maneiras-de-melhorar-a-performance-de-um-site/" title="8 maneiras de melhorar a performance de um site">8 maneiras de melhorar a performance de um site</a></li><li><a href="http://desenvolvimentoparaweb.com/usabilidade/user-interface-dicas-rapidas/" title="User Interface em dicas rápidas">User Interface em dicas rápidas</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/jetpack-explorando-novas-maneiras-de-ampliar-e-personalizar-a-web/" title="Jetpack: explorando novas maneiras de ampliar e personalizar a web">Jetpack: explorando novas maneiras de ampliar e personalizar a web</a></li><li><a href="http://desenvolvimentoparaweb.com/php/dicas-para-otimizar-codigos-php/" title="Dicas para otimizar códigos PHP">Dicas para otimizar códigos PHP</a></li><li><a href="http://desenvolvimentoparaweb.com/indicacoes/mais-de-450-extensoes-para-wordpress/" title="Mais de 450 extensões para WordPress">Mais de 450 extensões para WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/desenvolvimento-para-web-2/" title="Desenvolvimento para web 2.0">Desenvolvimento para web 2.0</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/wassup-plugin-wordpress-estatisticas-acesso-em-tempo-real/" title="WassUp: plugin WordPress para ver estatísticas de acesso (em tempo real)">WassUp: plugin WordPress para ver estatísticas de acesso (em tempo real)</a></li><li><a href="http://desenvolvimentoparaweb.com/indicacoes/25-extensoes-para-o-firefox-para-aumentar-a-produtividade-no-dia-a-dia-na-web/" title="25 extensões para o Firefox para aumentar a produtividade no dia-a-dia na web">25 extensões para o Firefox para aumentar a produtividade no dia-a-dia na web</a></li><li><a href="http://desenvolvimentoparaweb.com/xhtml/textarea-dicas-truques-textarea/" title="Textarea: dicas e truques que você sempre quis saber">Textarea: dicas e truques que você sempre quis saber</a></li><li><a href="http://desenvolvimentoparaweb.com/php/urls-amigaveis-slug-a-wordpress/" title="URLs amigáveis (slug) à WordPress">URLs amigáveis (slug) à WordPress</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/wordpress/otimizacao-wordpress-performance-desempenho-blog-site/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Truques de configura&#231;&#227;o do WordPress</title>
		<link>http://desenvolvimentoparaweb.com/wordpress/truques-de-configuracao-do-wordpress/</link>
		<comments>http://desenvolvimentoparaweb.com/wordpress/truques-de-configuracao-do-wordpress/#comments</comments>
		<pubDate>Thu, 24 Sep 2009 17:54:26 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[macetes]]></category>
		<category><![CDATA[otimização]]></category>
		<guid isPermaLink="false">http://www.desenvolvimentoparaweb.com/?p=483</guid>
		<description><![CDATA[Aprenda truques e dicas de configura&ccedil;&atilde;o do WordPress e veja que existem diretivas no wp-config que podem aumentar a performance de seu WordPress]]></description>
			<content:encoded><![CDATA[<p>Existem pequenas diretivas que voc&ecirc; pode alterar/acrescentar no arquivo <strong>wp-config</strong> para que seu <strong>WordPress</strong> tenha um n&iacute;vel de personaliza&ccedil;&atilde;o diferenciado e voc&ecirc; aproveite melhor o que a plataforma tem a oferecer. Leia este artigo e aprenda incr&iacute;veis truques de configura&ccedil;&atilde;o para aumentar a performance de sua instala&ccedil;&atilde;o e ter um <strong>WordPress refinado</strong>.</p>
<div class="artigo-traduzido">Este &eacute; um artigo traduzido do original &#8220;<a title="Ler o artigo original" href="http://diggingintowordpress.com/2009/06/wordpress-configuration-tricks/">WordPress Configuration Tricks</a>&#8220;, do blog <a href="http://diggingintowordpress.com/">Digging into Wordpress</a>. A tradu&ccedil;&atilde;o foi feita com autoriza&ccedil;&atilde;o dos autores, <strong>Chris Coyier</strong> e <strong>Jeff Starr</strong>, e sofreu pequenas adapta&ccedil;&otilde;es.</div>
<p>Muitas pessoas que usam WordPress sabem que o arquivo <strong>wp-config.php</strong> &eacute; o arquivo-chave para as configura&ccedil;&otilde;es de banco de dados. &Eacute; nele que voc&ecirc; define o nome do banco de dados, nome de usu&aacute;rio, senha e localiza&ccedil;&atilde;o. Mas o que muitos n&atilde;o sabem &eacute; que o <strong>wp-config.php</strong> pode ser usado para especificar uma grande variedade de outras configura&ccedil;&otilde;es; configura&ccedil;&otilde;es essas que permitem melhorar as funcionalidades, desempenho e seguran&ccedil;a do seu <strong>WordPress</strong>.</p>
<p>As dicas a seguir abordam <a href="http://codex.wordpress.org/Editing_wp-config.php">o que consta sobre o assunto no WordPress Codex</a>, bem como alguns truques que provavelmente voc&ecirc; n&atilde;o viu antes. Se voc&ecirc; souber de qualquer outra configura&ccedil;&atilde;o, comente que eu acrescento ao artigo.  ;-)</p>
<h3>Endere&ccedil;o do Blog e Endere&ccedil;o do Site</h3>
<p>Por padr&atilde;o, essas duas constantes de configura&ccedil;&atilde;o n&atilde;o est&atilde;o inclu&iacute;das no <strong>wp-config.php</strong>, mas eles devem ser adicionados para melhorar o desempenho. Estas duas defini&ccedil;&otilde;es foram introduzidas no WordPress 2.2 e servem para substituir os respectivos valores do banco de dados sem alter&aacute;-los, efetivamente.</p>
<p>A adi&ccedil;&atilde;o dessas constantes reduz o n&uacute;mero de consultas ao banco de dados e, consequentemente, melhora o desempenho do <em>site</em>. Essas configura&ccedil;&otilde;es devem coincidir com as especificadas no painel do WordPress (<strong>Configura&ccedil;&otilde;es &gt; Geral</strong>). Segue um exemplo (n&atilde;o inclua a barra no final da URL):</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_HOME'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'http://digwp.com'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_SITEURL'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'http://digwp.com'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>
<p>Um truque legal &eacute; definir esses valores dinamicamente usando a vari&aacute;vel global do servidor:</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_HOME'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'http://'</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'HTTP_HOST'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'/path/to/wordpress'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_SITEURL'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'http://'</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'HTTP_HOST'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'/path/to/wordpress'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>
<h3>&#8220;Template Path&#8221; e &#8220;Stylesheet Path&#8221;</h3>
<p>Assim como o Endere&ccedil;o do Blog e Endere&ccedil;o do Site mostrados anteriormente, voc&ecirc; tamb&eacute;m pode aumentar o desempenho do <em>site</em> eliminando as consultas ao BD para o &#8220;Template Path&#8221; e &#8220;Stylesheet Path&#8221; (que s&atilde;o, respectivamente, o caminho para o tema e o caminho para o estilo CSS). Aqui est&atilde;o os valores padr&atilde;o para essas duas defini&ccedil;&otilde;es:</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'TEMPLATEPATH'</span><span style="color: #339933;">,</span> get_template_directory<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'STYLESHEETPATH'</span><span style="color: #339933;">,</span> get_stylesheet_directory<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>
<p>Com isso, ainda h&aacute; consultas ao banco de dados, mas &eacute; poss&iacute;vel eliminar essas duas queries e colocar o caminho absoluto:</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'TEMPLATEPATH'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'/absolute/path/to/wp-content/themes/active-theme'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'STYLESHEETPATH'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'/absolute/path/to/wp-content/themes/active-theme'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>
<h3>Desabilitar Cache e Expira&ccedil;&atilde;o de Cache</h3>
<p>Essas duas op&ccedil;&otilde;es se aplicam a vers&otilde;es mais antigas do WordPress que ainda est&atilde;o usando o esquema antigo de <em>cache</em>. A primeira permite habilitar ou desabilitar o cache, enquanto a segunda permite especificar o tempo de expira&ccedil;&atilde;o de <em>cache</em>.</p>
<p>Habilitar o <em>cache</em>:</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_CACHE'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// habilita o cache</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'ENABLE_CACHE'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// habilita o cache</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'CACHE_EXPIRATION_TIME'</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">3600</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// em segundos</span></pre></div></div>
<p>Desabilitar o <em>cache</em>:</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_CACHE'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// desabilita o cache</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'DISABLE_CACHE'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// desabilita o cache</span></pre></div></div>
<h3>Especificar Dom&iacute;nio de Cookie (Cookie Domain)</h3>
<p>Existem v&aacute;rias raz&otilde;es para especificar um dom&iacute;nio de <em>cookie</em> para o seu <em>web site</em>. Um exemplo comum envolve impedir que <em>cookies</em> sejam enviados com requisi&ccedil;&otilde;es de conte&uacute;do est&aacute;tico em subdom&iacute;nios. Neste caso, pode-se utilizar esta constante para dizer para o WordPress enviar <em>cookies</em> apenas para o seu dom&iacute;nio n&atilde;o-est&aacute;tico. Este poderia ser um ganho significativo de performance. Aqui est&atilde;o alguns exemplos de defini&ccedil;&atilde;o de <em>cookie domain</em>:</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'COOKIE_DOMAIN'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'.digwp.com'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// não omitir o '.'</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'COOKIEPATH'</span><span style="color: #339933;">,</span> <span style="color: #990000;">preg_replace</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'|https?://[^/]+|i'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">''</span><span style="color: #339933;">,</span> get_option<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'home'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'/'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'SITECOOKIEPATH'</span><span style="color: #339933;">,</span> <span style="color: #990000;">preg_replace</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'|https?://[^/]+|i'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">''</span><span style="color: #339933;">,</span> get_option<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'siteurl'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'/'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'PLUGINS_COOKIE_PATH'</span><span style="color: #339933;">,</span> <span style="color: #990000;">preg_replace</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'|https?://[^/]+|i'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">''</span><span style="color: #339933;">,</span> WP_PLUGIN_URL<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'ADMIN_COOKIE_PATH'</span><span style="color: #339933;">,</span> SITECOOKIEPATH<span style="color: #339933;">.</span><span style="color: #0000ff;">'wp-admin'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>
<h3>Substituir Permiss&otilde;es de Arquivo</h3>
<p>Se as permiss&otilde;es do seu servidor s&atilde;o muito restritivas, inserir essas defini&ccedil;&otilde;es no seu arquivo de configura&ccedil;&atilde;o do WordPress pode ajudar a resolver alguns problemas. Lembrando que n&atilde;o precisa colcoar aspas nos valores.</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'FS_CHMOD_FILE'</span><span style="color: #339933;">,</span> <span style="color: #208080;">0755</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'FS_CHMOD_DIR'</span><span style="color: #339933;">,</span> <span style="color: #208080;">0755</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>
<h3>FTP/SSH</h3>
<p>Essas constantes s&atilde;o para ajudar usu&aacute;rios a localizar e utilizar conex&otilde;es FTP/SSH. Exemplos:</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'FS_METHOD'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'ftpext'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// força o método de sistema de arquivos : &quot;direct&quot;, &quot;ssh&quot;, &quot;ftpext&quot;, or &quot;ftpsockets&quot;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'FTP_BASE'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'/path/to/wordpress/'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// caminho absoluto para a pasta raiz (de instalação)</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'FTP_CONTENT_DIR'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'/path/to/wordpress/wp-content/'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// caminho absoluto para a pasta &quot;wp-content&quot;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'FTP_PLUGIN_DIR '</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'/path/to/wordpress/wp-content/plugins/'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// caminho absoluto para a pasta &quot;wp-plugins&quot;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'FTP_PUBKEY'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'/home/username/.ssh/id_rsa.pub'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// caminho absoluto para a pasta sua chave-pública SSH</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'FTP_PRIVKEY'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'/home/username/.ssh/id_rsa'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// caminho absoluto para a pasta sua chave-privada SSH</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'FTP_USER'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'username'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// seu usuário de FTP ou SSH</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'FTP_PASS'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'password'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// senha do usuário especificado em FTP_USER</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'FTP_HOST'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'ftp.domain.tld:21'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// hostname (com especificação de porta) para o servidor SSH/FTP</span></pre></div></div>
<h3>Alterar a localiza&ccedil;&atilde;o de &#8220;wp-content&#8221;</h3>
<p>Desde a vers&atilde;o 2.6 do WordPress &eacute; poss&iacute;vel alterar o local padr&atilde;o da pasta <strong>wp-content</strong>. H&aacute; boas raz&otilde;es para fazer isso, incluindo o refor&ccedil;o da seguran&ccedil;a das instala&ccedil;&otilde;es e facilita&ccedil;&atilde;o de atualiza&ccedil;&otilde;es via FTP. Aqui est&atilde;o alguns exemplos:</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">// caminho completo para o diretório atual (sem a barra final)</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_CONTENT_DIR'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'DOCUMENT_ROOT'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'/path/wp-content'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// URI completa para o diretório atual (sem a barra final)</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_CONTENT_URL'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'http://domain.tld/path/wp-content'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>
<p>Voc&ecirc; tamb&eacute;m pode especificar um caminho personalizado para o <strong>wp-content</strong>. Isso pode ajudar com problemas de compatibilidade com certos <em>plugins</em>.</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">// caminho completo para o diretório atual (sem a barra final)</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_PLUGIN_DIR'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'DOCUMENT_ROOT'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">'/path/wp-content/plugins'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// URI completa para o diretório atual (sem a barra final)</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_PLUGIN_URL'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'http://domain.tld/path/wp-content/plugins'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>
<h3>Revis&otilde;es de Artigos (&#8220;Post Revisions&#8221;)</h3>
<p>J&aacute; h&aacute; algum tempo o WordPress fornecem um sistema de vers&otilde;es que permite aos utilizadores guardar vers&otilde;es diferentes de seus posts e at&eacute; reverter para vers&otilde;es salvas anteriormente se necess&aacute;rio. Aqui est&atilde;o algumas das defini&ccedil;&otilde;es de configura&ccedil;&otilde;es que podem ser &uacute;teis.</p>
<p>Definir o n&uacute;mero de vers&otilde;es salvas:</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_POST_REVISIONS'</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">3</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>
<p>Desabilitar a revis&atilde;o de posts (se n&atilde;o for usar o recurso, utilize essa diretiva para poupar espa&ccedil;o no BD):</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_POST_REVISIONS'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>
<h3>Tempo de Salvar Automaticamente (&#8220;Autosave&#8221;)</h3>
<p>Assim como o controle de vers&otilde;es, o autosave &eacute; um recurso muito &uacute;til existente. Por padr&atilde;o, o WordPress salva seu trabalho a cada 60 segundos, mas voc&ecirc; pode modificar esta defini&ccedil;&atilde;o para o tempo que quiser. Cuidado com o que vai colocar para n&atilde;o &#8220;estressar&#8221; seu servidor!</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'AUTOSAVE_INTERVAL'</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">160</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// em segundos</span></pre></div></div>
<h3>Debugging</h3>
<p>Desde a vers&atilde;o 2.3.1 os usu&aacute;rios tem a op&ccedil;&atilde;o de mostrar alguns erros e avisos para ajudar com a depura&ccedil;&atilde;o do site. Desde a vers&atilde;o 2.5 do WordPress &eacute; poss&iacute;vel elevar o n&iacute;vel de informa&ccedil;&atilde;o para <strong>E_ALL</strong> para ativar avisos para fun&ccedil;&otilde;es obsoletas. Por padr&atilde;o (ou seja, se nenhuma defini&ccedil;&atilde;o &eacute; especificado no <strong>wp-config.php</strong>) o relat&oacute;rio de erros est&aacute; desativado.</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_DEBUG'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// habilitar debugging mode</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_DEBUG'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// desabilitar debugging mode (padrão)</span></pre></div></div>
<h3>Relat&oacute;rio de Erros</h3>
<p>Aqui est&aacute; uma maneira f&aacute;cil de habilitar um relat&oacute;rio b&aacute;sico de erros no WordPress. Crie um arquivo chamado <strong>php_error.log</strong> em uma pasta de sua escolhe e coloque permiss&atilde;o de escrita no arquivo (leia mais sobre <a href="http://codex.wordpress.org/Changing_File_Permissions">permiss&otilde;es de arquivos</a>). Em seguida, edite o caminho na terceira linha do c&oacute;digo a seguir e coloque no seu &#8220;wp-config.php&#8221;:</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #339933;">@</span><span style="color: #990000;">ini_set</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'log_errors'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'On'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">@</span><span style="color: #990000;">ini_set</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'display_errors'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'Off'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">@</span><span style="color: #990000;">ini_set</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'error_log'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'/home/path/domain/logs/php_error.log'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// complemento: http://br.php.net/getcwd</span></pre></div></div>
<h3>Aumentar mem&oacute;ria do PHP</h3>
<p>Se voc&ecirc; estiver recebendo mensagens de erro como &#8220;Tamanho de mem&oacute;ria permitido de X bytes esgotado&#8221;, esta dica pode ajudar a resolver o problema.</p>
<p>Desde o WordPress vers&atilde;o 2.5, a constante <strong>WP_MEMORY_LIMIT</strong> permite que voc&ecirc; especifique a quantidade m&aacute;xima de mem&oacute;ria que pode ser usada pelo PHP. Por padr&atilde;o, o WordPress ir&aacute; automaticamente tentar alocar 32 MB &#8211; ent&atilde;o voc&ecirc; s&oacute; vai precisar isso se quiser valores superiores a 32MB. Observe que alguns planos de hospedagem desativam sua capacidade de aumentar a mem&oacute;ria do PHP; se for seu caso, voc&ecirc; precisa pedir que eles aumente a mem&oacute;ria pra voc&ecirc;. Aqui est&atilde;o alguns exemplos:</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_MEMORY_LIMIT'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'64M'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_MEMORY_LIMIT'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'96M'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_MEMORY_LIMIT'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'128M'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>
<h3>Salvar e exibir Queries do Banco de Dados para An&aacute;lise</h3>
<p>Esta t&eacute;cnica &eacute; perfeita para guardar as consultas de banco de dados e exibir as informa&ccedil;&otilde;es para an&aacute;lise posterior. O processo armazena cada consulta, sua fun&ccedil;&atilde;o associada e seu tempo total de execu&ccedil;&atilde;o. Esta informa&ccedil;&atilde;o &eacute; guardada como um array e pode ser exibida em qualquer p&aacute;gina do tema. Para fazer isso, primeiro adicione a seguinte diretiva no seu <strong>wp-config.php</strong>:</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'SAVEQUERIES'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>
<p>Em seguida, no rodap&eacute; do tema ativo, coloque o seguinte:</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span>current_user_can<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'level_10'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #666666; font-style: italic;">// se for administrador</span>
<span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">global</span> <span style="color: #000088;">$wpdb</span><span style="color: #339933;">;</span>
    <span style="color: #990000;">print_r</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$wpdb</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">queries</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>
<h3>Controle de Acesso ao Proxy</h3>
<p>Desde o WordPress 2.8 o arquivo de configura&ccedil;&atilde;o pode ser usado para definir constantes envolvidas com o bloqueio, filtragem e permi&ccedil;&atilde;o de acesso a m&aacute;quinas espec&iacute;ficas de um servidor <em>proxy</em>. Por exemplo, se voc&ecirc; hospedar seu <em>site</em> WordPress em uma <em>intranet</em>, voc&ecirc; pode impedir o acesso a todos os <em>hosts</em> externos e s&oacute; permitir visitas do <em>localhost</em> (usando a primeira defini&ccedil;&atilde;o abaixo).</p>
<p>Voc&ecirc; tamb&eacute;m pode permitir o acesso de m&aacute;quinas espec&iacute;ficas com uma lista separada por v&iacute;rgulas, uma verdadeira &#8220;lista branca&#8221; (como demonstrado na defini&ccedil;&atilde;o do terceiro abaixo). Necessariamente deve permitir o acesso de <strong>api.wordpress.org</strong> para garantir as funcionalidades de arquivos importantes e <em>plugins</em>.</p>
<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_HTTP_BLOCK_EXTERNAL'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>  <span style="color: #666666; font-style: italic;">// bloqueia requisições externas</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_HTTP_BLOCK_EXTERNAL'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// permite requisições externas</span>
<span style="color: #990000;">define</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WP_ACCESSIBLE_HOSTS'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'api.wordpress.org'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// &quot;lista branca&quot; de hosts</span></pre></div></div>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li><a href="http://desenvolvimentoparaweb.com/seo/erros-comuns-desenvolvimento-web-campanhas-seo/" title="Erros comuns em desenvolvimento web para campanhas de SEO">Erros comuns em desenvolvimento web para campanhas de SEO</a></li><li><a href="http://desenvolvimentoparaweb.com/php/urls-amigaveis-slug-a-wordpress/" title="URLs amigáveis (slug) à WordPress">URLs amigáveis (slug) à WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/design/7-ferramentas-para-web-designs-melhores/" title="7 ferramentas para web designs melhores">7 ferramentas para web designs melhores</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/otimizacao-wordpress-performance-desempenho-blog-site/" title="Otimização WordPress: aumente a performance e desempenho de seu blog / site">Otimização WordPress: aumente a performance e desempenho de seu blog / site</a></li><li><a href="http://desenvolvimentoparaweb.com/seo/6-mitos-seo-voce-deve-evitar/" title="6 mitos de SEO que você deve evitar">6 mitos de SEO que você deve evitar</a></li><li><a href="http://desenvolvimentoparaweb.com/midia-social/estatisticas-sobre-comportamento-nas-midias-sociais/" title="Estatísticas sobre comportamento nas mídias sociais">Estatísticas sobre comportamento nas mídias sociais</a></li><li><a href="http://desenvolvimentoparaweb.com/usabilidade/pergunte-se-a-si-mesmo-questoes-para-desenvolver-um-bom-site/" title="Pergunte-se a si mesmo: questões para desenvolver um bom site">Pergunte-se a si mesmo: questões para desenvolver um bom site</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/wordpress-como-cms/" title="&#8220;WordPress como CMS&#8221;?">&#8220;WordPress como CMS&#8221;?</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/maneira-simples-de-saber-quem-faz-referencias-a-seu-blog-wordpress/" title="Maneira simples de saber quem faz referências a seu blog WordPress">Maneira simples de saber quem faz referências a seu blog WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/php/dicas-para-otimizar-codigos-php/" title="Dicas para otimizar códigos PHP">Dicas para otimizar códigos PHP</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/wordpress/truques-de-configuracao-do-wordpress/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Newsletter no WordPress com o plugin Ajax Newsletter (wp-ajax-newsletter)</title>
		<link>http://desenvolvimentoparaweb.com/wordpress/newsletter-no-wordpress-com-o-plugin-ajax-newsletter-wp-ajax-newsletter/</link>
		<comments>http://desenvolvimentoparaweb.com/wordpress/newsletter-no-wordpress-com-o-plugin-ajax-newsletter-wp-ajax-newsletter/#comments</comments>
		<pubDate>Tue, 07 Apr 2009 19:00:53 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[atualizações]]></category>
		<category><![CDATA[conteúdos]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[newsletter]]></category>
		<category><![CDATA[performance]]></category>
		<guid isPermaLink="false">http://www.desenvolvimentoparaweb.com/?p=444</guid>
		<description><![CDATA[A melhor solu&ccedil;&atilde;o WordPress para envio de newsletters!]]></description>
			<content:encoded><![CDATA[<p>&Eacute; de conhecimento dos desenvolvedores <em>web</em> que muitos <em>sites</em> precisam de um sistema de <em>newsletter</em> para compor sua estrat&eacute;gia de divulga&ccedil;&atilde;o e fideliza&ccedil;&atilde;o de visitantes. Um bom sistema de <em>newsletter</em>, por vezes, pode ser fator fundamental para o sucesso de um site, seja ele tempor&aacute;rio, ou n&atilde;o.</p>
<p>Um dos grandes &#8220;apelos&#8221; da comunidade WordPress &eacute; sobre um bom <strong>plugin gratuito para newsletter</strong>. Quando se procura por &#8220;plugins de newsletter para WordPress&#8221; nos buscadores, resultados &eacute; o que n&atilde;o falta, mas, infelizmente, nem todos s&atilde;o satisfat&oacute;rios e atendem realmente ao que prometem: propiciar um gratuito, pr&aacute;tico e f&aacute;cil<strong> sistema de newsletter para WordPress</strong>.</p>
<h3>Bateria de testes</h3>
<p>A necessidade surgiu devido a um projeto em que estava envolvido. Na idealiza&ccedil;&atilde;o do <em>layout</em>, havia neste um espa&ccedil;o reservado para <em>newsletters</em>. J&aacute; h&aacute; algum tempo tenho usado WordPress para fazer 95% dos trabalhos <em>web</em> e, pensando na simplicidade e facilidades que a plataforma oferece e tendo em vista que sempre que precisei utilizar <a href="http://www.desenvolvimentoparaweb.com/wordpress/wordpress-como-cms/">WordPress como CMS</a> tudo correu tranquilamente, parti em busca de uma boa extens&atilde;o para <em>newsletter</em> no WordPress.</p>
<p>Testei v&aacute;rios <em>plugins</em> nesse meu &#8220;apanhado&#8221; para testes. Alguns prometeram &#8220;mundos e fundos&#8221; mas, infelizmente, n&atilde;o cumpriram o que ofertavam. Outros que se apresentaram mais &#8220;modestos&#8221; e, aparentemente, com cara de &#8220;simples&#8221; e &#8220;f&aacute;cil&#8221;, tornaram-se verdadeiros contratempos e foram de encontro &agrave; filosofia do WordPress no que diz respeito a <strong>praticidade, simplicidade</strong> e <strong>rapidez</strong>.</p>
<p>Depois de um tempo encontrei o que, para o projeto em quest&atilde;o e, certamente, para futuros projetos WordPress que necessitem da funcionalidade de <em>newsletter</em>, considero ser o ideal (pelo menos dentre os que eu experimentei: o <em>plugin</em> <a href="http://code.google.com/p/wp-ajax-newsletter/">wp-ajax-newsletter</a>.</p>
<h3>Sobre o wp-ajax-newsletter</h3>
<p>Conforme consta no <em>site</em>, o wp-ajax-newsletter</p>
<blockquote><p>&eacute; um plugin WordPress que permite aos utilizadores subscreverem e receberem newsletters contendo os &uacute;ltimos posts do blog.</p></blockquote>
<p>Simples assim! Do jeito que eu gosto (e que, acredito eu, &eacute; o conveniente para todos)!</p>
<p>Ainda segundo consta no <a href="http://code.google.com/p/wp-ajax-newsletter/"><em>site</em> do <em>plugin</em></a> (e ser&aacute; visto mais &agrave; frente), &eacute; poss&iacute;vel estabelecer a periodicidade de envio das <em>newsletters</em>, configurar os textos, ter acesso a base de cadastrados, utilizar constantes de sistema para personalizar os conte&uacute;dos, dentre outros.</p>
<p>Como &eacute; de se esperar, o <em>plugin</em> conta com sistema autom&aacute;tico de valida&ccedil;&atilde;o de <em>e-mails</em> (um <em>e-mail</em> de confirma&ccedil;&atilde;o &eacute; enviado e a pessoa tem que clicar em um <em>link</em> para confirmar).</p>
<h3>Mexendo no wp-ajax-newsletter</h3>
<p>Quando voc&ecirc; instala o <em>plugin</em> (nessa altura do campeonato n&atilde;o precisa explicar isso, n&eacute;?), automaticamente aparece em seu painel de controle uma nova op&ccedil;&atilde;o no menu: <strong>Configura&ccedil;&otilde;es &gt; Newsletter</strong>. Acessando, todas as configura&ccedil;&otilde;es cab&iacute;veis ao <em>plugin</em> de <em>newsletter</em> do WordPress estar&atilde;o a&iacute;, divididas em 3 grandes grupos: <strong>Enviar Newsletter</strong>, <strong>Configura&ccedil;&otilde;es</strong> e <strong>Assinantes</strong>. No <em>front-end</em>, a inser&ccedil;&atilde;o do formul&aacute;rio AJAX para cadastro de <em>e-mails</em> &eacute; simplesmente um c&oacute;digo de chamadas para uma fun&ccedil;&atilde;o do <em>plugin</em> (<a href="http://code.google.com/p/wp-ajax-newsletter/wiki/Instructions">veja o c&oacute;digo de inser&ccedil;&atilde;o do formul&aacute;rio para se cadastrar na <em>newsletter</em></a>).</p>
<p>Vou explicar o funcionamento no <em>back-end</em>, come&ccedil;ando pelas Configura&ccedil;&otilde;es.</p>
<h4>Configura&ccedil;&otilde;es (<em>Configuration</em>)</h4>
<p><a rel="lightbox" href="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2009/04/wp-ajax-newsletter-configuration.gif"><img class="aligncenter size-medium wp-image-452" title="wp-ajax-newsletter-configuration" src="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2009/04/wp-ajax-newsletter-configuration-300x215.gif" alt="wp-ajax-newsletter-configuration" width="300" height="215" /></a></p>
<p>Nas Configura&ccedil;&otilde;es &eacute; poss&iacute;vel especificar a periodicidade que valer&aacute; para a divulga&ccedil;&atilde;o das <em>newsletters</em>. Existem as op&ccedil;&otilde;es:</p>
<ul>
<li><strong>Manual.</strong> Enviar <em>newsletters</em> manualmente, sem uma periodicidade autom&aacute;tica.</li>
<li><strong>Weekly.</strong> Enviar <em>newsletter</em> 1 vez a cada semana.</li>
<li><strong>Monthly.</strong> Enviar <em>newsletter</em> 1 vez a cada m&ecirc;s.</li>
<li><strong>Every &#8220;x&#8221; posts.</strong> Enviar <em>newsletters</em> a cada &#8220;x&#8221; artigos publicados &#8211; n&uacute;mero este especificado por quem configura a extens&atilde;o WordPress.</li>
</ul>
<p>Continuando as configura&ccedil;&otilde;es, estas est&atilde;o dispostas e funcionando, respectivamente, assim:</p>
<ul>
<li><strong>From.</strong> <em>E-mail</em> que ser&aacute; o &#8220;enviador&#8221; de todas as <em>newsletters</em>; &eacute; o <em>e-mail</em> que aparece no campo &#8220;De:&#8221; do envio de <em>e-mails</em> e o que aparecer&aacute; quando algu&eacute;m clicar em &#8220;Responder&#8221;.</li>
<li><strong>Subject.</strong> &Eacute; o assunto do <em>e-mail</em>. Acredito eu que n&atilde;o deva se estender muito e ser bem simples como &#8220;Newsletter do site X&#8221;.</li>
<li><strong>Header.</strong> Caso queira algum cabe&ccedil;alho para sua <em>newsletter</em>, este &eacute; o espa&ccedil;o dedicado a o colocar. Use com sabedoria. Lembre-se: <strong>o que n&atilde;o &eacute; necess&aacute;rio, n&atilde;o precisa estar l&aacute;</strong>.</li>
<li><strong>Template.</strong> &Eacute; aqui o &#8220;corpo&#8221; do conte&uacute;do da <em>newsletter</em>. Este campo mostra o que as pessoas que receberem a <em>newsletter </em>v&atilde;o visualizar em suas caixas de <em>e-mail</em> (incluindo <strong>excerpt</strong>, que &eacute; o resumo do artigo). O pr&oacute;prio <em>plugin</em> mostra quais as constantes de sistema podem ser usadas. Crie uma mensagem personalizada utilizando o que achar conveniente e que seja &uacute;til para quem est&aacute; lendo.</li>
<li><strong>Footer.</strong> Texto para o rodap&eacute; de cada <em>newsletter</em>, se voc&ecirc; achar que vale a pena.</li>
</ul>
<p>Como consta no pr&oacute;prio texto explicativo do <em>plugin</em>, todas as mensagens s&atilde;o enviadas em texto puro &#8211; o que, penso eu, &eacute; o aconselh&aacute;vel de ser feito quanto se trata de envio de <em>newsletters</em>.</p>
<h4>Enviar Newsletter (<em>Send Newsletter</em>)</h4>
<p><img class="aligncenter size-full wp-image-453" src="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2009/04/wp-ajax-newsletter-send-newsletter.gif" alt="" width="450" height="200" /></p>
<p>Aqui s&atilde;o mostradas algumas esat&iacute;sticas sobre o n&uacute;mero de artigos de seu site WordPress e quantas pessoas j&aacute; se subscreveram para receber as <em>newsletters</em>. Tamb&eacute;m &eacute; aqui o local onde voc&ecirc; vai escolher <strong>quantos artigos</strong> (ou resumo de artigos, se preferir) ser&atilde;o enviados para as pessoas que se subscreveram.</p>
<p>Como puderam notar, o <em>plugin</em> envia <em>newsletters </em>cujos conte&uacute;dos s&atilde;o os pr&oacute;prios artigos publicados no <em>site/blog</em> WordPress. Ele foi idealizado para isso e funciona muito bem, cumprindo seu papel sem complica&ccedil;&otilde;es. Entretanto, algumas pessoas podem precisar/julgar que os assinantes da <em>newsletter </em>devam receber conte&uacute;dos &#8220;exclusivos&#8221;, diferentes daqueles que constam como artigos do site. Se voc&ecirc; &eacute; uma destas pessoas, preste aten&ccedil;&atilde;o.</p>
<p>O <strong>pulo do gato</strong> para quem precisa enviar <em>newsletters </em>com conte&uacute;dos exclusivos est&aacute; neste passo-a-passo:</p>
<ol>
<li>Especifique que o plugin deve enviar somente o &uacute;ltimo artigo (preencha com o n&uacute;mero <strong>1</strong> o campo &#8220;Send only the last &#8216;X&#8217; posts)&#8221;;</li>
<li>Nas configura&ccedil;&otilde;es, marque a periodicidade de envio como <strong>Manual</strong>;</li>
<li>Escreva o conte&uacute;do que quer enviar somente para os assinantes de <em>newsletters </em>e publique;</li>
<li>Rapidamente v&aacute; em  <strong>Configura&ccedil;&otilde;es &gt; Newsletter</strong> e envie<strong> </strong>o conte&uacute;do do artigo que acabou de escrever;</li>
<li>Apague de seu <em>site/blog</em> o artigo que acabou de ser despachado em forma de <em>newsletter</em>.</li>
</ol>
<p>Fazendo esta &#8220;mutreta&#8221; voc&ecirc; garante que conte&uacute;dos exclusivos ser&atilde;o enviados para os que dedicaram um pouco de seu tempo cadastrando seu<em> e-mail</em> para o recebimento de <em>newsletters </em>de seu site.</p>
<p>Minha opini&atilde;o pessoal &eacute; que este recurso n&atilde;o &eacute; necess&aacute;rio para a maioria dos projetos. Genericamente falando, n&atilde;o vejo raz&otilde;es para limitar o acesso a conte&uacute;dos do <em>site/blog</em> a determinado grupo de pessoas. Vejo as <em>newsletter </em>como um <strong>incremento</strong> &agrave;s possibilidades dispon&iacute;veis (e cab&iacute;veis) para recebimento de atualiza&ccedil;&otilde;es de conte&uacute;dos; n&atilde;o faz diferen&ccedil;a se por <em><a href="http://www.desenvolvimentoparaweb.com/o-que-sao-feeds/">feeds</a></em> ou por <em>newsletters</em>, o importante &eacute; a pessoa manter-se atualizada e saber sobre novos conte&uacute;dos.</p>
<h4>Assinantes (<em>Subscribers</em>)</h4>
<p>Nesta parte &eacute; poss&iacute;vel obter informa&ccedil;&otilde;es sobre os assinantes da <em>newsletter</em>. Na tabela aparecem as informa&ccedil;&otilde;es:</p>
<ul>
<li><strong>E-mail.</strong> O <em>e-mail</em> que a pessoa usou e que vai receber as <em>newsletters</em>.</li>
<li><strong>Username.</strong> Caso o<em> e-mail</em> cadastrado for de algu&eacute;m com acesso ao painel administrativo do WordPress, o <em>login </em>vai aparecer aqui; do contr&aacute;rio (o que vai acontecer na maioria dos casos), aparecer&aacute; &#8220;<em>not registered</em>&#8220;.</li>
<li><strong>Since.</strong> &Eacute; o dia e a hora em que o <em>e-mail</em> consta no sistema como recebedor de <em>newsletters</em>.</li>
<li><strong>Action.</strong> Quando a pessoa tiver clicado no <em>link </em>para confirma&ccedil;&atilde;o de recebimento de <em>newsletter</em>, aqui vai constar &#8220;Active&#8221;; quando tiver recebido o<em> e-mail</em>, mas ainda n&atilde;o tiver confirmado, ser&aacute; um link &#8220;Activate&#8221;, dando a op&ccedil;&atilde;o de voc&ecirc; ativar um <em>e-mail</em> mesmo sem a pessoa ter confirmado (op&ccedil;&atilde;o desnecess&aacute;ria, a meu ver).</li>
<li><strong>Delete.</strong> Para apagar o <em>e-mail</em> da lista dos que recebem as<em> newsletters</em> do <em>site</em>.</li>
</ul>
<h3>Conclus&otilde;es sobre o Ajax Newsletter Plugin para WordPress</h3>
<p>Como foi poss&iacute;vel perceber pelo artigo, a din&acirc;mica e funcionamento do <em>plugin</em> s&atilde;o bastante tranquilos e tudo &eacute; feito de forma bastante r&aacute;pida e simples.</p>
<p>Refor&ccedil;ando o que j&aacute; disse, sou da opini&atilde;o de que enviar conte&uacute;dos exclusivos, na grande maioria dos casos, n&atilde;o &eacute; uma boa pr&aacute;tica, dado que se deve ofertar v&aacute;rias possibilidades de recebimento de atualiza&ccedil;&otilde;es no site e, juntamente com as atualiza&ccedil;&otilde;es atrav&eacute;s de <a href="http://www.desenvolvimentoparaweb.com/o-que-sao-feeds/"><em>feeds</em></a>, as <em>newsletters</em> s&atilde;o uma &oacute;tima pedida!</p>
<p>Creio ser o wp-ajax-newsletter o mais f&aacute;cil <em>plugin</em> (gr&aacute;tis) para newsletters do WordPress dispon&iacute;vel atualmente. Depois de instalado e configutado, basta caprichar na customiza&ccedil;&atilde;o das op&ccedil;&otilde;es (e, aconselho eu, dedicar um pouco de seu tempo para traduzir as mensagens em ingl&ecirc;s nativas, editando os arquivos originais do plugin para o caso de ser um <em>job</em> nacional) e, mais importante, fazer valer a pena a subscri&ccedil;&atilde;o dos assinantes, <strong>provendo um conte&uacute;do de excelente qualidade</strong>!  ;-)</p>
<div class="link"><a title="Acesse o site do plugin para WordPress Ajax Newsletter (wp-ajax-newsletter)" href="http://code.google.com/p/wp-ajax-newsletter/">Ajax Newsletter (wp-ajax-newsletter)</a></div>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li><a href="http://desenvolvimentoparaweb.com/miscelanea/8-maneiras-de-melhorar-a-performance-de-um-site/" title="8 maneiras de melhorar a performance de um site">8 maneiras de melhorar a performance de um site</a></li><li><a href="http://desenvolvimentoparaweb.com/usabilidade/user-interface-dicas-rapidas/" title="User Interface em dicas rápidas">User Interface em dicas rápidas</a></li><li><a href="http://desenvolvimentoparaweb.com/seo/erros-comuns-desenvolvimento-web-campanhas-seo/" title="Erros comuns em desenvolvimento web para campanhas de SEO">Erros comuns em desenvolvimento web para campanhas de SEO</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/melhorando-interacao-formularios-busca/" title="Melhorando a interação em formulários de busca">Melhorando a interação em formulários de busca</a></li><li><a href="http://desenvolvimentoparaweb.com/xhtml/textarea-dicas-truques-textarea/" title="Textarea: dicas e truques que você sempre quis saber">Textarea: dicas e truques que você sempre quis saber</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/15-comandos-sql-wordpress/" title="15 fantásticos comandos SQL para WordPress">15 fantásticos comandos SQL para WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/usabilidade/recursos-usabilidade/" title="Recursos de usabilidade grátis">Recursos de usabilidade grátis</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/otimizacao-wordpress-performance-desempenho-blog-site/" title="Otimização WordPress: aumente a performance e desempenho de seu blog / site">Otimização WordPress: aumente a performance e desempenho de seu blog / site</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/8-dicas-fazer-codigos-melhores-jquery/" title="8 dicas para fazer códigos melhores com jQuery">8 dicas para fazer códigos melhores com jQuery</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/como-otimizar-imagens-web-internet/" title="Como otimizar imagens para web &#8211; guia de otimização de imagens">Como otimizar imagens para web &#8211; guia de otimização de imagens</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/wordpress/newsletter-no-wordpress-com-o-plugin-ajax-newsletter-wp-ajax-newsletter/feed/</wfw:commentRss>
		<slash:comments>24</slash:comments>
		</item>
		<item>
		<title>Check list de uma instala&#231;&#227;o b&#225;sica do WordPress</title>
		<link>http://desenvolvimentoparaweb.com/wordpress/check-list-de-uma-instalacao-basica-do-wordpress/</link>
		<comments>http://desenvolvimentoparaweb.com/wordpress/check-list-de-uma-instalacao-basica-do-wordpress/#comments</comments>
		<pubDate>Wed, 29 Oct 2008 13:20:20 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[cadastro]]></category>
		<category><![CDATA[check list]]></category>
		<category><![CDATA[instalação]]></category>
		<category><![CDATA[itens]]></category>
		<guid isPermaLink="false">http://www.desenvolvimentoparaweb.com/?p=419</guid>
		<description><![CDATA[Veja uma check list de uma instala&ccedil;&atilde;o b&aacute;sica do WordPress e confira se voc&ecirc; j&aacute; fez o que &eacute; necess&aacute;rio e instalou tudo o que &eacute; preciso para come&ccedil;ar]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="size-full wp-image-420" title="Checklist de uma intala&ccedil;&atilde;o do Wordpress." src="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2008/10/checklist-intalacao-wordpress.jpg" alt="Imagem com v&aacute;rios checks dispostos horizontalmente." width="500" height="150" /></p>
<p>O <a title="P&aacute;gina oficial do Wordpress (Brasil)." href="http://br.wordpress.org/">Wordpress</a> &eacute; certamente um dos maiores &#8211; considerados por alguns o maior &#8211; gerenciador de blogs e web sites (<a title="Leia o artigo Wordpress como CMS." href="http://www.desenvolvimentoparaweb.com/wordpress/wordpress-como-cms/">Wordpress como CMS?</a>) que existe atualmente. Sua facilidade de instala&ccedil;&atilde;o, manuten&ccedil;&atilde;o e uso, fazem desta plataforma uma das melhores de se mexer. Mas n&atilde;o &eacute; somente &#8220;instalar e pronto&#8221;; uma instala&ccedil;&atilde;o b&aacute;sica de Wordpress, segundo o que penso, conta com configura&ccedil;&otilde;es, usos, instala&ccedil;&atilde;o de plugins e outras coisas necess&aacute;rias para garantir a &#8220;infra estrutura b&aacute;sica&#8221; de funcionamento, j&aacute; pensando na expansibilidade e uso cont&iacute;nuo da plataforma.</p>
<p>Pensando nestas coisas que julgo importantes e imprescind&iacute;veis, elaborei um check list de uma instala&ccedil;&atilde;o b&aacute;sica de Wordpress eficiente, tanto para uso imediato, quanto pensando na manuten&ccedil;&atilde;o e &#8220;dura&ccedil;&atilde;o&#8221; de um blog ou web site. Esse check list de uma instal&ccedil;&atilde;o Wordpress vai ajudar voc&ecirc; a conhecer certas coisas, relembrar de outras e n&atilde;o esquecer toda elas! ;-)</p>
<h3>Pr&eacute;-instala&ccedil;&atilde;o do Wordpress</h3>
<ol>
<li>Tenha um dom&iacute;nio e um servidor de hospedagem com capacidade a PHP e MySQL e que tenha um espa&ccedil;o em disco e transfer&ecirc;ncia mensal segundo as caracter&iacute;sticas do blog/site que voc&ecirc; tem em mente (dependendo, eu posso fazer um plano legal para voc&ecirc;, basta <a title="Entrar em contato comigo sobre planos de hospedagem." href="http://www.desenvolvimentoparaweb.com/sobre/#formContato">entrar em contato</a>). Certifique-se que j&aacute; tem um host e um banco de dados criados para a instala&ccedil;&atilde;o do Wordpress.</li>
<li>Entre no <a title="Site oficial do Wordpress." href="http://br.wordpress.org/">site oficial do Wordpress</a> e baixe a vers&atilde;o mais atual dispon&iacute;vel (por motivos &oacute;bvios);</li>
<li>Envie os arquivos &#8211; descompactados &#8211; para seu servidor de hospedagem e acesse seu dom&iacute;nio (ou a pasta na qual jogou os arquivos) e fa&ccedil;a o <em>wizard</em> de instala&ccedil;&atilde;o do Wordpress. &Eacute; muito facinho, mesmo, nem precisa comentar a respeito.</li>
</ol>
<p>Pronto, &eacute; s&oacute; isso! Voc&ecirc; receber&aacute; uma senha aleat&oacute;rio para o usu&aacute;rio &#8220;admin&#8221; e j&aacute; pode fazer login no Wordpress!</p>
<h3>P&oacute;s-insta&ccedil;&atilde;o do Wordpress</h3>
<ol>
<li><a title="Obter uma API Key do Wordpress." href="http://wordpress.com/signup/">Obtenha uma API Key do Wordpress</a> para ativar o <a title="P&aacute;gina oficial do Akismet." href="http://akismet.com/">Akismet</a> (que j&aacute; vem por padr&atilde;o no Wordpress) &#8211; geralmente fica em <strong>Plugins &gt; Configura&ccedil;&atilde;o do Akismet</strong>;</li>
<li>Fique ciente sobre <a title="Veja preciosas dicas de seguran&ccedil;a para o Wordpress." href="http://www.desenvolvimentoparaweb.com/wordpress/preciosas-dicas-de-seguranca-e-otimizacao-para-wordpress/">preciosas dicas de seguran&ccedil;a no Wordpress</a>, com especial aten&ccedil;&atilde;o &agrave; <a title="Adquirir suas secret keys oficiais do Wordpress." href="http://api.wordpress.org/secret-key/1.1/">adquirir suas secret keys</a> mais recentes;</li>
<li>Configure corretamente seus permalinks e tenha aten&ccedil;&atilde;o quanto a outros aspectos de SEO, conforme as recomenda&ccedil;&otilde;es das <a title="Veja quais as melhores pr&aacute;ticas de SEO que voc&ecirc; pode adotar em seu blog." href="http://www.desenvolvimentoparaweb.com/seo/as-melhores-praticas-de-seo-que-voce-pode-adotar-em-seu-web-site-ou-blog-para-melhorar-o-posicionamento-nos-mecanismos-de-busca/">melhores pr&aacute;ticas de SEO que voc&ecirc; pode adotar em seu blog ou site</a>;</li>
<li>Fa&ccedil;a cadastro em alguns servi&ccedil;os primordiais para quem tem blogs/sites:
<ul>
<li><a title="Cadastrar-se no Feedburner." href="http://www.feedburner.com/">FeedBurner</a>;</li>
<li><a title="Acessar o Google Analytics." href="https://www.google.com/analytics/">Google Analytics</a>;</li>
<li><a title="Entrar no Google Webmaster Tools." href="https://www.google.com/webmasters/tools/">WebMaster Tools</a>.</li>
</ul>
</li>
<li>Instale alguns plugins &#8220;b&aacute;sicos&#8221; para um bom funcionamento do seu blog/site:
<ul>
<li><a title="Baixar o Google XML Sitemaps Generator." href="http://www.arnebrachhold.de/projects/wordpress-plugins/google-xml-sitemaps-generator/">Google XML Sitemaps</a>;</li>
<li><a title="Baixar o plugin para Wordpress Dagon Sitemap Generator." href="http://www.dagondesign.com/articles/sitemap-generator-plugin-for-wordpress/">Dagon Design Sitemap Generator</a>;</li>
<li><a title="Baixar vers&atilde;o mais recente do FeedBurner FeedSmith." href="http://www.google.com/support/feedburner/bin/answer.py?answer=78483&amp;topic=13252">FeedBurner FeedSmith</a>;</li>
<li><a title="Baixar o plugin Manageable." href="http://www.aaronharp.com/dev/wp-manageable/">Manageable</a>;</li>
<li><a title="Baixar o Ozh'Admin Drop Down Menu." href="http://planetozh.com/blog/my-projects/wordpress-admin-menu-drop-down-css/">Ozh&#8217; Admin Drop Down Menu</a>;</li>
<li><a title="Baixar o plugin Ozh'Better Feed." href="http://planetozh.com/blog/my-projects/wordpress-plugin-better-feed-rss/">Ozh&#8217; Better Feed</a>;</li>
<li><a title="Baixar o Platinum SEO Pack." href="http://techblissonline.com/platinum-seo-pack/">Platinum SEO Pack</a>;</li>
<li><a title="Fazer download do Robots Meta." href="http://yoast.com/wordpress/meta-robots-wordpress-plugin/">Robots Meta</a>;</li>
<li><a title="Baixar Wordpress Automatic Upgrade." href="http://techie-buzz.com/wordpress-plugins/wordpress-automatic-upgrade-12-release.html">Wordpress Automatic Upgrade</a>;</li>
<li><a title="Fazer download do plugins Wordpress Database Backup." href="http://www.ilfilosofo.com/blog/wp-db-backup/">Wordpress Database Backup</a>.</li>
</ul>
</li>
</ol>
<p>Genericamente falando, configure corretamente e com cuidado as op&ccedil;&otilde;es do Wordpress segundo seus objetivos. Considero que as op&ccedil;&otilde;es de configura&ccedil;&atilde;o nativas do Wordpress, apesar de n&atilde;o muito extensas, s&atilde;o muito boas; atendem a diversos tipos de blogs/sites e possibilitam um bom n&iacute;vel de configura&ccedil;&otilde;es b&aacute;sicas.</p>
<p>Esse check list ainda pode ser complementado. <strong>O que voc&ecirc; considera importante para uma instala&ccedil;&atilde;o b&aacute;sica do Wordpress?</strong></p>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li>Nenhum artigo relacionado...</li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/wordpress/check-list-de-uma-instalacao-basica-do-wordpress/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>&#8220;WordPress como CMS&#8221;?</title>
		<link>http://desenvolvimentoparaweb.com/wordpress/wordpress-como-cms/</link>
		<comments>http://desenvolvimentoparaweb.com/wordpress/wordpress-como-cms/#comments</comments>
		<pubDate>Fri, 29 Aug 2008 15:05:32 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[cms]]></category>
		<category><![CDATA[desenvolvimento para web]]></category>
		<category><![CDATA[equívoco]]></category>
		<category><![CDATA[projeto]]></category>
		<guid isPermaLink="false">http://www.desenvolvimentoparaweb.com/?p=361</guid>
		<description><![CDATA[&Eacute; muito comum ler na web que algu&eacute;m vai usar “WordPress como CMS” ou “WordPress &eacute; t&atilde;o bom que pode ser usado como CMS”, mas ser&aacute; que essa express&atilde;o est&aacute; realmente correta?]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="size-medium wp-image-363" title="Imagem do logotipo do Wordpress." src="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2008/08/wordpress-logo.png" alt="Imagem do logotipo do Wordpress." width="285" height="285" /></p>
<p>&Eacute; muito comum ler na <em>web</em> que algu&eacute;m vai usar &#8220;Wordpress como CMS&#8221;; que &#8220;Wordpress &eacute; t&atilde;o bom que pode ser usado como CMS&#8221;; &#8220;s&oacute; fa&ccedil;o <em>sites </em>com Wordpress como CMS&#8221;; e por a&iacute; vai&#8230; H&aacute; uma confus&atilde;o quanto a esta express&atilde;o, &#8220;<strong>Wordpress como CMS</strong>&#8220;, que &eacute; usada de forma err&ocirc;nea pelas pessoas e, se assim continuar, vai acabar causando uma grande confus&atilde;o na cebe&ccedil;a de quem est&aacute; come&ccedil;ando a desenvolver com <a title="Visitar site oficial do Wordpress." href="http://wordpress.org/">Wordpress</a>.</p>
<h3>O que &eacute; um &#8220;CMS&#8221;?</h3>
<p>Antes de mais nada, &eacute; importante saber o que significa &#8220;CMS&#8221;. Na <a title="Mais sobre CMS, na Wikip&eacute;dia." href="http://pt.wikipedia.org/wiki/Cms">Wikip&eacute;dia</a>, o texto mostra que</p>
<blockquote><p>Um Sistema de Gerenciamento de Conte&uacute;do &#8211; SGC, (em ingl&ecirc;s Content Management Systems &#8211; CMS), &eacute; um sistema gerenciador de websites, portais e intranets que integra ferramentas necess&aacute;rias para criar, gerenciar (editar e inserir) conte&uacute;do em tempo real, sem a necessidade de programa&ccedil;&atilde;o de c&oacute;digo, cujo objetivo &eacute; estruturar e facilitar a cria&ccedil;&atilde;o, administra&ccedil;&atilde;o, distribui&ccedil;&atilde;o, publica&ccedil;&atilde;o e disponibilidade da informa&ccedil;&atilde;o. Sua maior caracter&iacute;stica &eacute; a grande quantidade de fun&ccedil;&otilde;es presentes.</p></blockquote>
<p>Quer dizer, um <strong>Sistema de Gerenciamento de Conte&uacute;do</strong> &eacute; um sistema feito para que as pessoas possam alterar o conte&uacute;do de <em>web sites</em>, <em>intranets</em>, sistemas interativos ou o que quer que seja, sem a necessidade de ter conhecimentos &#8220;t&eacute;cnicos&#8221;, como saber XHTML, CSS, Javascript, etc.</p>
<p>Atrav&eacute;s de um CMS, ent&atilde;o, a pessoa &#8220;leiga&#8221; em tecnologias <em>web</em> tem a capacidade de alterar as informa&ccedil;&otilde;es &#8211; <strong>conte&uacute;dos</strong> &#8211; de alguma publica&ccedil;&atilde;o e/ou sistema on line sem a necessidade de interven&ccedil;&atilde;o de um profissional/atuante da &aacute;rea de desenvolvimento <em>web</em>.</p>
<h3>Por alto, o que &eacute; poss&iacute;vel fazer com o Wordpress?</h3>
<p>Com o Wordpress &eacute; poss&iacute;vel, dentre outras coisas:</p>
<ul>
<li>Criar p&aacute;ginas &#8220;fixas&#8221;;</li>
<li>Editar p&aacute;ginas fixas;</li>
<li>Crirar artigos;</li>
<li>Editar artigos;</li>
<li>Inserir fotos, v&iacute;deos e outras m&iacute;dias;</li>
<li>Editar fotos v&iacute;deos e outras m&iacute;dias que foram inseridos;</li>
<li>Criar textos, links e intera&ccedil;&otilde;es;</li>
<li>Editar textos, links, alterar as intera&ccedil;&otilde;es.</li>
<li>Muitas outras coisas!</li>
</ul>
<h3>Qual o equ&iacute;voco em dizer &#8220;Wordpress como CMS&#8221;?</h3>
<p>Na verdade, n&atilde;o &eacute; equ&iacute;voco algum quando algu&eacute;m diz &#8220;Wordpress como CMS&#8221;; o equ&iacute;voco est&aacute; no <strong>contexto</strong> em que as pessoas falam isso. Comumente, quando algu&eacute;m diz isso, est&aacute; se referindo a criar um novo tema (ou modificar um j&aacute; existente) do Wordpress para que ele ou alguma outra pessoa &#8211; um cliente, possivelmente &#8211; <strong>utilize a plataforma para gerenciar as informa&ccedil;&otilde;es de um site e n&atilde;o de um blog</strong> &#8211; sendo que um <em>blog</em> n&atilde;o deixa de ser um <em>site</em>.</p>
<p>Quando as pessoas dizem que usam Wordpress como CMS, est&atilde;o querendo dizer que v&atilde;o gerenciar um sistema <em>on line</em> &#8220;com cara de <em>site</em>&#8221; ao inv&eacute;s de &#8220;com cara de <em>blog</em>&#8221; &#8211; pois <em>blog</em>, apesar de ser um <em>site</em>, tem algumas caracter&iacute;sticas diferenciadas, como disposi&ccedil;&atilde;o segundo cronologia, atualiza&ccedil;&atilde;o constante, alguns elementos constitutivos, dentre outras.</p>
<p>Ent&atilde;o, minha gente, percebam que <strong>o Wordpress j&aacute; &eacute; um CMS por padr&atilde;o</strong>! Ele j&aacute; &eacute; usado para criar e editar conte&uacute;dos, em geral, de maneira que quem o est&aacute; usando n&atilde;o tenha a necessidade de ter conhecimentos t&eacute;cnicos na &aacute;rea de desenvolvimento <em>web</em>! Por padr&atilde;o, o Wordpress j&aacute; tem a capcidade de &#8220;estruturar e facilitar a cria&ccedil;&atilde;o, administra&ccedil;&atilde;o, distribui&ccedil;&atilde;o, publica&ccedil;&atilde;o e disponibilidade da informa&ccedil;&atilde;o&#8221;!</p>
<p>Entenderam, agora, quando digo que h&aacute; um tremendo equ&iacute;voco quando as pessoas dizem &#8220;Vou usar o Wordpress como CMS&#8221;? A plataforma Wordpress <strong>j&aacute; &eacute;</strong> um CMS!</p>
<p>Quando voc&ecirc; for utilizar o Wordpress que, por padr&atilde;o, &#8220;tem cara de <em>blog</em>&#8220;, para algum trabalho que tenha &#8220;cara de <em>site</em>&#8220;, n&atilde;o precisa dizer &#8220;vou usar Wordpress como CMS&#8221;; simplesmente diga: &#8220;Vou usar Wordpress&#8221;.</p>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li><a href="http://desenvolvimentoparaweb.com/php/urls-amigaveis-slug-a-wordpress/" title="URLs amigáveis (slug) à WordPress">URLs amigáveis (slug) à WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/otimizacao-wordpress-performance-desempenho-blog-site/" title="Otimização WordPress: aumente a performance e desempenho de seu blog / site">Otimização WordPress: aumente a performance e desempenho de seu blog / site</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/truques-de-configuracao-do-wordpress/" title="Truques de configuração do WordPress">Truques de configuração do WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/indicacoes/cushycms-cms-versatil-simples-rapido-facil-e-gratuito/" title="CushyCMS: CMS versátil, simples, rápido, fácil e gratuito">CushyCMS: CMS versátil, simples, rápido, fácil e gratuito</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/maneira-simples-de-saber-quem-faz-referencias-a-seu-blog-wordpress/" title="Maneira simples de saber quem faz referências a seu blog WordPress">Maneira simples de saber quem faz referências a seu blog WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/wp-syntax-destacar-codigos-fonte-em-artigos-de-blogs-wordpress/" title="WP-Syntax: destacar códigos fonte em artigos de blogs WordPress">WP-Syntax: destacar códigos fonte em artigos de blogs WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/indicacoes/mais-de-450-extensoes-para-wordpress/" title="Mais de 450 extensões para WordPress">Mais de 450 extensões para WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/desenvolvimento-para-web-2/" title="Desenvolvimento para web 2.0">Desenvolvimento para web 2.0</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/wassup-plugin-wordpress-estatisticas-acesso-em-tempo-real/" title="WassUp: plugin WordPress para ver estatísticas de acesso (em tempo real)">WassUp: plugin WordPress para ver estatísticas de acesso (em tempo real)</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/wordpress/wordpress-como-cms/feed/</wfw:commentRss>
		<slash:comments>29</slash:comments>
		</item>
		<item>
		<title>Maneira simples de saber quem faz refer&#234;ncias a seu blog WordPress</title>
		<link>http://desenvolvimentoparaweb.com/wordpress/maneira-simples-de-saber-quem-faz-referencias-a-seu-blog-wordpress/</link>
		<comments>http://desenvolvimentoparaweb.com/wordpress/maneira-simples-de-saber-quem-faz-referencias-a-seu-blog-wordpress/#comments</comments>
		<pubDate>Wed, 20 Aug 2008 14:44:16 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[blogs]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[feed]]></category>
		<category><![CDATA[referência]]></category>
		<category><![CDATA[sem]]></category>
		<guid isPermaLink="false">http://www.desenvolvimentoparaweb.com/?p=318</guid>
		<description><![CDATA[Maneira simples de saber quem faz refer&ecirc;ncias a seu site para incrementar sua estrat&eacute;gia de SEO/SEM]]></description>
			<content:encoded><![CDATA[<p>Uma das principais estrat&eacute;gias de SEO, SEM, acompanhamento de resultados, est&aacute;ticas, m&eacute;tricas e quaisquer outras atividades e siglas referentes a saber como est&aacute; o <em>status</em> de seu <em>blog</em> na <em>web</em>, &eacute; <strong>saber quais s&atilde;o os sites que fazem refer&ecirc;ncia ao seu</strong> &#8211; corrija-me o <a title="Visitar o blog do Alexis Kauffmann." href="http://meusitenaprimeirapaginadogoogle.blogspot.com/">Alexis</a>, se estiver falando besteira. Quando algum outro <em>site</em> ou <em>blog</em> faz liga&ccedil;&otilde;es a seu <em>blog</em> &eacute; sinal de que algum conte&uacute;do seu foi reconhecido e indicado &#8211; &#8220;recebeu um voto&#8221;, como dizem alguns &#8211; e agora existe uma liga&ccedil;&atilde;o para ele, um <em><a title="Mais sobre inbound links, na Wikip&eacute;dia." href="http://en.wikipedia.org/wiki/Inbound_link">inbound link</a></em>.</p>
<p>Existem diversas maneira de saber quando uma liga&ccedil;&atilde;o foi feita a seu <em>blog</em> Wordpress, seja usando sistemas na <em>web</em>, realizando consultas &#8220;especiais&#8221; no Google, usando <em>plugins</em>, etc. Entretanto, a maneira mais pr&aacute;tica, r&aacute;pida e f&aacute;cil de saber sobre as liga&ccedil;&otilde;es que s&atilde;o feitas a seu <em>web site</em> ou <em>blog</em> &#8211; pelo menos no meu ponto de vista &#8211; &eacute; fornecida pelo pr&oacute;prio Wordpress.</p>
<h3>Assinar o feed de liga&ccedil;&otilde;es para seu blog Wordpress</h3>
<p>Existe uma maneira de assinar um <em>feed</em> cujo conte&uacute;do s&atilde;o as <strong>refer&ecirc;ncia que s&atilde;o feitas para seu <em>blog</em> Wordpress</strong>! Este <em>feed</em> libera uma nova &#8220;not&iacute;cia&#8221; cada vez que seu <em>blog</em> recebe um <em>inbound link</em>, informando o t&iacute;tulo, endere&ccedil;o, quem escreveu e um trecho do artigo.</p>
<p>Para mim, que sou vidrado em <em>feeds</em> e n&atilde;o fico sequer um dia sem conferir as novidades, saber, atrav&eacute;s de um <em>feed</em> de inbound links ao <a title="Desenvolvimento para web." href="http://www.desenvolvimentoparaweb.com/">desenvolvimento para web</a>, quem fez uma refer&ecirc;ncia ao <em>blog</em>, &eacute; espetacular!</p>
<h3>Como assinar o feed de refer&ecirc;ncia a seu blog ou site Wordpress</h3>
<p>&Eacute; muito f&aacute;cil assinar o feed de <em>inbound links</em> para seu <em>site</em> ou <em>blog</em> Wordpress. Na verdade, &eacute; uma op&ccedil;&atilde;o que aparece na primeira p&aacute;gina do painel administrativo, numa &aacute;rea de bastante visibilidade, mas que, n&atilde;o sei por que, a maioria dos que usam Wordpress desconhecem o recurso.</p>
<p>Basta voc&ecirc; clicar na op&ccedil;&atilde;o &#8220;RSS&#8221; que aparece &agrave; extrema direita da divis&atilde;o &#8220;<strong>Links de Entrada</strong>&#8220;. O <em>link </em>que tem um iconezinho de Feed RSS.</p>
<p style="text-align: center;"><img class="size-full wp-image-321" title="Link do Feed de refer&ecirc;ncias a blog Wordpress." src="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2008/08/link-feed-referencia-blog-wordpress.jpg" alt="Link do Feed de refer&ecirc;ncias a blog Wordpress." width="486" height="168" /></p>
<p>Ent&atilde;o, voc&ecirc; simplesmente copia o endere&ccedil;o do Feed de refer&ecirc;ncia a seu <em>blog</em> e o cadastra em seu agregador de Feeds &#8211; recomendo o <a title="Acessar o Google Reader." href="http://www.google.com.br/reader/">Google Reader</a>, por achar que &eacute; o melhor agregador de <em>feeds</em>.</p>
<p>Bem facinho, n&eacute;? ;-)</p>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li><a href="http://desenvolvimentoparaweb.com/miscelanea/desenvolvimento-para-web-2/" title="Desenvolvimento para web 2.0">Desenvolvimento para web 2.0</a></li><li><a href="http://desenvolvimentoparaweb.com/indicacoes/mais-de-450-extensoes-para-wordpress/" title="Mais de 450 extensões para WordPress">Mais de 450 extensões para WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/wassup-plugin-wordpress-estatisticas-acesso-em-tempo-real/" title="WassUp: plugin WordPress para ver estatísticas de acesso (em tempo real)">WassUp: plugin WordPress para ver estatísticas de acesso (em tempo real)</a></li><li><a href="http://desenvolvimentoparaweb.com/indicacoes/aprenda-a-escolher-as-melhores-palavras-chave-para-a-otimizacao-de-seu-site/" title="Aprenda a escolher as melhores palavras-chave para a otimização de seu site">Aprenda a escolher as melhores palavras-chave para a otimização de seu site</a></li><li><a href="http://desenvolvimentoparaweb.com/seo/as-melhores-praticas-de-seo-para-melhorar-posicionamento-mecanismos-de-busca/" title="As melhores práticas de SEO para seu site ou blog melhorar o posicionamento nos mecanismos de busca">As melhores práticas de SEO para seu site ou blog melhorar o posicionamento nos mecanismos de busca</a></li><li><a href="http://desenvolvimentoparaweb.com/php/urls-amigaveis-slug-a-wordpress/" title="URLs amigáveis (slug) à WordPress">URLs amigáveis (slug) à WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/otimizacao-wordpress-performance-desempenho-blog-site/" title="Otimização WordPress: aumente a performance e desempenho de seu blog / site">Otimização WordPress: aumente a performance e desempenho de seu blog / site</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/truques-de-configuracao-do-wordpress/" title="Truques de configuração do WordPress">Truques de configuração do WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/novo-tema-para-o-blog-dpw2009/" title="Novo tema para o blog: dpw2009">Novo tema para o blog: dpw2009</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/wordpress-como-cms/" title="&#8220;WordPress como CMS&#8221;?">&#8220;WordPress como CMS&#8221;?</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/wordpress/maneira-simples-de-saber-quem-faz-referencias-a-seu-blog-wordpress/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Preciosas dicas de seguran&#231;a e otimiza&#231;&#227;o para WordPress</title>
		<link>http://desenvolvimentoparaweb.com/wordpress/preciosas-dicas-de-seguranca-e-otimizacao-para-wordpress/</link>
		<comments>http://desenvolvimentoparaweb.com/wordpress/preciosas-dicas-de-seguranca-e-otimizacao-para-wordpress/#comments</comments>
		<pubDate>Wed, 16 Jul 2008 19:32:52 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[blogs]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[extensões]]></category>
		<category><![CDATA[macetes]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[segurança]]></category>
		<guid isPermaLink="false">http://www.desenvolvimentoparaweb.com/?p=200</guid>
		<description><![CDATA[Preciosas dicas de seguran&ccedil;a e otimiza&ccedil;&atilde;o para WordPress para uma instala&ccedil;&atilde;o segura, inst&aacute;vel e confi&aacute;vel]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="alignnone size-full wp-image-201" title="Wordpress seguro." src="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2008/07/wordpress-seguro.gif" alt="Wordpress seguro." width="350" height="256" /></p>
<p>Com o lan&ccedil;amento da <a title="Saiba dos pormenores do Wordpress 2.6." href="http://www.wordpress-love.com/2008/07/wordpress-26-final-lancado-saiba-todos-os-pormenores/">nova vers&atilde;o do Wordpress, Wordpress 2.6</a>, muitos <em>bugs</em> foram corrijidos, muitos referentes &agrave; seguran&ccedil;a da plataforma de <em>blogging</em>. Entretanto, algumas medidas extras podem e devem ser tomadas, a fim de garantir uma instala&ccedil;&atilde;o <strong>segura</strong> e <strong>inst&aacute;vel</strong> de seu <em>blog</em>, livre de surpresas desagrad&aacute;veis, como <em>exploits</em>, invas&otilde;es, perda das informa&ccedil;&otilde;es e outros.</p>
<h3>Tenha sempre a &uacute;ltima vers&atilde;o do Wordpress e dos plugins</h3>
<p>Esta &eacute; a dica mais simples e f&aacute;cil e, ao mesmo tempo, a mais intuitiva e que praticamente todos a seguem, sem ter que &#8220;pensar&#8221; muito. Como comentado no in&iacute;cio do artigo, sempre que uma nova vers&atilde;o do Wordpress sai, al&eacute;m das inova&ccedil;&otilde;es e funcionalidades, diversos erros de programa&ccedil;&atilde;o, <em>bugs</em>, e otimiza&ccedil;&atilde;o nos c&oacute;digos s&atilde;o feitos.</p>
<p>Por isso, <strong>&eacute; sempre bom ter instalada a &uacute;ltima vers&atilde;o do Wordpress</strong> e seus respectivos <em>plugins</em>, pois estes tamb&eacute;m podem apresentar eventuais falhas que abrem brechas e, n&atilde;o raramente, comprometem a instabilidade, desempenho e seguran&ccedil;a e funcionamento de uma instala&ccedil;&atilde;o inteira de Wordpress!</p>
<p>Para manter o Wordpress atualizado &eacute; simples: sempre que sai uma nova vers&atilde;o, um aviso aparece na &aacute;rea administrativa. Com os <em>plugins</em> n&atilde;o &eacute; diferente, mas &eacute; preciso visitar frequentemente a p&aacute;gina de extens&otilde;es para receber os avisos de atualiza&ccedil;&otilde;es e fazer o <em>upgrade</em> autom&aacute;tico, dispon&iacute;vel desde duas vers&otilde;es anteriores do WP.</p>
<p>No caso da vers&atilde;o do Wordpress, em si, existem diversas maneiras de se atualizar:</p>
<ul>
<li><a title="Baixar a vers&atilde;o mais atual do Wordpress." href="http://wordpress.org/download/">Baixar a vers&atilde;o mais atual do Wordpress</a> no site oficial e fazer a atualiza&ccedil;&atilde;o manual;</li>
<li>Utilizar extens&otilde;es do WP para se fazer <em>upgrade</em> (como <a title="Baixar o plugin para autualiza&ccedil;&atilde;o f&aacute;cil do Wordpress." href="http://wordpress.org/extend/plugins/wordpress-automatic-upgrade/">Wordpress Automatic upgrade</a> e outros);</li>
<li>Alguns servidores de hospedagem contam com op&ccedil;&atilde;o de atualiza&ccedil;&atilde;o autom&aacute;tica.</li>
</ul>
<p>Lembrando sempre do &#8220;lema&#8221;: <strong>fa&ccedil;a <em>backup</em> antes, fa&ccedil;a <em>backup</em> sempre</strong>! ;-)</p>
<h3>Use plugins para otimiza&ccedil;&atilde;o e seguran&ccedil;a de seu blog ou site Wordpress</h3>
<p>Existem milhares de <em>plugins</em> dispon&iacute;veis para Wordpress; <em>plugins</em> estes que servem para os mais diversos fins e prop&oacute;sitos, desde um simples enfeite em alguma &aacute;rea do <em>blog</em>, at&eacute; fun&ccedil;&otilde;es que, pessoalmente, acredito que deveriam vir por padr&atilde;o no WP como op&ccedil;&otilde;es de otimiza&ccedil;&atilde;o na parte de SEO (por falar nisso, ao contr&aacute;rio do que muitos pensam, <a title="Nova p&aacute;gina do plugin Wordpress All in One SEO Pack." href="http://semperfiwebdesign.com/portfolio/wordpress/wordpress-plugins/all-in-one-seo-pack/">o <em>plugin</em> All in One SEO Pack n&atilde;o foi descontinuado</a>), seguran&ccedil;a e outros.</p>
<p>Portanto, para suprir esta relativa &#8220;car&ecirc;ncia nativa&#8221; do Wordpress, &eacute; recomendado que se use, pelo menos, as seguintes extens&otilde;es:</p>
<ul>
<li><strong>Akismet.</strong> O popular e conhecido <a title="Baixar e usar o Akismet." href="http://wordpress.org/extend/plugins/akismet/">Akismet</a> &eacute; um dos mais usados <em>plugins</em> Wordpress. Ele previne <em>spams</em> nos coment&aacute;rios e um poss&iacute;vel ataque de mensagens em massa, na tentativa de sobrecarregamento e exposi&ccedil;&atilde;o/cria&ccedil;&atilde;o de vulnerabilidades. Utiliz&aacute;-lo &eacute; obrigat&oacute;rio em <em>blogs</em> e <em>sites</em> baseados no Wordpress;</li>
<li><strong>WP Security Scan.</strong> Usar o <a title="Baixar o plugins Wordpress WP Security Scan." href="http://wordpress.org/extend/plugins/wp-security-scan/">WP Security Scan</a> &eacute; importante pois, como sugere o pr&oacute;prio nome, o <em>plugins</em> faz uma bateria de testes em sua insta&ccedil;&atilde;o Wordpress para detectar alguma falha de seguran&ccedil;a. Essa an&aacute;lise de seguran&ccedil;a, al&eacute;m da verifica&ccedil;&atilde;o de vulnerabilidades, ainda sugere a&ccedil;&otilde;es corretivas nas &aacute;reas de senhas, permiss&otilde;es de arquivos, seguran&ccedil;a do banco de dados, oculta&ccedil;&atilde;o de vers&otilde;es, dentre outros;</li>
<li><strong>Optimize DB.</strong> A extens&atilde;o <a title="Baixar e instalar a extens&atilde;o Wordpress Optimize DB." href="http://wordpress.org/extend/plugins/optimize-db/">Optimize DB</a> serve para melhorar o desempenho e implementar melhores e otimiza&ccedil;&otilde;es, em geral, nas tabelas do WP. Com apenas um clique a extens&atilde;o analise como anda o banco de dados e faz as devidas melhorias, providenciando um bom aumento de performance;</li>
<li><strong>WP-DBManager.</strong> O <a title="Baixar a extens&atilde;o Wordpress WP-DBManager." href="http://wordpress.org/extend/plugins/wp-dbmanager/">WP-DBManager</a> serve para tarefas estritamente relacionadas &agrave;s bases de dados da instala&ccedil;&atilde;o Wordpress, permitindo realizar v&aacute;rias atividades, como otimizar, fazer <em>backups</em> e restaura&ccedil;&otilde;es do banco de dados, apagar e esvaziar dados e tabelas, realizar consultas personalizadas e mais;</li>
<li><strong>WordPress Database Backup.</strong> A extens&atilde;o <a title="P&aacute;gina oficial da extens&ccedil;&atilde;o Wordpress Database Backup." href="http://www.ilfilosofo.com/blog/wp-db-backup">WordPress Database Backup</a> faz <em>backups</em> das bases de dados da insta&ccedil;&atilde;o Wordpress padr&atilde;o e tamb&eacute;m da tabelas que alguns <em>plugins</em> criam para funcionar corretamente. &Eacute; poss&iacute;vel fazer um <em>backup</em> individual, a hora que se quer, ou agendar backups autom&aacute;ticos, di&aacute;rios ou semanais, que s&atilde;o enviados para uma conta de <em>e-mail</em> escolhida.</li>
</ul>
<h3>Login Lockdown plugin</h3>
<p>Fora os <em>plugins</em> citados acima, que considero indispens&aacute;veis para uma instala&ccedil;&atilde;o segura de Wordpress, a instala&ccedil;&atilde;o do <em>plugin</em> <a title="Visitar a p&aacute;gina oficial do Login Lockdown." href="http://www.bad-neighborhood.com/login-lockdown.html">Login Lockdown</a> pode ser igualmente &uacute;til. Este plugin <strong>Login Lockdown</strong>, depois de instalado, guarda o endere&ccedil;o IP e <em>timestamp</em> de todas as tentativas de <em>login</em> fracassadas no painel de controle. Depois de 3 falhas de autentica&ccedil;&atilde;o no per&iacute;odo de 5 minutos, o acesso &agrave;quele IP espec&iacute;fico ao painel administrativo &eacute; travado por 1 hora.</p>
<p>Com isso, caso algu&eacute;m tente descobrir a senha do painel de controle WP de forma manual ou atrav&eacute;s de uso de <em>scripts</em> que impregam a t&eacute;cnica de for&ccedil;a bruta, este algu&eacute;m ter&aacute; pela frente mais uma camada de seguran&ccedil;a e o acesso &agrave;s &aacute;reas cr&iacute;ticas de seu <em>blog</em> fica mais seguro.</p>
<h3>Secret Key</h3>
<p>Muitos desconhecem o fato de ser poss&iacute;vel adquirir uma <strong>Secret Key</strong> para melhorar a seguran&ccedil;a de uma instala&ccedil;&atilde;o Wordpress, apesar de a pr&oacute;pria equipe do CMS frequentemente alertar sobre a import&acirc;ncia e necessidade de se ter uma.</p>
<p>Primeiramente, <a title="Adquirir uma secret key Wordpress." href="http://api.wordpress.org/secret-key/1.0/">adquira uma <em>secret key</em></a>. Depois disso, acesse sua base de arquivos Wordpress e coloque para editar o arquivo <strong>wp-config.php</strong>, na raiz da instala&ccedil;&atilde;o. Nele, simplesmente acrescente a linha de c&oacute;digo da sua <em>secret key</em>.</p>
<p>Aten&ccedil;&atilde;o para o fato de que a cada atualiza&ccedil;&atilde;o da p&aacute;gina &eacute; gerada uma <strong><em>secret key</em> Wordpress &uacute;nica</strong>, sem repeti&ccedil;&otilde;es. Quer dizer, guarde-a com cuidado porque, caso voc&ecirc; perca a sua, ter&aacute; que pegar uma nova.</p>
<h3>Voc&ecirc; tem uma insta&ccedil;&atilde;o Wordpress segura?</h3>
<p>Ter uma insta&ccedil;&atilde;o Wordpress segura deve ser preocupa&ccedil;&atilde;o de todo aquele que tem um <em>blog</em> ou <em>site</em> baseado na plataforma. Construir bases seguras e bem-feitas &eacute; o primeiro passo a se tomar na constru&ccedil;&atilde;o de um projeto de qualidade e longa dura&ccedil;&atilde;o.</p>
<p>Uma das primeiras coisas a se fazer quando se instala um Wordpress &eacute; fazer a seguinte <em>checklist</em>:</p>
<ul>
<li>Tenha a vers&atilde;o mais recente do Wordpress e sempre atualize a plataforma de <em>blogging</em>;</li>
<li><a title="Adquirir uma secret key para incrementar a seguran&ccedil;a de seu Wordpress." href="http://api.wordpress.org/secret-key/1.0/">Adquira uma <em>secret key</em></a> e implemente a linha de c&oacute;digo no arquivo <strong>wp-config.php</strong>;</li>
<li>Confira se a vers&atilde;o dos <em>plugins</em> usados &eacute; a mais recente e, se necess&aacute;rio, fa&ccedil;a as devidas atualiza&ccedil;&otilde;es;</li>
<li>Instale, configure e use corretamente os <em>plugins</em> citados para seguran&ccedil;a e otimiza&ccedil;&atilde;o do Wordpress;</li>
<li>Visite frequentemente sua p&aacute;gina de <em>plugins</em> para ver se saiu alguma vers&atilde;o nova e fazer as devidas atualiza&ccedil;&otilde;es.</li>
</ul>
<p>Seguindo estas etapas &eacute; dar o primeiro passo para se ter uma <strong>boa instala&ccedil;&atilde;o Wordpress, s&oacute;lida, confi&aacute;vel e segura</strong>, livre de &#8220;azar&otilde;es virtuais&#8221; e pessoas mal intencionadas.</p>
<p>O passo seguinte &eacute; se manter atualizado sobre o Wordpress, visitar <em>blogs</em> que tratam do CMS, listas de discuss&atilde;o, f&oacute;runs ou simplesmente pedindo a um amigo que entenda/goste mais para avisar sobre alguma mudan&ccedil;a importante ou atualiza&ccedil;&atilde;o de seguran&ccedil;a do Wordpress.</p>
<p>Fazendo isso, certamente voc&ecirc; poder&aacute; se focar naquilo que &eacute; o mais importante em seu <em>blog</em>: <strong>produzir conte&uacute;dos de qualidade</strong> e <strong>interagir com seus leitores</strong>, proporcionando uma melhor experi&ecirc;ncia e estabilidade de acesso &agrave;queles que o prestigiam com a leitura de seus artigos.</p>
<p>Se tiver alguma outra dica, sugest&atilde;o ou macete para se ter uma <strong>melhor seguran&ccedil;a no Wordpress</strong>, n&atilde;o se acanhe em compartilhar conosco! ;-)</p>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li><a href="http://desenvolvimentoparaweb.com/xhtml/textarea-dicas-truques-textarea/" title="Textarea: dicas e truques que você sempre quis saber">Textarea: dicas e truques que você sempre quis saber</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/15-comandos-sql-wordpress/" title="15 fantásticos comandos SQL para WordPress">15 fantásticos comandos SQL para WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/como-criar-sumarios-dinamicamente-com-o-toc-table-of-contents-jquery-plugin-jquerytoc/" title="Como criar sumários dinamicamente com o TOC (Table of Contents) jQuery plugin">Como criar sumários dinamicamente com o TOC (Table of Contents) jQuery plugin</a></li><li><a href="http://desenvolvimentoparaweb.com/indicacoes/mais-de-450-extensoes-para-wordpress/" title="Mais de 450 extensões para WordPress">Mais de 450 extensões para WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/wassup-plugin-wordpress-estatisticas-acesso-em-tempo-real/" title="WassUp: plugin WordPress para ver estatísticas de acesso (em tempo real)">WassUp: plugin WordPress para ver estatísticas de acesso (em tempo real)</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/jquery-mais-50-dos-melhores-tutoriais-apostilas-e-exemplos/" title="jQuery: mais 50 dos melhores tutoriais, apostilas e exemplos">jQuery: mais 50 dos melhores tutoriais, apostilas e exemplos</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/como-tirar-screenshot-de-um-web-site-inteiro-e-obter-uma-imagem-completa/" title="Como tirar screenshot de um web site inteiro e obter uma imagem completa">Como tirar screenshot de um web site inteiro e obter uma imagem completa</a></li><li><a href="http://desenvolvimentoparaweb.com/indicacoes/25-extensoes-para-o-firefox-para-aumentar-a-produtividade-no-dia-a-dia-na-web/" title="25 extensões para o Firefox para aumentar a produtividade no dia-a-dia na web">25 extensões para o Firefox para aumentar a produtividade no dia-a-dia na web</a></li><li><a href="http://desenvolvimentoparaweb.com/seo/erros-comuns-desenvolvimento-web-campanhas-seo/" title="Erros comuns em desenvolvimento web para campanhas de SEO">Erros comuns em desenvolvimento web para campanhas de SEO</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/melhorando-interacao-formularios-busca/" title="Melhorando a interação em formulários de busca">Melhorando a interação em formulários de busca</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/wordpress/preciosas-dicas-de-seguranca-e-otimizacao-para-wordpress/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>WP-Syntax: destacar c&#243;digos fonte em artigos de blogs WordPress</title>
		<link>http://desenvolvimentoparaweb.com/wordpress/wp-syntax-destacar-codigos-fonte-em-artigos-de-blogs-wordpress/</link>
		<comments>http://desenvolvimentoparaweb.com/wordpress/wp-syntax-destacar-codigos-fonte-em-artigos-de-blogs-wordpress/#comments</comments>
		<pubDate>Wed, 09 Jul 2008 21:05:40 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[código-fonte]]></category>
		<category><![CDATA[estilização]]></category>
		<category><![CDATA[sintaxe]]></category>
		<guid isPermaLink="false">http://www.desenvolvimentoparaweb.com/?p=197</guid>
		<description><![CDATA[Conhe&ccedil;a o plugin para destacar c&oacute;digos-fonte e destacar automaticamente a sintaxe da codifica&ccedil;&atilde;o]]></description>
			<content:encoded><![CDATA[<p>Para quem tem <em>blogs</em> Wordpress que tratam de assuntos relacionados &agrave; programa&ccedil;&atilde;o, <em>softwares</em>, linguagens de marca&ccedil;&atilde;o, estilos e afins, uma das grandes dificuldades &eacute; escrever artigos explicativos e evidenciar corretamente os c&oacute;digos de marca&ccedil;&atilde;o e programa&ccedil;&atilde;o nestes, atrav&eacute;s de uma sintaxe estilizada e compreens&iacute;vel.</p>
<p>Alguns criam regras CSS para utilizar em trechos dos c&oacute;digos que apresentam, criando diversas classes, para estilizar diversas cores de texto com a propriedade &#8220;color&#8221;. Entretanto, a aplica&ccedil;&atilde;o deste monte de classes em um c&oacute;digo, al&eacute;m de ser demorada e sua implementa&ccedil;&atilde;o desgastante para o autor do <em>post</em>, apresenta o inconveniente de ser dificilmente manuten&iacute;vel.</p>
<p>Para apresentar diversos tipos de c&oacute;digos em <em>posts</em> de <em>blogs</em> Wordpress, existe uma solu&ccedil;&atilde;o melhor, mais r&aacute;pida, pr&aacute;tica e que utiliza uma das principais vantagens desta plataforma: a extensibilidade de suas fun&ccedil;&otilde;es atrav&eacute;s de <em>plugins</em>.</p>
<h3>Sobre o plugin WP-Syntax</h3>
<p>WP-Syntax &eacute; um &oacute;tima extens&atilde;o Wordpress para <strong>exibir c&oacute;digos com sintaxe de f&aacute;cil visualiza&ccedil;&atilde;o e de forma intelig&iacute;vel</strong>. Quando se usa o <em>plugin</em>, &eacute; poss&iacute;vel exibir c&oacute;digos-fonte coloridos (colora&ccedil;&atilde;o autom&aacute;tica) com ou sem numera&ccedil;&atilde;o das linhas. Para quem l&ecirc; o artigo &eacute; excelente, j&aacute; que ele prov&ecirc; uma sintaxe limpa e permite selecionar o c&oacute;digo atrav&eacute;s do pr&oacute;prio navegador.</p>
<p>O sistema de <em>highlighting</em> do WP-Syntax &eacute; feito usando o <a title="Visitar p&aacute;gina oficial do GeSHi." href="http://qbnz.com/highlighter/index.php">GeSHi (Generic Syntax Highlighter)</a>, que j&aacute; &eacute; conhecido entre alguns desenvolvedores <em>web</em> devido &agrave; sua facilidade de implementa&ccedil;&atilde;o e simplicidade de uso.</p>
<h3>Funcionando do WP-Syntax</h3>
<p>O uso do WP-Syntax &eacute; simples e seguro; ele evita conflitos com outros plugins de terceiros, executando &#8220;filtros&#8221; que garantem a compatibilidade geral com outras extens&otilde;es, conferindo um resultado &oacute;timo, que &eacute; a formata&ccedil;&atilde;o dos c&oacute;digos-fonte e exato destaque da forma como se quer e precisa.</p>
<h3>Instala&ccedil;&atilde;o e uso do WP-Syntax</h3>
<p>Este <em>plugin</em> &eacute; todo f&aacute;cil de usar, desde sua instala&ccedil;&atilde;o ao momento de exibir c&oacute;digos formatados nos posts.</p>
<h4>Instala&ccedil;&atilde;o</h4>
<p>A instala&ccedil;&atilde;o do WP-Syntax &eacute; feita da maneira &#8220;tradicional&#8221;:</p>
<ol>
<li><a title="Baixar o WP-Syntax." href="http://wordpress.org/extend/plugins/wp-syntax/">Baixar o plugin</a>;</li>
<li>Descompactar o conte&uacute;do do arquivo zipado dentro da pasta padr&atilde;o de <em>plugins</em> do Wordpress, o que ir&aacute; resultar na seguinte hierarquia de diret&oacute;rios: <strong>wp-content/plugins/wp-syntax/</strong>;</li>
<li>Ativar o <em>plugin</em> na &aacute;rea &#8220;Complementos&#8221; (Plugins) do painel de controle WP;</li>
<li>Come&ccedil;ar a usar o WP-Syntax.</li>
</ol>
<h4>Como usar o WP-Syntax</h4>
<p>Tirar proveito das funcionalidades do WP-Syntax &eacute; bastante simples. Enquanto escreve um artigo, v&aacute; at&eacute; o modo de edi&ccedil;&atilde;o de c&oacute;digo em seu tinyMCE &#8211; aba de nome &#8220;HTML&#8221; se voc&ecirc; usa o modo de edi&ccedil;&atilde;o gr&aacute;fica -  e englobe o c&oacute;digo que voc&ecirc; quer que fique estilizado entre <em>tags</em> <strong>pre</strong>. Para configurar o plugin in-line, &eacute; preciso informar:</p>
<ul>
<li>Qual linguagem ser&aacute; usada (necess&aacute;rio);</li>
<li>Se haver&aacute; numera&ccedil;&atilde;o de linhas (opcional).</li>
</ul>
<p>Ent&atilde;o, para colocar um trecho de c&oacute;digo PHP com numera&ccedil;&atilde;o de linhas, por exemplo, ficaria da seguinte maneira:</p>
<p>&lt;pre lang=&#8221;php&#8221; line=&#8221;1&#8243;&gt;</p>
<p>[...] c&oacute;digo [...]</p>
<p>&lt;/pre&gt;</p>
<p>Veja o plugin em funcionamento:</p>
<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #b1b100;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$i</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">;</span> <span style="color: #000088;">$i</span> <span style="color: #339933;">&lt;=</span> <span style="color: #cc66cc;">11</span><span style="color: #339933;">;</span> <span style="color: #000088;">$i</span><span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
    <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$i</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">', '</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>
<p>Basta retirar o atributo &#8220;line&#8221; para o c&oacute;digo iserido aparecer sem a numera&ccedil;&atilde;o de linhas; caso se queira iniciar a contagem em n&uacute;mero diferente, basta informar: <strong>line=&#8221;23&#8243;</strong>. Fa&ccedil;a o teste e selecione o trecho de c&oacute;digo acima; perceba que &eacute; poss&iacute;vel fazer a sele&ccedil;&atilde;o e colar onde se queira sem que a numera&ccedil;&atilde;o tamb&eacute;m v&aacute; para a &aacute;rea de transfer&ecirc;ncia.</p>
<p>Algumas das linguagens de programa&ccedil;&atilde;o e marca&ccedil;&atilde;o que o WP-Syntax suporta s&atilde;o:</p>
<ul>
<li><strong>ASP;</strong></li>
<li><strong>C;</strong></li>
<li><strong>D;</strong></li>
<li><strong>CFM;</strong></li>
<li><strong>CSS;</strong></li>
<li><strong>HTML;</strong></li>
<li><strong>Java;</strong></li>
<li><strong>Javascript;</strong></li>
<li><strong>mySQL;</strong></li>
<li><strong>Oracle 8;</strong></li>
<li><strong>Perl;</strong></li>
<li><strong>PHP;</strong></li>
<li><strong>Python;</strong></li>
<li><strong>Ruby;</strong></li>
<li><strong>E mais de 70 outras linguagens.</strong></li>
</ul>
<p>Um dos grandes benef&iacute;cio do WP-Syntax &eacute; que ele tem diversos &#8220;esquemas&#8221; de cores, um para cada linguagem de programa&ccedil;&atilde;o, estilo ou marca&ccedil;&atilde;o escolhida, o que facilita a inser&ccedil;&atilde;o de diversos trechos, de v&aacute;rias linguagens, em um s&oacute; artigo, de modo a evidenciar a diferen&ccedil;a entre todas, facilitando a leitura e entendimento do leitor.</p>
<h3>Algo importante sobre o uso do WP-Syntax</h3>
<p><del datetime="2009-08-01T19:11:08+00:00">Este aviso &eacute; somente para os que utilizam o editor gr&aacute;fico para escrever artigos; os que utilizam somente o modo c&oacute;digo, nem precisam ler este aviso.</p>
<p>Aconselho, ao usar o WP-Syntax para destacar c&oacute;digos-fonte em seu artigos, a primeiro escrever as partes do post que s&atilde;o &#8220;texto comum&#8221;, como explica&ccedil;&otilde;es, etc e, <strong>por &uacute;ltimo</strong>, passar ao modo HTML e inserir os c&oacute;digos necess&aacute;rios.</p>
<p>E mais: ao editar um artigo j&aacute; escrito com uso do WP-Syntax, v&aacute; at&eacute; outro artigo qualquer, passe para o modo de edi&ccedil;&atilde;o HTML e, somente depois disso, edite o arquivo que usou o plugin.</p>
<p>O motivo para ambos &eacute; que o editor gr&aacute;fico do Wordpress interpreta as tags existentes para as renderizar corretamente enquanto se escreve o post (negrito, it&aacute;lico, etc). Ent&atilde;o, como se est&aacute; inserindo c&oacute;digo &#8220;interpret&aacute;vel&#8221; por ele, &eacute; arriscado, dependendo da linguagem que se esteja usando no WP-Syntax, como HTML, por exemplo, de, no momento em que se passa para a edi&ccedil;&atilde;o em modo gr&aacute;fico, <strong>o editor do Wordpress apagar as <em>tags</em> que voc&ecirc; usou em seu artigo, com o WP-Syntax</strong>.</del></p>
<p>Nosso colega <strong>Rafael Biriba</strong> escreveu um excelente artigo sobre <a href="http://www.rafaelbiriba.com/2009/06/11/wordpress-271-com-syntax-highlight.html">como utilizar os modos Visual e HTML com WP-Syntax sem <em>strip tags</em></a>.</p>
<h3>Conclus&atilde;o</h3>
<p>Pessoalmente, quando ainda desconhecia a exist&ecirc;ncia de um <strong><em>plugin</em> que destaca c&oacute;digos-fonte em artigos</strong>, como este, utilizava a &#8220;t&eacute;cnica&#8221; de criar diversas classes CSS para estilizar c&oacute;digos que colocava nos <em>posts</em>. Posso garantir que n&atilde;o &eacute; a melhor das experi&ecirc;ncias, principalmente para o caso de ter que fazer manuten&ccedil;&atilde;o no c&oacute;digo&#8230;</p>
<p>O melhor, mesmo, para os casos de inser&ccedil;&atilde;o de c&oacute;digo diretamente em <em>posts</em>, para quem usa Wordpress, &eacute; utilizar o <em>plugin</em> WP-Syntax, que, primando pela simplicidade e facilidade de uso, al&eacute;m de possuir excelente suporte &agrave;s mais de 70 linguagens de programa&ccedil;&atilde;o, estilo e marca&ccedil;&atilde;o citadas, atende perfeitamente a finalidade para que foi criada, permitindo que o autor dos artigos mostre c&oacute;digos a seus visitantes com uma sintaxe colorida, focando na facilidade de compreens&atilde;o e entendimento dos c&oacute;digos.</p>
<div class="link"><a title="Visitar a p&aacute;gina oficial do plugin e baix&aacute;-lo." href="http://wordpress.org/extend/plugins/wp-syntax/"> Baixar o <em>plugin</em> para Wordpress WP-Syntax</a></div>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li><a href="http://desenvolvimentoparaweb.com/php/urls-amigaveis-slug-a-wordpress/" title="URLs amigáveis (slug) à WordPress">URLs amigáveis (slug) à WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/otimizacao-wordpress-performance-desempenho-blog-site/" title="Otimização WordPress: aumente a performance e desempenho de seu blog / site">Otimização WordPress: aumente a performance e desempenho de seu blog / site</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/truques-de-configuracao-do-wordpress/" title="Truques de configuração do WordPress">Truques de configuração do WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/wordpress-como-cms/" title="&#8220;WordPress como CMS&#8221;?">&#8220;WordPress como CMS&#8221;?</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/maneira-simples-de-saber-quem-faz-referencias-a-seu-blog-wordpress/" title="Maneira simples de saber quem faz referências a seu blog WordPress">Maneira simples de saber quem faz referências a seu blog WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/indicacoes/mais-de-450-extensoes-para-wordpress/" title="Mais de 450 extensões para WordPress">Mais de 450 extensões para WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/desenvolvimento-para-web-2/" title="Desenvolvimento para web 2.0">Desenvolvimento para web 2.0</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/wassup-plugin-wordpress-estatisticas-acesso-em-tempo-real/" title="WassUp: plugin WordPress para ver estatísticas de acesso (em tempo real)">WassUp: plugin WordPress para ver estatísticas de acesso (em tempo real)</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/wordpress/wp-syntax-destacar-codigos-fonte-em-artigos-de-blogs-wordpress/feed/</wfw:commentRss>
		<slash:comments>25</slash:comments>
		</item>
		<item>
		<title>Mais de 450 extens&#245;es para WordPress</title>
		<link>http://desenvolvimentoparaweb.com/indicacoes/mais-de-450-extensoes-para-wordpress/</link>
		<comments>http://desenvolvimentoparaweb.com/indicacoes/mais-de-450-extensoes-para-wordpress/#comments</comments>
		<pubDate>Wed, 25 Jun 2008 12:52:46 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[indicações]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[extensões]]></category>
		<category><![CDATA[funcionalidades]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[produtividade]]></category>
		<guid isPermaLink="false">http://www.desenvolvimentoparaweb.com/?p=165</guid>
		<description><![CDATA[Plugins s&atilde;o a melhor forma de aumentar as funcionalidades do WordPress, ent&atilde;o veja a indica&ccedil;&atilde;o de um excelente diret&oacute;rio de plugins]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="alignnone size-full wp-image-166" title="Plugins (extens&otilde;es) para Wordpress para aumentar suas funcionalidades." src="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2008/06/plugins-extensoes-wordpress-aumentar-funcionalidades.jpg" alt="Plugins (extens&otilde;es) para Wordpress para aumentar suas funcionalidades." width="287" height="270" /></p>
<p><a title="Visitar p&aacute;gina oficial do Wordpress." href="http://wordpress.org/">Wordpress</a> &eacute;, sem d&uacute;vida alguma, o melhor <a title="Mais sobre CMS, na Wikip&eacute;dia." href="http://pt.wikipedia.org/wiki/Cms">CMS</a> (&#8220;Content Management System&#8221; ou Sistema de Gerenciamento de Conte&uacute;do) focado em <em>blogs</em> que existe atualmente. Obviamente que &eacute; poss&iacute;vel, tamb&eacute;m, adaptar o Wordpress para montar <em>web sites</em> &#8220;tradicionais&#8221; mas, como disse, seu foco s&atilde;o os <em>blogs</em>.</p>
<p>Um dos motivos que tornam esta ferramenta t&atilde;o &uacute;til e procurada por desenvolvedores <em>web</em> e/ou pessoas querendo montar/melhorar um <em>blog</em> &eacute;, sem d&uacute;vidas, a possibilidade de aumentar/incrementar suas funcionalidades atrav&eacute;s da instala&ccedil;&atilde;o de extens&otilde;es; extens&otilde;es estas, ou <em>plugins</em>, desenvolvidas por terceiros, em sua quase totalidade gratuitas, com o objetivo principal de aumentar a capacidade e recursos que o CMS Wordpress oferece nativamente.</p>
<p>Existe uma se&ccedil;&atilde;o especial no <a title="Visitar o web site oficial do Wordpress." href="http://wordpress.org/"><em>web site</em> oficial do Wordpress</a>, o <a title="Visitar o Plugin Directory, o diret&oacute;rio oficial de plugins para Wordpress." href="http://wordpress.org/extend/plugins/">Pugin Directory</a>, que serve, na verdade, como uma <strong>base oficial de <em>plugins</em></strong> que terceiros desenvolvem/atualizam pelo mundo. Aquele que desenvolve sua extens&atilde;o a submete &agrave; base de dados ofical de <em>plugins</em> para Wordpress e, atrav&eacute;s de buscas por express&otilde;es e/ou acesso a categorias espec&iacute;ficas, &eacute; poss&iacute;vel encontrar os que foram cadastrados.</p>
<p>O fato de o Plugin Directory ser a base oficial de armazenamento de <em>plugins</em> para Wordpress n&atilde;o significa que seja o &uacute;nico. Procurando pela <em>web</em>, n&atilde;o &eacute; demorado encontrar compila&ccedil;&otilde;es de extens&otilde;es para a plataforma, diret&oacute;rios n&atilde;o-oficiais, indica&ccedil;&otilde;es de extens&otilde;es, e muito material relacionado &agrave; expans&atilde;o das funcionalidades e caracter&iacute;sticas do Wordpress.</p>
<p>Inclusive, j&aacute; citei algumas aqui no <strong>desenvolvimento para web</strong>, que foram:</p>
<ul>
<li><a title="Ler artigo sobre os melhores e mais usados plugins para Wordpress." href="http://www.desenvolvimentoparaweb.com/indicacoes/melhores-mais-usados-plugins-wordpress/">Os melhores e mais usados plugins para Wordpress</a>;</li>
<li><a title="Ler o artigo sobre os plugins para Wordpress de Cau Guanabara." href="http://www.desenvolvimentoparaweb.com/indicacoes/excelentes-plugins-para-wordpress-feitos-por-um-brazuca/">Excelentes plugins para Wordpress, feitos por um brasuca</a>.</li>
</ul>
<p>Navegando pela <em>web</em>, recentemente descobri um diret&oacute;rio n&atilde;o-oficial de extens&otilde;es muito interessante: &#8220;<strong>I want a WordPress Plugin to&#8230;</strong>&#8220;! Atrav&eacute;s de um sistema de <em>tags</em>, este diret&oacute;rio de <em>plugins</em> indica, de forma r&aacute;pida e f&aacute;cil, <strong>mais de 450 extens&otilde;es diferentes para WP</strong>! Dentre as muitas tags que classificam todo o conte&uacute;do do diret&oacute;rio, vejam o exemplo de algumas:</p>
<p><strong></strong></p>
<ul>
<li><strong>Painel administrativo;</strong></li>
<li><strong>Ajax;</strong></li>
<li><strong>Blogroll;</strong></li>
<li><strong>Downloads;</strong></li>
<li><strong>E-commerce e monetiza&ccedil;&atilde;o;</strong></li>
<li><strong>SEO.</strong></li>
</ul>
<p><strong></strong></p>
<p>Enfim, para quem mexe com a plataforma <strong>Wordpress</strong> e sabe que a instala&ccedil;&atilde;o e uso de extens&otilde;es &eacute; realmente um catalizador de suas potencialidades, que aumenta e expande aquilo que, nativamente, o sistema &eacute; capaz de realizar, confira esta excelente lista de <em>plugins</em> que, certamente, vai ajud&aacute;-lo em algum projeto; seja para tir&aacute;-lo de um sufoco, ajud&aacute;-lo na otimiza&ccedil;&atilde;o e performance ou, simplesmente, contribuir para que sua experi&ecirc;ncia como blogueiro (e, consequentemente, a dos visitantes de seu <em>blog</em> ou <em>site</em>) seja muito melhor!</p>
<div class="link"><a title="Visitar um excelente diret&oacute;rio n&atilde;o-oficial de plugins Wordpress!" href="http://www.econsultant.com/i-want-wordpress-plugins/index.html">I want a WordPress Plugin to&#8230;</a></div>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li><a href="http://desenvolvimentoparaweb.com/wordpress/wassup-plugin-wordpress-estatisticas-acesso-em-tempo-real/" title="WassUp: plugin WordPress para ver estatísticas de acesso (em tempo real)">WassUp: plugin WordPress para ver estatísticas de acesso (em tempo real)</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/desenvolvimento-para-web-2/" title="Desenvolvimento para web 2.0">Desenvolvimento para web 2.0</a></li><li><a href="http://desenvolvimentoparaweb.com/indicacoes/25-extensoes-para-o-firefox-para-aumentar-a-produtividade-no-dia-a-dia-na-web/" title="25 extensões para o Firefox para aumentar a produtividade no dia-a-dia na web">25 extensões para o Firefox para aumentar a produtividade no dia-a-dia na web</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/otimizacao-wordpress-performance-desempenho-blog-site/" title="Otimização WordPress: aumente a performance e desempenho de seu blog / site">Otimização WordPress: aumente a performance e desempenho de seu blog / site</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/30-extensoes-para-firefox-que-vao-mudar-sua-vida-na-web-para-melhor/" title="30 extensões para Firefox que vão mudar sua vida na web (para melhor)">30 extensões para Firefox que vão mudar sua vida na web (para melhor)</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/maneira-simples-de-saber-quem-faz-referencias-a-seu-blog-wordpress/" title="Maneira simples de saber quem faz referências a seu blog WordPress">Maneira simples de saber quem faz referências a seu blog WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/preciosas-dicas-de-seguranca-e-otimizacao-para-wordpress/" title="Preciosas dicas de segurança e otimização para WordPress">Preciosas dicas de segurança e otimização para WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/jquery-mais-50-dos-melhores-tutoriais-apostilas-e-exemplos/" title="jQuery: mais 50 dos melhores tutoriais, apostilas e exemplos">jQuery: mais 50 dos melhores tutoriais, apostilas e exemplos</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/como-tirar-screenshot-de-um-web-site-inteiro-e-obter-uma-imagem-completa/" title="Como tirar screenshot de um web site inteiro e obter uma imagem completa">Como tirar screenshot de um web site inteiro e obter uma imagem completa</a></li><li><a href="http://desenvolvimentoparaweb.com/xhtml/textarea-dicas-truques-textarea/" title="Textarea: dicas e truques que você sempre quis saber">Textarea: dicas e truques que você sempre quis saber</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/indicacoes/mais-de-450-extensoes-para-wordpress/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>WassUp: plugin WordPress para ver estat&#237;sticas de acesso (em tempo real)</title>
		<link>http://desenvolvimentoparaweb.com/wordpress/wassup-plugin-wordpress-estatisticas-acesso-em-tempo-real/</link>
		<comments>http://desenvolvimentoparaweb.com/wordpress/wassup-plugin-wordpress-estatisticas-acesso-em-tempo-real/#comments</comments>
		<pubDate>Thu, 08 May 2008 12:29:46 +0000</pubDate>
		<dc:creator>Tárcio Zemel</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[acessos]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[estatísticas]]></category>
		<category><![CDATA[extensões]]></category>
		<category><![CDATA[plugins]]></category>
		<guid isPermaLink="false">http://www.desenvolvimentoparaweb.com/?p=142</guid>
		<description><![CDATA[WassUp &eacute; um plugin WordPress que permite acompanhar estat&iacute;sticas de acesso ao site em tempo real!]]></description>
			<content:encoded><![CDATA[<h3><span lang="en">Plugins Wordpress</span> para mensurar estat&iacute;sticas de acesso existem v&aacute;rios. O diferencial do <span lang="en">WassUp</span> &eacute; registrar os acessos em tempo real (mesmo!). Saiba mais sobre o <span lang="en">WassUp</span>.</h3>
<p>&Eacute; de extrema import&acirc;ncia mensurar, analisar e acompanhar acessos a <em><span lang="en">web sites</span></em> e <em><span lang="en">blogs</span></em>, por motivos v&aacute;rios. S&oacute; sobre para citar alguns, poderia comentar:</p>
<ul>
<li>Definir os melhores hor&aacute;rios para publicar artigos;</li>
<li>Saber quais as melhores horas para uma &#8220;promo&ccedil;&atilde;o rel&acirc;mpago&#8221;;</li>
<li>Conhecer os h&aacute;bitos de acesso do p&uacute;blico-alvo (diurnos ou noturnos, por exemplo);</li>
<li>Obter informa&ccedil;&otilde;es de acesso para criar campanhas de <em><span lang="en">marketing</span></em> segmentado;</li>
<li>Definir estrat&eacute;gias de <a title="Excelente artigo sobre Search Engine Marketing." href="http://www.fique-rico.com/2008/05/07/compreender-a-importancia-do-search-engine-marketing-sem/">SEM</a>;</li>
<li>Dentre muitos outros.</li>
</ul>
<p>Para tal, existe um extenso leque de possibilidades, pronto a se abrir para aqueles que querem e/ou precisam saber sobre as estat&iacute;sticas de acesso em seu <em><span lang="en">site</span></em> ou <em><span lang="en">blog</span></em>. O mais comum para obter este tipo de informa&ccedil;&otilde;es sobre visitantes s&atilde;o sistemas espec&iacute;ficos para saber mais sobre a origem de acesso, perman&ecirc;ncia e motivos de sa&iacute;da (tais como <a title="Site oficial do Google Analytics." href="http://www.fique-rico.com/2008/05/07/compreender-a-importancia-do-search-engine-marketing-sem/"><span lang="en">Google Analytics</span></a>, <a title="Visitar o site oficial do Woopra." href="http://www.woopra.com/"><span lang="en">Woopra</span></a>, <a title="Mat&eacute;ria falando sobre o Yahoo Analytics." href="http://webinsider.uol.com.br/index.php/2008/05/06/yahoo-analytics-e-mais-do-que-um-web-analytics-gratuito/"><span lang="en">Yahoo Analytics</span></a> e <a title="Visitar web site oficial do Microsoft adCenter Analytics." href="http://advertising.microsoft.com/advertising/adcenter-analytics"><span lang="en">Microsoft adCenter Analytics</span></a>) daqueles que visitam o espa&ccedil;o virtual. Mas as possibilidades n&atilde;o se encerram por a&iacute;.</p>
<p>Para aqueles que utilizam a plataforma <span lang="en">Wordpress</span> para criar e manter <em><span lang="en">blogs</span></em> ou personalizar o CMS para que fique no &#8220;estilo&#8221; <em><span lang="en">web site</span></em>, <a title="Ver alguns plugins Wordpress de estat&iacute;sticas de acesso." href="http://wordpress.org/extend/plugins/search.php?q=analytics">existem <em><span lang="en">plugins</span></em> de estat&iacute;sticas</a> bastante eficientes! Depois de testar alguns,  optei por utilizar, &#8220;oficialmente&#8221;, o <strong><span lang="en">WassUp</span></strong>.</p>
<h3>Instalar o plugin WassUp</h3>
<p>Nenhum mist&eacute;rio para instalar a extens&atilde;o. Basta <a title="Baixar o plugin Wordpress Wassup." href="http://www.wpwp.org/download/">baixar a vers&atilde;o mais recente</a>, descompactar na pasta padr&atilde;o de <em><span lang="en">plugins</span></em> (wp-content/plugins/), acessar o painel administrativo do <span lang="en">Wordpress</span> (com privil&eacute;gios para acessar a aba &#8220;Plugins&#8221;) e ativar o <span lang="en">Wassup</span>, que j&aacute; deve aparecer na listagem das extens&otilde;es.</p>
<p>Diferentemente da maioria das extens&otilde;es para<span lang="en"> Wordpress</span>, as op&ccedil;&otilde;es do <span lang="en">Wassup</span> n&atilde;o aparecem como um submenu da aba &#8220;<span lang="en">Options</span>&#8220;; ao inv&eacute;s disso, um novo item no menu principal aparece (&#8220;<span lang="en">WassUp</span>&#8220;). Nela, existem 4 op&ccedil;&otilde;es: <span lang="en">&#8220;Visitors Details&#8221;, &#8220;SPY Visitors&#8221;, &#8220;Current Visitors Online&#8221;</span> e <span lang="en">&#8220;Options&#8221;</span>.</p>
<h3><span lang="en">Visitors Details</span></h3>
<p style="text-align: center;"><img class="alignnone size-full wp-image-143" title="Exemplo de tela de estat&iacute;sticas do plugin para Wordpress WassUp." src="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2008/05/exemplo-estatisticas-wassup-plugin-wordpress.gif" alt="Exemplo de tela de estat&iacute;sticas do plugin para Wordpress WassUp." width="490" height="381" /></p>
<p>Esta &eacute; a tela principal da extens&atilde;o. Nela, &eacute; poss&iacute;vel visualizar as estat&iacute;sticas de acesso e v&aacute;rias op&ccedil;&otilde;es de refinamento est&atilde;o dispon&iacute;veis.</p>
<p>As estat&iacute;sticas de acesso dos visitantes e <em><span lang="en">pageviews</span></em> s&atilde;o exibidas atrav&eacute;s de n&uacute;meros e graficamente (a linha cont&iacute;nua azul s&atilde;o visitas e a laranja pontilhada s&atilde;o <em><span lang="en">pageviews</span></em>). Al&eacute;m disso, numericamente &eacute; poss&iacute;vel obter acesso &agrave; m&eacute;dia de p&aacute;ginas acessadas por visita e porcentagem de visitas que, na verdade, eram <span lang="en">SPAMs</span> (esqueci de comentar que ele tem integra&ccedil;&atilde;o com o <a title="Visitar a p&aacute;gina oficial do Akismet." href="http://akismet.com/"><span lang="en">Akismet</span></a>?). &Eacute; poss&iacute;vel, tamb&eacute;m, ajustar a visualiza&ccedil;&atilde;o das estat&iacute;sticas em 4 per&iacute;odos diferentes: 24 horas, 7 dias, 1 m&ecirc;s e 1 ano.</p>
<p>Tamb&eacute;m existe a possibilidade de ajustar quantos detalhes de acesso ser&atilde;o exibidos por tela (10, 20, 50 ou 100) e orden&aacute;-los por uma s&eacute;rie de op&ccedil;&otilde;es (<span lang="en">Spams, Bots</span>, Usu&aacute;rios logados, membros, refer&ecirc;ncia de <em><span lang="en">links</span></em> externos e mais).</p>
<p>O detalhamento das informa&ccedil;&otilde;es sobre os visitantes &eacute; incr&iacute;vel: IP, data, hora de visita em cada p&aacute;gina, se veio por <em><span lang="en">link</span></em> de refer&ecirc;ncia, sistema de busca (nesse caso, informa as palavras chave usadas) ou visita direta, pa&iacute;s de origem (mostra bandeirinha), se &eacute; <em><span lang="en">bot</span></em> (identificando qual &eacute;), <em><span lang="en">spam</span></em> ou visitante humano (logado ou n&atilde;o). Ah, e se for preciso fazer uma busca nas estat&iacute;sticas, isso tamb&eacute;m &eacute; poss&iacute;vel!</p>
<h3>SPY Visitors</h3>
<p>Certamente, uma das <em><span lang="en">features</span></em> mais impressionantes do <span lang="en">WassUp</span>! &Eacute; poss&iacute;vel acompanhar <strong>em tempo real</strong> se h&aacute; alguma atividade no <em><span lang="en">blog</span></em>; se houver, em qual p&aacute;gina o(s) visitante(s) est&aacute;(&atilde;o), se veio atrav&eacute;s de <em><span lang="en">link</span></em> de refer&ecirc;ncia, sistema de busca ou se foi visita direta, e outras informa&ccedil;&otilde;es parecidas com as que s&atilde;o poss&iacute;veis ter acesso em <span lang="en">&#8220;Visitors Details&#8221;</span>.</p>
<p>E quando digo &#8220;tempo real&#8221;, refiro-me a atualizar de 10 em 10 segundos as informa&ccedil;&otilde;es sobre atividades (via AJAX) para um <strong>acompanhamento ultra refinado</strong> e <strong>espec&iacute;fico</strong>!</p>
<h3><span lang="en">Current Visitors Online</span></h3>
<p>Nesta tela &eacute; poss&iacute;vel saber quantos visitantes est&atilde;o no <em><span lang="en">blog</span></em> no momento (com detalhes das informa&ccedil;&otilde;es j&aacute; citadas acima).</p>
<p>A meu ver, isso poderia ficar em &#8220;<span lang="en">SPY Visitors</span>&#8220;, como um informa&ccedil;&atilde;o complementar, e n&atilde;o figurar em uma op&ccedil;&atilde;o independente do <span lang="en">WassUp</span>&#8230;</p>
<h3><span lang="en">Options</span></h3>
<p>Aqui ficam as op&ccedil;&otilde;es da extens&atilde;o. S&atilde;o tantas, que foi preciso divid&iacute;-las em &#8220;sub-abas&#8221;.</p>
<p>Primeiramente as Op&ccedil;&otilde;es Gerais (<span lang="en">&#8220;General Setup&#8221;</span>), onde &eacute; poss&iacute;vel configurar a largura (em <em>pixels</em>) do gr&aacute;fico de acessos, se este gr&aacute;fico vai aparecer na primeira p&aacute;gina do painel administrativo do <span lang="en">Wordpress</span>, de quantos em quantos minutos o gr&aacute;fico deve ser atualizado, quais informa&ccedil;&otilde;es dos visitantes ser&atilde;o mostradas, dentre muitas, muitas outras op&ccedil;&otilde;es.</p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-144" title="P&aacute;gina do menu administrativo Wordpress com plugin WassUp." src="http://www.desenvolvimentoparaweb.com/wp-content/uploads/2008/05/pagina-do-menu-administrativo-wordpress-com-plugin-wassup.gif" alt="P&aacute;gina do menu administrativo Wordpress com plugin WassUp." width="488" height="244" /></p>
<p>Na segunda sub-aba, <span lang="en">&#8220;Statistics Recording&#8221;</span>,  constam as op&ccedil;&otilde;es referentes &agrave; grava&ccedil;&atilde;o de estat&iacute;sticas. Dentre as muitas op&ccedil;&otilde;es poss&iacute;veis, &eacute; permitido vetar IPs e p&aacute;ginas do <span lang="en">site</span> de serem gravados.</p>
<p>Em <span lang="en">&#8220;Manage Files &amp; Database&#8221;</span> ficam as op&ccedil;&otilde;es que afetam o registro das estat&iacute;sticas no banco de dados que o <span lang="en">WassUp</span> cria no <span lang="en">Wordpress</span>. &Eacute; poss&iacute;vel especificar a pasta onde informa&ccedil;&otilde;es tempor&aacute;rias ser&atilde;o armazenadas, visualizar o tamanho atual da base de dados, especificar per&iacute;odos para que registros antigos sejam apagados automaticamente, e algumas outras coisas.</p>
<p>Por &uacute;ltimo, a sub-aba para desinstalar o <span lang="en"><em>plugin</em> WassUp</span> e remover tudo o que ele criou na instala&ccedil;&atilde;o do <span lang="en">Wordpress</span> no momento em que foi ativado.</p>
<h3>Conclus&otilde;es sobre a utiliza&ccedil;&atilde;o do <span lang="en">WassUp</span></h3>
<p>Dentre os n&atilde;o muitos <em>plugins</em> de estat&iacute;sticas de acesso para <span lang="en">Wordpress</span> que eu utilizei, o que mais me agradou e atendeu a minhas necessidades foi o <span lang="en">WassUp</span>. Pelo que escrevi acima, &eacute; poss&iacute;vel perceber que ele &eacute; bem completo, exibe bastantes informa&ccedil;&otilde;es e, digo por experi&ecirc;ncia pr&oacute;pria, <strong>&eacute; bem r&aacute;pido</strong> e n&atilde;o pesa em nada o carregamento do restante das op&ccedil;&otilde;es no painel de administra&ccedil;&atilde;o do <span lang="en">Wordpress</span>.</p>
<p>A grande vantagem, a meu ver, &eacute; a possibilidade de acompanhar, &#8220;ao vivo&#8221;, o que os visitantes fizeram e est&atilde;o fazendo no <em><span lang="en">blog</span></em>! &Eacute; tudo bastente r&aacute;pido e confi&aacute;vel (fiz testes de acesso com colegas meus), e possibilita a abertura de &#8220;novos horizontes&#8221; em se tratando de <strong>definir estrat&eacute;gias</strong> para o <em><span lang="en">blog</span></em>.</p>
<p>Como desvantagens, ou melhor, defasagens, cito que as estat&iacute;sticas principais do <span lang="en">WassUp</span> poderiam ser bem mais completas, com direito a informa&ccedil;&otilde;es ainda mais espec&iacute;ficas e afuniladas como o <span lang="en">Google Analytics</span>, por exemplo (que, inclusive, uso conjuntamente com o <span lang="en">WassUp</span> para registrar os acessos ).</p>
<p>N&atilde;o &eacute; poss&iacute;vel deixar de contar os pr&oacute;prios acessos ao <em><span lang="en">blog</span></em> <a title="Informa&ccedil;&otilde;es sobre o plugin NoScript, para Firefox." href="https://addons.mozilla.org/en-US/firefox/addon/722">bloqueando <em><span lang="en">scripts</span></em></a>, j&aacute; que seu funcionamento se d&aacute; no <em><span lang="en">server side</span></em>. Para alguns isso pode ser vantagem, para outros, n&atilde;o&#8230;</p>
<p>Enfim, reafirmo que o <span lang="en">WassUp</span> &eacute; um <em><span lang="en">plugin</span></em> muito &uacute;til de se ter instalado; <strong>realmente vale &agrave; pena</strong>! Entretanto, n&atilde;o vejo raz&otilde;es para n&atilde;o o usar conjuntamente com outros tipos de servi&ccedil;os que t&ecirc;m a capacidade de mostrar <strong>informa&ccedil;&otilde;es mais detalhadas sobre acessos</strong>.</p>
<p>Voc&ecirc;s conhecem alguma boa alternativa?</p>
<h3  class="related_post_title">Artigos Relacionados</h3><ul class="related_post"><li><a href="http://desenvolvimentoparaweb.com/indicacoes/mais-de-450-extensoes-para-wordpress/" title="Mais de 450 extensões para WordPress">Mais de 450 extensões para WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/otimizacao-wordpress-performance-desempenho-blog-site/" title="Otimização WordPress: aumente a performance e desempenho de seu blog / site">Otimização WordPress: aumente a performance e desempenho de seu blog / site</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/maneira-simples-de-saber-quem-faz-referencias-a-seu-blog-wordpress/" title="Maneira simples de saber quem faz referências a seu blog WordPress">Maneira simples de saber quem faz referências a seu blog WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/wordpress/preciosas-dicas-de-seguranca-e-otimizacao-para-wordpress/" title="Preciosas dicas de segurança e otimização para WordPress">Preciosas dicas de segurança e otimização para WordPress</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/desenvolvimento-para-web-2/" title="Desenvolvimento para web 2.0">Desenvolvimento para web 2.0</a></li><li><a href="http://desenvolvimentoparaweb.com/jquery/jquery-mais-50-dos-melhores-tutoriais-apostilas-e-exemplos/" title="jQuery: mais 50 dos melhores tutoriais, apostilas e exemplos">jQuery: mais 50 dos melhores tutoriais, apostilas e exemplos</a></li><li><a href="http://desenvolvimentoparaweb.com/miscelanea/como-tirar-screenshot-de-um-web-site-inteiro-e-obter-uma-imagem-completa/" title="Como tirar screenshot de um web site inteiro e obter uma imagem completa">Como tirar screenshot de um web site inteiro e obter uma imagem completa</a></li><li><a href="http://desenvolvimentoparaweb.com/indicacoes/25-extensoes-para-o-firefox-para-aumentar-a-produtividade-no-dia-a-dia-na-web/" title="25 extensões para o Firefox para aumentar a produtividade no dia-a-dia na web">25 extensões para o Firefox para aumentar a produtividade no dia-a-dia na web</a></li><li><a href="http://desenvolvimentoparaweb.com/xhtml/textarea-dicas-truques-textarea/" title="Textarea: dicas e truques que você sempre quis saber">Textarea: dicas e truques que você sempre quis saber</a></li><li><a href="http://desenvolvimentoparaweb.com/php/urls-amigaveis-slug-a-wordpress/" title="URLs amigáveis (slug) à WordPress">URLs amigáveis (slug) à WordPress</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://desenvolvimentoparaweb.com/wordpress/wassup-plugin-wordpress-estatisticas-acesso-em-tempo-real/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
	</channel>
</rss>
