<?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>Efrenzy Interactive Webdesign&#38;SEO Kraków &#187; Webdesign</title>
	<atom:link href="http://blog.efrenzy.pl/category/o-tworzeniu-stron-www/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.efrenzy.pl</link>
	<description>Blog by Michał Kowalski.</description>
	<lastBuildDate>Fri, 11 Jun 2010 20:28:04 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Aktualizacja Wordpress&#8217;a &#8211; dlaczego?! (znowu)</title>
		<link>http://blog.efrenzy.pl/2008/12/12/aktualizacja-wordpressa-dlaczego-znowu/</link>
		<comments>http://blog.efrenzy.pl/2008/12/12/aktualizacja-wordpressa-dlaczego-znowu/#comments</comments>
		<pubDate>Fri, 12 Dec 2008 02:44:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[aplikacje bazodanowe]]></category>
		<category><![CDATA[aktualizacja wordpress]]></category>

		<guid isPermaLink="false">http://blog.efrenzy.pl/?p=62</guid>
		<description><![CDATA[Nowa wersja Wordpress, tym razem  2.7 jest dostępna &#8211; takim oto tekstem powitał mnie panel administracyjny mojego ulubionego CMS, nie ma co się załamywać jednak niedawno skończyłem aktualizować do poprzedniej wersji. Wniosek &#8211; developer najpopularniejszej platformy blogowej nie marnował czasu, a ja znowu mam robotę   Znowu!
Aby nie być bezproduktywnym postanowiłem przy okazji [...]]]></description>
			<content:encoded><![CDATA[<p>Nowa wersja <strong>Wordpress</strong>, tym razem  2.7 jest dostępna &#8211; takim oto tekstem powitał mnie panel administracyjny mojego ulubionego <a title="Aplikacje bazodanowe, systemy zarządzania treścią CMS" href="http://www.afs-software.pl/aplikacje-bazodanowe/systemy-cms.html"><strong>CMS</strong></a>, nie ma co się załamywać jednak niedawno skończyłem aktualizować do poprzedniej wersji. Wniosek &#8211; developer najpopularniejszej platformy blogowej nie marnował czasu, a ja znowu mam robotę <img src='http://blog.efrenzy.pl/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Znowu!</p>
<p>Aby nie być bezproduktywnym postanowiłem przy okazji podzielić się z wami sposobem jak najszybciej poradzić sobie z aktualizacją Wordpress&#8217;a, przy czym istotna uwaga: Zrób wcześniej backup!!! <img src='http://blog.efrenzy.pl/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><strong>Aktualizacja Wordpress do nowej wersji</strong>.<span id="more-62"></span></p>
<p>Jako doświadczony użyszkodnik posiadam dostęp do narzędzia, ktore nazywa się w skrócie MC, jest to linuksowy file manager działający pod konsolą (w trybie tekstowym). Odpowiednikiem, ktory może (powinien) posiadać przeciętny użytkownik systemu Windows to Total Commander, w pierwotnej wersji sygnowany nazwą Midnight Commander.</p>
<p>Aby zawrzeć sie w kilku krokach poniżej listning czynności:</p>
<p>1. Udajemy się na stronę platformy Wordpress a konkrednie do działu download (http://wordpress.org/download/), tam możemy ściągnąć paczkę z najnowszą wersją CMS, w dwóch wersjach &#8211; zip (dla Windows) oraz tar.gz dla wielbicieli pingwinów.</p>
<p>2. Po ściągnieciu paczki na dysk twardy komputera rozpakowujemy jej zawartość przy użyciu jednego ze wspomanianych File Manager&#8217;ów.</p>
<p>3. Po zaznaczeniu zawartości katalogu &#8216;wordpress&#8217; używając klawisza insert, oraz po zalogowaniu się na zdalnej maszynie gdzie hostujemy naszego bloga (w sąsiednim okienku), przy użyciu klawisza F5 sprawiamy, że pliki zostają (zaktualizowane &#8211; mc pod linuksem) lub nadpisane (pod win).</p>
<p>4. Modlimy się aby wszystko wstało <img src='http://blog.efrenzy.pl/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Dobrym pomysłem przed przeprowadzeniem tak poważnej operacji jaka niewątpliwie jest <strong>aktualizacja wordpress&#8217;a</strong> jest sporządzenie z poziomu panelu admina kopii zapasowej bazy danych trzymających całą zawartość serwisu.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.efrenzy.pl/2008/12/12/aktualizacja-wordpressa-dlaczego-znowu/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Aplikacje bazodanowe &#8211; podstawowe rodzaje.</title>
		<link>http://blog.efrenzy.pl/2008/10/09/aplikacje-bazodanowe-podstawowe-rodzaje/</link>
		<comments>http://blog.efrenzy.pl/2008/10/09/aplikacje-bazodanowe-podstawowe-rodzaje/#comments</comments>
		<pubDate>Thu, 09 Oct 2008 20:11:47 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[e-biznes]]></category>
		<category><![CDATA[aplikacje bazodanowe]]></category>

		<guid isPermaLink="false">http://blog.efrenzy.pl/?p=39</guid>
		<description><![CDATA[Aplikacje oparte na zastosowaniu baz danych (aplikacje bazodanowe), stosują jako podstawowy model organizacji struktury metodę separacji danych od całej reszty (prezentacyjnej) funkcjonalności. Daje to niesamowite korzyści w postaci możliwości dostosowania części funkcjonalnej i prezentacyjnej niezależnie od danych, mamy również spore możliwości przenoszenia i archiwizacji (backupowania) danych zgromadzonych w bazie. A co najważniejsze &#8211; w razie [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Aplikacje </strong>oparte na zastosowaniu <strong>baz danych</strong> (<a title="Aplikacje bazodanowe, systemy bazodanowe AFS." href="http://www.afs-software.pl/aplikacje-bazodanowe/">aplikacje bazodanowe</a>), stosują jako podstawowy model organizacji struktury metodę separacji danych od całej reszty (prezentacyjnej) funkcjonalności. Daje to niesamowite korzyści w postaci możliwości dostosowania części funkcjonalnej i prezentacyjnej niezależnie od danych, mamy również spore możliwości przenoszenia i archiwizacji (backupowania) danych zgromadzonych w bazie. A co najważniejsze &#8211; w razie awarii aplikacji, dane są bezpieczne.</p>
<p><strong>Systemy zarządzania treścią CMS</strong><span id="more-39"></span></p>
<p>Systemy zarządzania treścią jak sama nazwa wskazuje pozwalają na dostosowanie treści (tekstu, obrazów, multimediów, etc..) w ramach danego serwisu internetowego. Są to aplikacje, które udostępniają panel administratorski, za pomocą którego możemy wprowadzać nasze treści. Te najbardziej zaawansowane, wyposażone są w miniedytory wyswig pozwalające dokonywać edycji tekstu jak w klasycznych edytorach (word). Najpopularniejsze z ogólno dostępnych  to Joomla, Wordpress czy np. Mambo.</p>
<p><strong>Systemy zarządzania klientami CRM</strong></p>
<p>Systemy bazodanowe CRM to <strong>zaawansowane aplikacje </strong>służące składowaniu oraz zarządzaniu danymi oraz relacjami z klientami. Systemy CRM mogą być wyspecjalizowane dla danej działalności i tak np. system CRM firmy hostingowej może posiadać obsługę zapytań wsparcia klienta a system dla magazynu może wspierać zarządzaniu stanów magazynowych. Wielkie możliwości jakie daje nam tu dostępna technologia, mogą być wykorzystywane i dostosywane do wszelkich zastosowań.</p>
<p><strong>Systemy wyspecializowane</strong></p>
<p>Systemy wyspecjalizowane to wszelkie systemy dedykowane, jakie tworzy się pod konkretne zapotrzebowanie na zarządzanie danymi. <a title="Internet przyszłości, innowacyjne systemy i aplikacje bazodanowe." href="http://www.afs-software.pl/aplikacje-bazodanowe/"><strong>Innowacyjne aplikacje bazodanowe</strong></a> dają nam wielkie możliwości zastosowań, stąd w zależności od tego jaka jest specyfika firmy, jej działalność można usprawniać jej działanie za pomocą wdrożeń narzędzi bazodanowych.</p>
<p>Ponad opisane wyżej rodzaje systemów bazodanowych, można wyróżnić wiele innych tworząc nowe kategoryzacje w zależności od zasad budowy aplikacji bazodanowej do jej działania.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.efrenzy.pl/2008/10/09/aplikacje-bazodanowe-podstawowe-rodzaje/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tworzenie stron internetowych a strona kodowa dokumentów, jakie kodowanie wybrać?</title>
		<link>http://blog.efrenzy.pl/2008/02/01/tworzenie-stron-internetowych-a-strona-kodowa-dokumentow-jakie-kodowanie-wybrac/</link>
		<comments>http://blog.efrenzy.pl/2008/02/01/tworzenie-stron-internetowych-a-strona-kodowa-dokumentow-jakie-kodowanie-wybrac/#comments</comments>
		<pubDate>Fri, 01 Feb 2008 22:02:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Peryskop]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[xHTML/css]]></category>
		<category><![CDATA[charset]]></category>
		<category><![CDATA[codepage]]></category>
		<category><![CDATA[iso-8859-2]]></category>
		<category><![CDATA[kodowanie]]></category>
		<category><![CDATA[strona kodowa]]></category>
		<category><![CDATA[utf-8]]></category>

		<guid isPermaLink="false">http://blog.efrenzy.pl/2008/02/01/tworzenie-stron-internetowych-a-strona-kodowa-dokumentow-jakie-kodowanie-wybrac/</guid>
		<description><![CDATA[Co to jest kodowanie? Jakie typy kodowania możesz wybrać?
Komputery nie zapisują liter wklepywanych z klawiatury wprost, stosują do tego nieco bardziej wyrafinowanego sposobu liczbowego. Każdej literze (znakowi) jest przypisana jakaś cyfra i w zależności od typu kodowania może ona przyjmowac różne wartości, zawarte w różnym typie oraz zakresie. Brzmi poważnie;) Czytaj dalej!
Pierwsze kodowania zawierały znaki [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Co to jest kodowanie? Jakie typy kodowania możesz wybrać?</strong></p>
<p>Komputery nie zapisują liter wklepywanych z klawiatury wprost, stosują do tego nieco bardziej wyrafinowanego sposobu liczbowego. Każdej literze (znakowi) jest przypisana jakaś cyfra i w zależności od typu kodowania może ona przyjmowac różne wartości, zawarte w różnym typie oraz zakresie. Brzmi poważnie;) Czytaj dalej!<span id="more-30"></span></p>
<p>Pierwsze kodowania zawierały znaki wyłącznie z alfabetu angielskiego oraz kilkudziesięciu znaków specjalnych typu &#8216;/?&gt;&lt;&#8217;, najbardziej rozpowszechniony standard to ASCII (American Standard Code for Information Interchange &#8211; Amerykański Standardowy Kod dla Wymiany Informacji). Ponieważ w tym pierwotnym kodowaniu nie były uwzględnione znaki diakrytyczne dla innych języków świata, powstały strony kodowe, które pozwalały na zapisanie w języku komputerów wszystkich ogonków, umlautów, etc &#8212; ISO 8859. I tutaj zamieszanie, gdyż jak wiele jest odmian alfabetycznych przypisanych językom tak wiele powstało stron kodowych, dla polskich znaków było ich conajmniej kilka. Najpopularniejsze i obecnie uznane jako standard jest iso-8859-2 oraz standard &#8220;windowsowy&#8221; win-1250. Z mnogości odmian językowych wynika niemałe zamieszanie, które ma rozwiązać najnowszy standard kodowania znaków UTF. Powstał on z myślą zawarcia wszelkich regionalizmów, i tak z technicznego punktu widzenia, ponieważ unikod jest 4 bitowym kodowaniem (stosuje do zapisu liter 4 bity znaków cyfrowych) zawiera on w sobie pierwotny standard ASCII (w pierwszym bajcie można zapisać wszystkie znaki ASCII -co daje im  pełną zgodność). Pozostała nadmiarowość pozwala na zawarcie diakrytyzmów. Jest tu pewnien kompromis w stosowaniu UTF&#8217;u, gdyż ze wspomnianej nadmiarowości powstaje problem ekonomii zapisu znaków &#8211; jednak są równiez zalety, które moim zdaniem w pełni rekompensują tą niedogodność.</p>
<p>Dla zapisu polskich znaków, możemy stosować poniżej wymienione kodowania:</p>
<ul>
<li><span style="color: #ff0000;">win-1250</span> &#8212; mocno niezalecane, rozumiane i stosowane przez niektóre windowsy</li>
</ul>
<ul>
<li><span style="color: #333399;">iso-8859-2</span> &#8212; jest przyjętym standardem dla kodowania polskich ogonków, jednak przez jego niszowość nie pozwala na swobodne stosowanie w obrębie wielojęzycznego internetu</li>
</ul>
<ul>
<li><span style="color: #333399;">utf-8</span> &#8212; zalecany dla stron wielojęzycznych, potrafi poprawnie obsłużyć polskie znaki, jest elastyczny oraz ściśle zalecany przez agencje ustalające standardy.</li>
</ul>
<p><strong>Który typ kodowania znaków jest najlepszy?</strong></p>
<p>Dla tworzenia polskich stron internetowych zalecanym kodowaniem jest utf-8 (utf-8 to trochę bardziej oszczędna wersja unikodu, jego nadmiarowość w przypadku zapisu polskiej treści wynosi ok. 5%). Drugą poprawna stroną kodową jest iso-8859-2. Został on uznany przez ustawę Polskiej Normy, jako standard zapisu polskich znaków w internecie. Natomiast, wspomniany wcześniej win-1250 nie jest w pełni zgodny ze światowym standardem ASCII i przez to nie jest porpawnie rozumiany przez część aplikacji, szczególnie odradzam jego stosowanie.</p>
<p>Na bazie powyższych rozważań zwycięzcą ogłaszam uniwersalny UTF-8. Jest niewątpliwie przyszłością wielojęzycznego internetu, daje nam wiele możliwości stosowania różnych jezyków na stronach oraz, wyklucza ryzyko niezgodności z przeglądarkami internetowymi za kilka lat <img src='http://blog.efrenzy.pl/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><strong>Praktyczne uwagi do wybranego charset.</strong></p>
<p>Od strony praktycznej, sprawa kodowania przedstawia się następująco: najpierw musimy zapisać znaki w określonym kodowaniu, czyli albo używamy edytora, który ma opcję zmiany użytego kodowania, albo mamy świadomość, że windowsowy notatnik pisze w win-1250 ;S</p>
<p>Następnie w odpowiednim tagu meta musimy zawrzeć deklarację użytego kodowania, tak aby przeglądarki internetowe interpretujące nasz (x)html wiedziały jak go rozkodować, może to wyglądać tak:</p>
<p><span style="color: #333399;">&lt;meta http-equiv=&#8221;Content-Type&#8221; content=&#8221;text/html; charset=ISO-8859-2*&#8221;&gt;</span>.</p>
<p>Jeśli stosujemy xhtml, który jest strikte XML&#8217;em musimy również do naszego dokumentu dołączyć deklaracje w jego &#8220;dialekcie&#8221;, co wygląda następująco:</p>
<p><span style="color: #333399;">&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;iso-8859-2*&#8221;?&gt;</span>,</p>
<p>umieszczamy go na samym początku dokumentu. Niestety w przypadku stron wysyłanych jako text/html deklaracja xml znajdująca się przed doctype rodzi pewne problemy w rozumieniu stron przez przeglądarke IE w wersji 6.x . Ale to już problem do dyskusji na osobny wpis.</p>
<p><strong>Zakończenie.</strong></p>
<p>Boje z kodowaniem nie dotyczą wyłącznie dokumentów hipertekstowych, również inne dokumenty, dane w zbiorach bazodanowych opierają się na zapisie kodowym. Stąd świadomość omawianych zagadnień jest niezbędna aby opóźnić objawy starzenia i utrzymać zdrowie psychiczne w dobrej kondycji ;p Szczególnie jeśli interesuje Cię <a title="Wedesign, tworzenie stron internetowych Kraków." href="http://blog.efrenzy.pl/strony-internetowe-krakow/">profesjonalne tworzenie stron internetowych</a>.</p>
<p><em>~Michał Kowalski 2008</em></p>
<pre>(*)Zakładam, że stosujemy kodowanie iso-8859-2, jednak przypominam, że lepiej jest stosować UTF-8.</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.efrenzy.pl/2008/02/01/tworzenie-stron-internetowych-a-strona-kodowa-dokumentow-jakie-kodowanie-wybrac/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Kodowanie css &#8211; pseudoklasy.</title>
		<link>http://blog.efrenzy.pl/2008/01/16/kodowanie-css-pseudoklasy/</link>
		<comments>http://blog.efrenzy.pl/2008/01/16/kodowanie-css-pseudoklasy/#comments</comments>
		<pubDate>Wed, 16 Jan 2008 20:07:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[xHTML/css]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[webdesign]]></category>
		<category><![CDATA[xhtml]]></category>

		<guid isPermaLink="false">http://blog.efrenzy.pl/2008/01/16/kodowanie-css-pseudoklasy/</guid>
		<description><![CDATA[O pseudoklasach w css &#8211; na szybko.
Jeśli zajmujesz się kodowaniem wyglądu stron www lub dopiero zaczynasz się tego uczyć to zapewne spotkałeś się z metodą wprowadzenia interakcji do elementów nawigacji, tak aby reagowały w odpowiedni sposób np. na najechanie kursora myszy.
Jeśli chcesz wiedzieć więcej to zapraszam do czytania&#8230;.
Specyfikacja css&#8217;a daje nam możliwość korzystania z zawartych [...]]]></description>
			<content:encoded><![CDATA[<p><strong>O pseudoklasach w css &#8211; na szybko.</strong></p>
<p>Jeśli zajmujesz się kodowaniem wyglądu stron www lub dopiero zaczynasz się tego uczyć to zapewne spotkałeś się z metodą wprowadzenia interakcji do elementów nawigacji, tak aby reagowały w odpowiedni sposób np. na najechanie kursora myszy.<br />
Jeśli chcesz wiedzieć więcej to zapraszam do czytania&#8230;.<span id="more-27"></span></p>
<p>Specyfikacja css&#8217;a daje nam możliwość korzystania z zawartych w jego strukturze pseudoklas, które nie wymagaja wcześniejszej deklaracji, one poprostu istieją i są dostępne dla każdego dokumentu (x)html jaki tworzysz. Przedstawia je poniższy listing.</p>
<ul>
<li>:first-child</li>
<li> :link</li>
<li> :visited</li>
<li> :hover</li>
<li> :active</li>
<li> :focus</li>
<li> :lang(n)</li>
</ul>
<p>&#8211;<br />
<strong>Czary z linkami &#8211; ożywianie nawigacji.</strong></p>
<p>Korzystając z kilku z wymienionych selektorów możemy dostosować wygląd oraz zachowanie naszych linków na stronie, oto one:</p>
<ul>
<li><font COLOR="#333399">a:link</font> &#8211; określa elementy, które są zwykłymi linkami</li>
<li><font COLOR="#333399">a:visited</font> &#8211; selektor dla linków odwiedzonych</li>
<li><font COLOR="#333399">a:hover</font> &#8211; ta dyrektywa mówi jak zachowa się najechany link (kursor nad polem tekstowym)</li>
<li><font COLOR="#333399">a:active</font> &#8211; linki aktywne.</li>
</ul>
<p>I teraz czas na sekret stosowania powyższych selektorów, aby poprawnie działały i były interpretowane zgodnie z naszym zamysłem należy deklarować je w odpowiedniej kolejności. Najpierw ustalamy właściwość dla elementu a: a {}, następnie a:link, a:visited, a:hover, a:active. W innym razie może wystąpić konfikt deklaracji i nasz kod nie będzie funkcjonował jak należy.</p>
<p>Jednak to nie koniec css&#8217;owych czarów, wymienione znczniki można stosować w kombinacjach, ale pod jednym warunkiem, że zostanie zachowania kolejność jaką podałem akapit wyżej. Dla przykładu napiszmy jak to może wyglądać:</p>
<ul>
<li><font COLOR="#333399">a:link, a:visited { text-decoration: underlined; }</font><font COLOR="#333399"><br />
</font></li>
<li><font COLOR="#333399"> a:hover, a:active { background-color: #000; }</font></li>
</ul>
<p>Każdy element , który jest odwiedzonym (klikniętym wcześniej) linkiem zostanie podkreślony, a linki najechane i będące aktualnie wyświeltane otrzymają czarne tło (#000 == black).Z wymienionych na samym początku selektorów pozostałe oznaczają:</p>
<ul>
<li><font COLOR="#333399">:focus</font> &#8211; tyczy się elementów np. pól formularza, które są aktywne</li>
<li><font COLOR="#333399">:first-child</font> &#8211; pierwsze dziecko, w kaskadzie określonej kolejnośćią DOM&#8217;u</li>
<li><font COLOR="#333399">:lang(pl)</font> &#8211; nada wygląd elementom dla których została zadeklarowany atrybut lang jako pl.</li>
</ul>
<p>To wszystko, na ten temat, do usłyszenia.</p>
<p><em>~Michał Kowalski 2008</em></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.efrenzy.pl/2008/01/16/kodowanie-css-pseudoklasy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Status gadu-gadu na stronie www.</title>
		<link>http://blog.efrenzy.pl/2008/01/09/status-gadu-gadu-na-stronie-www/</link>
		<comments>http://blog.efrenzy.pl/2008/01/09/status-gadu-gadu-na-stronie-www/#comments</comments>
		<pubDate>Wed, 09 Jan 2008 14:56:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[gg]]></category>
		<category><![CDATA[status]]></category>
		<category><![CDATA[webdesign]]></category>
		<category><![CDATA[xhtml]]></category>

		<guid isPermaLink="false">http://blog.efrenzy.pl/2008/01/09/status-gadu-gadu-na-stronie-www/</guid>
		<description><![CDATA[Być może zastanawiasz się właśnie, w jaki sposób można uzyskać wyświetlanie statusu gg na własnej stronie, być może zastanawiasz się jak stworzyć własny (zpersonalizowany) system prezentacji aktualnego stanu Twojego numeru gadu-gadu, czytając dalej dowiesz się jak łatwo wdrożyć tego typu pomysł.
Metoda podstawowa.
Wyświetlanie aktualnego statusu jest udostępnione w postaci skryptu CGI pod adresem URL : http://www.gadu-gadu.pl/users/status.asp [...]]]></description>
			<content:encoded><![CDATA[<p>Być może zastanawiasz się właśnie, w jaki sposób można uzyskać wyświetlanie statusu gg na własnej stronie, być może zastanawiasz się jak stworzyć własny (zpersonalizowany) system prezentacji aktualnego stanu Twojego numeru gadu-gadu, czytając dalej dowiesz się jak łatwo wdrożyć tego typu pomysł.<span id="more-24"></span></p>
<p><strong>Metoda podstawowa.</strong></p>
<p>Wyświetlanie aktualnego statusu jest udostępnione w postaci skryptu CGI pod adresem URL : http://www.gadu-gadu.pl/users/status.asp wprost z serwisu GG. Aby uzyskać efekt należy przekazać do skryptu status.asp dwa parametry, jako pierwszy &#8216;<font COLOR="#ff6600">id</font>&#8216;, który zawiera nasz numer w sieci gadu gadu, oraz drugi &#8216;<font COLOR="#ff6600">styl</font>&#8216; oznaczający sposób wyświetlania zwracanego stanu. Po przekazaniu do zmiennej &#8216;<font COLOR="#ff6600">styl</font>&#8216; wartości 1 nasz status będzie wyświetlał się w postaci słoneczka, natiomiast 2 da efekt opisowy.</p>
<p>Przechodząc do praktyki jaka płynie z powyższej teorii możemy wyświetlić status dla numeru 000000, za pomocą słoneczka (styl=1), wystarczy wstawić w odpowiednie miejsce na stronie poniższy kod (x)html:</p>
<p><font COLOR="#333399">&lt;img src=&#8221;http://www.gadu-gadu.pl/users/status.asp?id=000000&amp;styl=1&#8243;     /&gt;</font></p>
<p>i &#8212; gotowe <img src='http://blog.efrenzy.pl/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Dla mocno zamyślonych lub równie mocno co beznadziejnie zakochanych dodam, że zamiast 000000 wstawiamy własny numer gadu- gadu.</p>
<p><strong>Wersja podrasowana &#8211; korzystamy z własnych miniaturek statusu za pośrednictwem php.</strong></p>
<p>Jeśliuważasz, że domyśne obrazki jakie oferuje gg nie pasują do layout&#8217;u Twojej strony, możesz w łatwy sposób podmienić je wykorzystując do tego prosty kod php:</p>
<pre><font COLOR="#333399">&lt;?php
$plik=fopen ("http://www.gadu-gadu.pl/users/status.asp?id=00000&amp;styl=2", "r"); $status=fgets($plik, 2);
switch ($status) {
   case 1: echo '&lt;img src="niedostepny.jpg" mce_src="niedostepny.jpg" /&gt;'; break;
   case 2: echo '&lt;img src="dostepny.jpg" mce_src="dostepny.jpg" /&gt;'; break;
   case 3: echo '&lt;img src="wracam.jpg" mce_src="wracam.jpg" /&gt;'; break;
   default: //opcja domyślna: echo '&lt;img src="error.jpg" mce_src="error.jpg" /&gt;'; break;
}
fclose($plik);
?&gt;</font></pre>
<p>&#8211;</p>
<p>To co robią powyższe instrukcje:</p>
<ol>
<li>fopen &#8212; pobieramy status w postaci strony www</li>
<li>petla swich &#8211; sprawdza co zwróciło zapytanie i przypisuje odpowiedni obrazek</li>
<li>fclose &#8212; zamyka nasz plik operacyjny zawierający wartość statusu</li>
</ol>
<p>Oczywiście należy utworzyć odpowiednie pliki miniaturek w formacie jpg i umieścić w miejscu dostępnym dla podanego kodu.</p>
<p><strong>Zakończenie.</strong></p>
<p>Kolejny prosty, aczkolwiek mocno praktyczny sposób na wzmocnienie dostępności Twoich usług oferowanych na stronie. Mam nadzieję, że komuś to ułatwi życie.</p>
<p><em>~Michał Kowalski 2008 </em></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.efrenzy.pl/2008/01/09/status-gadu-gadu-na-stronie-www/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flash, seo i pozycjonowanie? Metody.</title>
		<link>http://blog.efrenzy.pl/2008/01/07/flash-seo-i-pozycjonowanie-metody/</link>
		<comments>http://blog.efrenzy.pl/2008/01/07/flash-seo-i-pozycjonowanie-metody/#comments</comments>
		<pubDate>Mon, 07 Jan 2008 16:02:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[SEO & Pozycjonowanie]]></category>
		<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[dostępność]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[optymalizacja]]></category>
		<category><![CDATA[pozycjonowanie]]></category>
		<category><![CDATA[seo]]></category>

		<guid isPermaLink="false">http://blog.efrenzy.pl/2008/01/07/flash-seo-i-pozycjonowanie-metody/</guid>
		<description><![CDATA[Zastosowałeś do budowy własnej strony technologię flash, być może użyłeś jej tylko w tworzeniu nawigacji, jednak zapewniam, że jeśli chciałbyś powalczyć z takim projektem o pozycję w google to zafundowałeś sobie niezłą przeprawę   W tym tekście postaram się przeprowadzić rozważania na temat możliwych technik ratowania niedostępności technologii flash dla robotów wyszukiwarek. Zapraszam do [...]]]></description>
			<content:encoded><![CDATA[<p>Zastosowałeś do budowy własnej strony technologię flash, być może użyłeś jej tylko w tworzeniu nawigacji, jednak zapewniam, że jeśli chciałbyś powalczyć z takim projektem o pozycję w google to zafundowałeś sobie niezłą przeprawę <img src='http://blog.efrenzy.pl/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  W tym tekście postaram się przeprowadzić rozważania na temat możliwych technik ratowania niedostępności technologii flash dla robotów wyszukiwarek. Zapraszam do czytania&#8230;<span id="more-25"></span></p>
<p><strong>Twórcy flash&#8217;a o czymś nie pomyśleli.</strong></p>
<p>Niestety tak się stało, że twórcy z Macromedii nie zadbali o kompatybilność i dostępność swojej technologii dla crawlerów, trudność wynika z tego iż dynamiczna i mocno interaktywna strona jest dużo trudniejsza w interpretacji od statycznego html&#8217;a (bądź nawet semi statycznego, generowanego dynamicznie). Sprawa od samego początku nie została rozwiązana i jak widać jeszcze przez spory okres czasu nie będzie flasza przyjaznego dla google. I jak sądze z tego powodu Flash dostaje karniaki na każdym kroku, dalej zobaczmy co możemy z tym fantem zrobić.</p>
<p><strong>Za co jesteśmy (nie)wdzięczni deweloperowi przeglądarki IE?</strong></p>
<p>W roku 2006 wyszła nowa wersja przeglądarki Microsoft&#8217;u (IE) zawierająca aktualizację zwaną &#8220;Eolas&#8221;, która zapobiegała uruchamianiu aplikacji Flash na bazie Active-x podczas ładowania strony i wymagała aktywacji poprzez kliknięcie na obiekt interaktywny. Eolas był znienawidzony przez twórców stron wykorzystujących omawianą technologię, gdyż ich strony były martwe w przeglądarkach IE, a do tego wyświetlały okropne komentarze &#8220;Kliknij, aby aktywować kontrolkę&#8221;.</p>
<p><strong>Wymagania jakie musimy spełnić aby bezpiecznie korzystać z Flash.</strong></p>
<p>Aktualnie można nasze wymagania uznać za marzenia ściętej głowy, ale skoro jesteśmy profesjonalistami i nasze wizje chcemy realizować z zachowaniem standardów to wymieńmy jakie punkty chcemy spełnić:</p>
<ul>
<li>czysty kod</li>
<li> przyjazność wyszukiwarkom</li>
<li> dostępność (usability), różne przeglądarki, urządzenia przenośne</li>
<li> semantyka, zachowanie standardów</li>
<li> poprawne wyświetlanie pod przeglądarkami IE</li>
</ul>
<p><strong>Programowanie Flash przyjazne wyszukiwarkom (SEO friendly).</strong></p>
<p>Dobrym pomysłem na obejście problematyki niedostępności flash&#8217;a na naszej stronie jest użycie funkcji JavaScript&#8217;u zwanej SWFObject();, która to sprawdza czy przeglądarka wyświetlająca jest w stanie obsłużyć treść interaktywną. Jeśli napotykamy na problemy to stosujemy div z alternatywną treścią o tej samej (lub możliwie zbliżonej) funkcjonalności zakodowanej za pomocą statycznego kodu (x)html. W obszarze wspomnianego alternatywnego div&#8217;a możemy swobodnie zawrzeć linki, tekst oraz obrazy jakie pierwotnie miały być udostępnione z użyciem animacji. Jeśli natomiast obsługa flash jest dostępna nasza funkcja modyfikuje strukturę dokumentu (DOM) tak aby wyświetlała zawartość prezentacji i wydaje się, że wybrneliśmy z opresji.</p>
<p>Mogło by się wydawać, że ta technika nie jest do końca właściwa, jednak stworzony przez W3C (World Wide Web Consortuim) WAI (Web Accessibility Initiative) dopuszcza a nawet wskazuje słuszność takiego rozwiązania. Wdrażając treść alternatywną dla objektów flash pozwalamy crawler&#8217;om oraz użytkownikom, dla których treść interaktywna jest niedostępna korzystać z całej funkcjonalności stony. Wiecej szczegółów w dokumentacji: <a TITLE="elementy multimedialne powinny posiadać dostępne wersje alternatywne" HREF="http://www.w3.org/TR/WCAG10-HTML-TECHS/#embed-multimedia">elementy multimedialne powinny posiadać dostępne wersje alternatywne</a>. Zalecana jest również ostrożność stosowania tej metody ze względu na możliwość traktowania zdwojonej treści jako  sposób cloaking&#8217;u, aby temu zapobiec należy starać się o wierne odpowiadanie obu treści (mają przedstawiać to samo).</p>
<p><strong>Praktyka &#8211; użycie funkcji SWFObject();</strong></p>
<p>Nasza metoda jest rozwijana przez Geoff Sterns&#8217;a w postaci skryptu <a HREF="http://blog.deconcept.com/swfobject/" TITLE="SWFObject">SWFObject.js</a>, który służy SEO-zoptymalizowanemu osadzaniu elementów flash w kodzie strony. Jeśli już umieściłeś na serwerze kod skryptu oraz zainkludowałeś do zawartości dokumentu możemy przejść do praktyki. Poniżej najprostszy wariant kodu:</p>
<p><font COLOR="#333399">&lt;script type=&#8221;text/javascript&#8221; src=&#8221;swfobject.js&#8221; mce_src=&#8221;swfobject.js&#8221;&gt;</font></p>
<p><font COLOR="#333399">&lt;/script&gt;</font><font COLOR="#333399"><br />
</font><font COLOR="#333399"> &lt;div id=&#8221;flashcontent&#8221;&gt; </font></p>
<blockquote><p><font COLOR="#333399"> Tutejsze instrukcje zostaną zastąpione elementem flash.</font></p></blockquote>
<p><font COLOR="#333399"> &lt;/div&gt;</font></p>
<p><font COLOR="#333399">&lt;script type=&#8221;text/javascript&#8221;&gt;</font><font COLOR="#333399"><br />
</font><font COLOR="#333399"> var so=new SWFObject(&#8220;movie.swf&#8221;, &#8220;mymovie&#8221;, &#8220;400&#8243;, &#8220;200&#8243;, &#8220;8&#8243;, &#8220;#336699&#8243;);</font><font COLOR="#333399"><br />
</font><font COLOR="#333399"> so.write(&#8220;flashcontent&#8221;);</font><font COLOR="#333399"><br />
</font><font COLOR="#333399"> &lt;/script&gt;</font></p>
<p>&#8211;</p>
<p>W pojemniku &lt;div id=&#8221;flashcontent&#8221;&gt;[...]&lt;/div&gt; zawarty będzie nasz obiekt interaktywny, który będzie automatycznie zastępowany przez treść alternatywną w przypadku wykrycia problemów z obsługą flash&#8217;a.</p>
<p>Argumenty jakie przekazujemy do naszego objektu za pomocą funkcji SWFObject:</p>
<ul>
<li>swf &#8211; ścieżka do pliku swf oraz jego nazwa</li>
<li> id &#8211; ID objektu lub znacznik embed</li>
<li> width &#8211; szerokość osadzanego elementu</li>
<li> hight &#8211; wysokość elementu</li>
<li> version &#8211; wymagana wersja Adobe Flash Player&#8217;a</li>
<li> background-color &#8211; wartość heksadecymalna koloru tła.</li>
</ul>
<p>Opcjonalnie może zawierać również:</p>
<ul>
<li>quality &#8211; jakość z jaką zalecasz odtwarzanie elementu, domyślnie jest wysoka (hight)</li>
<li> xiRedirectUrl &#8211; przekierowanie dla użytkowników, którzy korzystają z szybkiej aktualizacji</li>
<li> redirectUrl &#8211; przekierowanie dla tych, którzy z pewnych powodów nie chcą aktualizować wersji flash playera</li>
<li> detectKey &#8211; klucz z jakim będzie wykrywana wersja naszego skryptu.</li>
</ul>
<p><strong>Uwagi.</strong></p>
<p>Jeśli stosujesz opisane rozwiązanie optymalna kolejność postępowania powinna obejmować jako pierwsze udostępnienie treści alternatywnej a następnie zastosowanie docelowego objektu interaktywnego. Jednak życie uczy nas, że właściwe drogi realizacji są bardzo nieprawdopodobne i chcesz zastosować ten wybieg jako ratunek dla już istniejącego elementu (flash). Jest na to rada, ale do tego jeszcze wrócę.</p>
<p>Odnośnie oczekiwań jakie możemy mieć względem stosowania tego typu wybiegu należy pamiętać, że nie uzyskamy pewności poprawnego pozycjonowania naszej strony, jedyna pewność to ta, że usuwamy niedogodności i czynimy naszą treść dostępniejszą. Solidna optymalizacja i odrobina cierpliwości może przynieść oczekiwane rezultaty lecz nie musi.</p>
<p><strong>Strony w pełni zbudowane w oparciu o flash&#8217;a.</strong></p>
<p>W przypadku stron zbudowanych w pełni na technologii flash sytuacja jest nieco gorsza, aby nie powiedzieć, że beznadziejna. Możemy jednak zapewnić możliwie dobre funkcjonowanie strony pod kątem zasad SEO stosując pewne metody.</p>
<p>Jeśli stworzymy dla każdej z podstron zamienniki w czystym (x)html&#8217;u i pozwolimy na pertraktowanie wyświetlania treści jak w poprzednio opisanej metodzie, jesteśmy o krok dalej. Dodatkowo możemy porcjować elementy flash i umieszczać osobno na każdej podstronie tak aby zapewnić dostęp crawler&#8217;om i użytkownikom nie mogącym wyświetlać animacji.</p>
<p>Jest również możliwość stosowania skryptów PHP aby zamiennie serwować pierwotną treść w czystym kodzie (x)html oraz animacji alternatywnie od sytuacji. Jeśli wszystko oprzeć o wykorzystanie bazy danych (np. MySQL) do przechowywania elementów interaktywnych możemy liczyć na dosyć dobrą optymalizację wyświetlania treści w odniesieniu do szybkości funkcjonowania.</p>
<p><strong>Zakończenie.</strong></p>
<p>Temat optymalizacji daje pole do szerokiej dyskusji i szukania wielu rozwiązań, dlatego ten post nie wyczerpuje w pełni tematu. Jeśli uznam, że będzie to wskazane w następnej części opiszę kolejne metody dla twórców stron opartych na treści interaktywnej flash.</p>
<p><em>~Michał Kowalski 2008</em></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.efrenzy.pl/2008/01/07/flash-seo-i-pozycjonowanie-metody/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Plik robots.txt poprawna składnia.</title>
		<link>http://blog.efrenzy.pl/2008/01/07/plik-robotstxt-poprawna-skladnia/</link>
		<comments>http://blog.efrenzy.pl/2008/01/07/plik-robotstxt-poprawna-skladnia/#comments</comments>
		<pubDate>Mon, 07 Jan 2008 12:35:38 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[SEO & Pozycjonowanie]]></category>
		<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[robots.txt]]></category>
		<category><![CDATA[webdesign]]></category>

		<guid isPermaLink="false">http://blog.efrenzy.pl/2008/01/07/plik-robotstxt-poprawna-skladnia/</guid>
		<description><![CDATA[Krótki tekst o tym jak powinien wyglądać poprawnie napisany plik dla robotów wyszukiwarek internetowych. Jeśli nie wiesz jeszcze jak się do tego zagadnienia zabrać to zapraszam to czytania.
Co to i po co to &#8211; wprowadzenie.
Mniej więcej na przełomie lat 1993/1994 wraz z coraz większym natężeniem ruchu crawler&#8217;ów, (zwanych też pająkami) na różnych serwerach stron www [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Krótki tekst o tym jak powinien wyglądać poprawnie napisany plik dla robotów wyszukiwarek internetowych. Jeśli nie wiesz jeszcze jak się do tego zagadnienia zabrać to zapraszam to czytania.</strong><span id="more-23"></span></p>
<p><strong>Co to i po co to &#8211; wprowadzenie.</strong></p>
<p>Mniej więcej na przełomie lat 1993/1994 wraz z coraz większym natężeniem ruchu crawler&#8217;ów, (zwanych też pająkami) na różnych serwerach stron www zdarzały się sytuacje, że indeksowały one treści, które nie były z różnych powodów przeznaczone do rozpowszechniania. Przykładowo strony, które nie były tworzone z koncepcją udostępniania ich zawartości dla ogółu internetowej społeczności, a z różnych względów nie posiadały odpowiednich mechanizmów zabezpieczających. Dodatkową możliwością jest generowanie zbyt dużego ruchu w ramach lokalizacji internetowej, co mogło powodować zwiększone obciążenie serwerów. Wymyślono wówczas sposób na poinformowanie robota, które części serwisów mają pozostać niezindeksowane, omawianym rozwiązaniem jest właśnie plik robots.txt, w nim właśnie podajemy nazwy katalogów do których pająki nie będą zaglądały.</p>
<p><strong>Format pliku &#8211; dopuszczalna składnia.</strong></p>
<p>Plik robots.txt umieszczamy na serwerze w głównej lokalizacji do której prowadzi adres URL, i powinien on zawierać linijki, których ogólna składnia jest zgodna z poniższym schematem:</p>
<p><font COLOR="#333399">&#8220;&lt;field&gt;:&lt;optionalspace&gt;&lt;value&gt;&lt;optionalspace&gt;&#8221;</font></p>
<p><font COLOR="#333399">&#8220;&lt;pole&gt;:&lt;opcjonalna-spacja&gt;&lt;wartość&gt;&lt;opcjonalna-spacja&gt;&#8221;</font></p>
<p>Dozwolone jest umieszczanie komentarzy w treści omawianego pliku, które wpisujemy po standardowym znaku komentarza, zaczęrpniętym z konwencji stosowanej w systemach UNIX&#8217;owych czyli &#8220;#&#8221; (hasza). Wszystkie linijki zaczynające się od tego znaku są ignorowane.</p>
<p>Wpis zaczyna się od dyrektywy &#8220;User-agent&#8221;, którą poprzedzamy wyrażeniem &#8220;Disallow&#8221; czyli odmowy dostępu, a kończymy znakami opsiującymi lokalizację dla jakiej roboty mają mieć zabroniony dostęp. Dla podania lokalizacji możemy stosować znak / (ukośnik) aby odnieść się do aktualnej lokalizacji, oraz * (gwiazdka), która daje wieloznaczne podstawienie, czyli zabrania dostępu w ramach wszystkich plików/podkatalogów w naszym katalogu głównym. Przykładowa składnia pliku znajduje się poniżej:</p>
<p># oto przykład:<br />
<font COLOR="#333399">User-agent: *    #dotyczy wszystkich typów crawler&#8217;ów<br />
Disallow: /tmp   #zabrania dostępu do katalogu &#8216;tmp&#8217;<br />
Disallow: test.html #zabrania dostępu do pliku &#8216;test.html</font></p>
<p>&#8211;<br />
Można dla pola &#8216;User-agent&#8217; zastosować konkretny typ pająka, np. google/msn i w ten sposób jeden z nich nie będzie miał dostępu do naszych plików.</p>
<p><strong>Zakończenie.</strong></p>
<p>Zagadnienie proste jednak wierzę, że znajdzie się kilka osób, dla których to opracowanie stanie się pomocne. Pozdrowienie!</p>
<p><em>~Michał Kowalski 2008 </em></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.efrenzy.pl/2008/01/07/plik-robotstxt-poprawna-skladnia/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Optymalizacja WordPress&#8217;a &#8211; działania seo pod kątem google (i innych wyszukiwarek).</title>
		<link>http://blog.efrenzy.pl/2008/01/03/optymalizacja-wordpressa-dzialania-seo-pod-katem-google-i-innych-wyszukiwarek/</link>
		<comments>http://blog.efrenzy.pl/2008/01/03/optymalizacja-wordpressa-dzialania-seo-pod-katem-google-i-innych-wyszukiwarek/#comments</comments>
		<pubDate>Thu, 03 Jan 2008 22:27:28 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[SEO & Pozycjonowanie]]></category>
		<category><![CDATA[xHTML/css]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[optymalizacja]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wyszukiwarki]]></category>

		<guid isPermaLink="false">http://blog.efrenzy.pl/2008/01/03/optymalizacja-wordpressa-dzialania-seo-pod-katem-google-i-innych-wyszukiwarek/</guid>
		<description><![CDATA[WordPress stanowi dobre rozwiązanie dla celów zarządzania dynamicznymi treściami, szczególnie jeśli chcemy prezentować zasoby często aktualizowane. Świetnie sprawdza się jako środek promocji z wykorzystaniem wyszukiwarek internetowych. W tym tekście skupiam się na aspektach optymalizacji ustawień WP dla potrzeb zaspokojenia wymagań algorytmów google&#8217;a.
Spis rzeczy:
&#8211;
1. Słowo wstępne.
2. Cele &#8211; Wprowadzenie pojęć.
2.a. Duplicate Content
2.b. Supplemental Index
3. Działania &#8211; [...]]]></description>
			<content:encoded><![CDATA[<p><strong>WordPress stanowi dobre rozwiązanie dla celów zarządzania dynamicznymi treściami, szczególnie jeśli chcemy prezentować zasoby często aktualizowane. Świetnie sprawdza się jako środek promocji z wykorzystaniem wyszukiwarek internetowych. W tym tekście skupiam się na aspektach optymalizacji ustawień WP dla potrzeb zaspokojenia wymagań algorytmów google&#8217;a.</strong><span id="more-22"></span></p>
<p><em><u>Spis rzeczy:</u></em></p>
<p>&#8211;</p>
<p>1. Słowo wstępne.</p>
<p>2. Cele &#8211; Wprowadzenie pojęć.</p>
<blockquote><p>2.a. Duplicate Content<br />
2.b. Supplemental Index</p></blockquote>
<p>3. Działania &#8211; metody.</p>
<blockquote><p>3.a. Optymalizacja tytułów.<br />
3.b. Przyjazne linki (mod_rewrite/.htaccess).<br />
3.c. Stosowanie mechanizmu &#8216;Read-More&#8217;.</p></blockquote>
<p>4. Zasady optymalizacji treści &#8211; kompozycja.</p>
<p>5. Mapa strony - google-sitemap.</p>
<p>6. Zakończenie.</p>
<p>&#8211;</p>
<p><strong>Ad.1.</strong></p>
<p>WordPress uchodzi za jeden z lepiej funkcjonujących i przyjaznych wyszukiwarkom silników zarządzania treścią, ja podobnie jak tysiące innych internautów zgadzam się z tym zdaniem w stu procentach. Najczęściej template&#8217;y do WP są poprawne ze względu na wymagania jakie stawia specyfikacja xhtml&#8217;a, czyli przechodzą poprawnie walidację. Jeśli nie wiesz co to jest, tutaj: dowiesz się <a TITLE="Walidacja, walidator, semantyka." HREF="http://efrenzy.pl/articles/walidacja.html#main">co to walidacja</a>. Wracając do zagadnienia pomimo, że WP stanowi w wersji podstawowej jeden z lepszych CMS&#8217;ów, zawsze można nad nim popracować i osiągnąć lepszy efekt oraz dużo bardziej zadowalające rezultaty pozycjonowania Twojego bloga.</p>
<p><strong>Ad.2.</strong></p>
<p>Chcemy aby nasza praca nad poprawieniem aktualnego stanu Twojego WordPress&#8217;a przyniosła efekt w postaci lepszego indeksowania Twojej treści przez roboty google&#8217;a oraz pozwoliła na osiągnięcie lepszych pozycji w wynikach wyszukiwarek. Chcemy aby nasz blog stał się przyjazny dla crawlerów. Chcemy aby Twoja wiedza nie była publikowana na marne. Musimy poradzić sobie z takimi zjawiskami jak duplicate content na skutek czego mamy do czynienia z wpadaniem naszych postów do indeksów uzupełniających wyników wyszukiwania. Aby rozjaśnić nieco sytuację proponuję przejść do definicji.</p>
<p><strong>Ad.2.a. Duplicate Content</strong></p>
<p>Duplicate Content (Efekt Zduplikowanej Zawartości) jest to zjawisko powodowane przez dostępność tej samej treści (postów) pod kilkoma możliwymi ścieżkami w treści serwisu. Ze względu na to, że WPress dzieli artykuły na kategorie, dodatkowo również udostępnia archiwum postów, co powoduje, iż ta sama treśc wpisów jest dostępna pod kilkoma ścieżkami podążania za odnośnikami w ramach bloga. Google zwraca szczególną uwagę na jakość treści, które trafiają do indeksu stron &#8211; Duplicate Content zapobiega publikowaniu tych samych stron kilkukrotnie z tą samą zawartością.  (por. Ad.3.b. oraz Ad.3.c)</p>
<p><strong>Ad.2.b. Supplemental Index &#8211; Indeks Uzupełniający</strong></p>
<p>&#8211; aby wyjaśnić to pojęcie powinniśmy sobie wyobrazić jak google indeksuje linki wewnętrzne oraz treści zawarte w ramach naszego bloga do których one prowadzą. Jeśli założymy, że wszystkie posty zostały zaindeksowane, to zazwyczaj nie wszystkie są na równi traktowane przez wyszukiwarkę. Jedne z nich pojawiają się jako podstawowe wyniki wyszukiwania inne natomiast nie są wyświetlane w przypadku podstawowego zapytania do naszego adresu URL. Może to wyglądać tak:<br />
<em><font COLOR="#333399">site:www.twoj.blog.pl</font></em></p>
<p>Często do wpadania linków do SI przyczynia się wcześniej omówione zjawisko podwójnej treści. Nie jest do końca wyjaśnione na czym dokładnie polega mechanizm SI, wiemy natomiast jak on się objawia oraz jak sprawdzić występowanie naszych adresów w Wynikach Uzupełniających.  Przykładowo wpisując w pasek wyszukiwania google&#8217;a zapytanie:<br />
<em><font COLOR="#333399">site:www.twoj.blog.pl *** -view</font>,</em></p>
<p>otrzymamy wyniki prezentujące ilość naszych podstron jakie trafiły do SI. Przyczyną takiego traktowania linków może być również zduplikowany tag tytułowy &lt;title&gt; oraz meta-tag keywords. Kolejny aspekt optymalizacji seo naszego WP. Skoro wyjaśniliśmy sobie najtrudniejszcze pojęcia, możemy zacząć działać.</p>
<p><u><font COLOR="#993300">&#8220;Jedziemy dalej, nikt nie woła!&#8221;</font></u></p>
<p><strong>Ad.3.a</strong></p>
<p>Optymalizacja tytułów obejmuje zagadnienie wyświetlania tekstów w pasku przeglądarki, z czego również korzysta google przy wyświetlaniu wyników. Dla przykładu w przypadku skórki z jakiej korzystam linijka odpowiedzialna za wyświetlanie tagów tytułowych znajdowała się w pliku:</p>
<p>wp-content/themes/*nazwa_theme*/header.php i wyglądała następująco:</p>
<pre>&lt;title&gt;&lt;?php bloginfo('name'); ?&gt;&lt;?php wp_title();?&gt;&lt;/title&gt;.</pre>
<p>Kod ten daje efekt tytułu wyglądającego jak: NAZWA BLOGA TytułArta &#8211; jak dla użytkownika prezentuje się zadowalająco, jednak w przypadku chęci poprawienia działania tego elementu, można skorzystać z metody zaproponowanej na stronie Pawła Lipca pod adresem http://polskiblogger.pl/lepszy-tytul-bloga.html:</p>
<pre>&lt;title&gt;
&lt;?php if (is_home () ) { bloginfo(“name”); }
elseif ( is_category() ) { single_cat_title(); echo ” w “; bloginfo(“name”); }
elseif (is_single() ) { single_post_title(); echo ” na “; bloginfo(“name”); }
elseif (is_page() ) { single_post_title(); echo ” - “; bloginfo(“name”); }
elseif (is_search() ) { echo wp_specialchars($s); echo ” w “; bloginfo(“name”); }
elseif (is_archive() ) {  echo “Archiwum “; bloginfo(“name”); }
else { wp_title(“,true”); } ?&gt;
&lt;/title&gt;</pre>
<p>Jak to działa? Jeśli wyświetlana jest strona domowa (adres główny) to jako tytuł wyświetlana jest nazwa bloga, w przypadku jeśli jesteśmy w kategorii wyświetlana jest nazwa kategorii oraz na końcu nazwa bloga. Daje to efekt generowania różnych tytułów w zależności od wyświetlanej treści. Pamiętając, że google lubi różnorodność contentu warto poświećić temu zagadnieniu kilka chwil i odpowiednio spersonalizować ten element naszego WP.</p>
<p><strong>Ad.3.b.</strong></p>
<p>Przyjazne adresy są związane z wyglądem linków jakie stanowią wewnętrzną strukturę nawigacji po naszych postach i stronach, wyszukiwarki stanowczo zwracają na ten aspekt sporo uwagi (o ile można pozwolić sobie na tak dalece posuniętą personifikacje tych bezdusznych mechanizmów przyp. red.).</p>
<p>Po pierwsze należy zastanowić się czy nasz blog ma być dostępny pod adresem z prefiksem www. czy bez. Google dwa typy adresów postaci www.blog.pl oraz blog.pl widzi jak dwie odrębne lokalizacje i możliwe jest aby pod dwoma takimi URL&#8217;ami znajdowały się zupełnie inne strony www. Aby poradzić sobie z omawianym wcześniej Duplicate Content na tej drodze możemy zastosować reguły przepisywania mod-rewrite, osiągalne zazwyczaj z poziomu pliku .htaccess.</p>
<p>Jeśli już wiemy jaki wariant nas interesuje (wybieramy tylko jeden) zastosujemy jedą z poniższych reguł:</p>
<p><font COLOR="#333399">#www.blog.efrenzy.pl<br />
RewriteEngine On<br />
RewriteBase /<br />
RewriteCond %{HTTP_HOST} ^blog.efrenzy.pl<br />
RewriteRule (.*) http://www.blog.efrenzy.pl/$1 [R=301,L]</font></p>
<p>bądź:</p>
<p><font COLOR="#333399">#blog.efrenzy.pl<br />
RewriteEngine On<br />
RewriteBase /<br />
RewriteCond %{HTTP_HOST} ^www.blog.efrenzy.pl<br />
RewriteRule (.*) http://blog.efrenzy.pl/$1 [R=301,L]</font></p>
<p>&#8211;<br />
Słowem wyjaśnienia RewriteEngine On &#8212; używamy wyłącznie raz na początku pliku .htaccess (umieszczamy w katalogu gdzie znajduje się index.php, nadajemy prawa 644), RewriteBase / &#8212; ustawia nam poziom zero, czyli miejsce do, którego odnoszą się nasze reguły, RewriteCond &#8212; to warunek przepisania (to co chcemy zmaienić) oraz RewriteRule &#8212; to co chcemy uzyskać czyli reguła.</p>
<p>Za pomocą mod rewrite możemy również ustawić postać linków jakie będą wyświetlane w paski adresu, a także widziane przez roboty wyszukiwarek, tak aby nie były łańcuchami postaci:</p>
<p>adres.bloga.pl/index.php?strona=testowa&amp;kategoria=nieprzyjazna etc.</p>
<p>W ramach panelu administracyjnego możemy zdefiniować postac linków przyjaznych z naszego punktu widzenia:</p>
<p><font COLOR="#333399">Options&gt;PermaLinks&gt;Custom structure:/%postname%/</font></p>
<p><font COLOR="#333399">czyli Opcje&gt;LinkiWew&gt;Custom structure:/%postname%/ .</font></p>
<p>Daje to przyjazny efekt wyświetlający wyłącznie tytuł posta, i w przypadku reedycji np. pod inna datą pozwala uniknąć zbieżności treści.</p>
<p>Temat zastosowania htaccess to materiał na naprawdę długą opowieść dlatego należy zainteresować się we własnym zakresie nad innymi jeszce możliwościami.</p>
<p><strong>Ad.3.c.</strong></p>
<p>Jeśli powrócimy do wciąż powtarzającej się tematyki zduplikowanego kontentu, możemy zastosować jedną jeszcze metodę zapobiegania występowaniu DC. Mianowicie stosowanie znaczników &#8220;ReadMore&#8221; / &#8220;CzytajDalej&#8221;, komponując treść wpisu polecam kilka zdań wstępu oddzielić od reszty posta linią znacznika, który pozwala ukryć pozostały content. Google w ten sposób nie trafia odrazu na stronie głównej oraz na stronach kategorii na pełną treść wpisów. Są one dzięki temu widziane w pełnej krasie po wyświetleniu za pomocą konkretnego odwołania.</p>
<p><strong>Ad.4. Kompozycja, słowa kluczowe, strategiczne rozmieszczenie.</strong></p>
<p>Aby wykorzystać w pełni potencjał prezentowanych wpisów dobrze jest tak komponować części dodatkowo podkreślone aby zawierały słowa kluczowe czyli strategiczne dla tematyki naszego bloga. Tak więc podkreślone części to nagłówki h1, treść pogrubiona, linki wewnętrzne. Jeśli pamiętamy, że kluczowe mają być naprawdę kluczowe, dostajemy korzyść lepszych wyników na stronie SERP.</p>
<p><strong>Ad.5. </strong></p>
<p>Bardzo dobrym rozwiązaniem jest stworzenie mapy strony i zgłoszenie jej w narzędziach dla webmasterów google. Jeśli chcesz się dowiedzieć więcej odsyłam do mojego tekstu na temat <a HREF="http://blog.efrenzy.pl/2007/12/14/xml-oraz-googlesitemaps-jak-to-zrobic/" TITLE="Google sitemaps - mapy stron.">tworzenia google sitemap (mapy stron)</a>.</p>
<p><strong>Ad.6.</strong></p>
<p>Treść tego wpisu stanowi tylko wierzchołek góry lodowej, gdyż dokumentacja WordPress&#8217;a zawiera bogaty opis pozwalający na poszerzanie naszych działań optymalizacyjnych, dlatego w następnej części podzielę sie kolejną dawką wiedzy na temat optymalizacji WP. W razie pytań czy wątpliwości zachęcam do zadawania pytań.</p>
<p><em>~Michał Kowalski 2008</em></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.efrenzy.pl/2008/01/03/optymalizacja-wordpressa-dzialania-seo-pod-katem-google-i-innych-wyszukiwarek/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Darmowe strony dla kreatywnych! To nie żart, sprawdź.</title>
		<link>http://blog.efrenzy.pl/2007/12/28/darmowe-strony-dla-kreatywnych-to-nie-zart-sprawdz/</link>
		<comments>http://blog.efrenzy.pl/2007/12/28/darmowe-strony-dla-kreatywnych-to-nie-zart-sprawdz/#comments</comments>
		<pubDate>Fri, 28 Dec 2007 01:32:26 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Copyright&E-marketing]]></category>
		<category><![CDATA[Peryskop]]></category>
		<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[darmowe strony]]></category>
		<category><![CDATA[tworzenie stron www]]></category>
		<category><![CDATA[webdesign]]></category>

		<guid isPermaLink="false">http://blog.efrenzy.pl/2007/12/28/darmowe-strony-dla-kreatywnych-to-nie-zart-sprawdz/</guid>
		<description><![CDATA[Zapraszam do współpracy! 
Ponieważ w Efrenzy Interactive wciąż myślimy jak spożytkować naszą kreatywności i umiejętności, wymyśliłem aby zrobić konkurs na najlepszy pomysł realizacji www.
Jeśli posiadasz zamysł na ciekawą lokalizację, napisz do nas pod adres blog (maupa) efrenzy (kropka) pl a my sprawdzimy czy rzeczywiście warto włożyć w Twój projekt odrobinę pracy. Masz możliwość uzyskać BEZPŁATNIE kodowanie oraz opracowanie [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Zapraszam do współpracy! </strong></p>
<p>Ponieważ w <font COLOR="#ff0000">Efrenzy Interactive</font> wciąż myślimy jak spożytkować naszą kreatywności i umiejętności, wymyśliłem aby zrobić konkurs na najlepszy pomysł realizacji www.<br />
Jeśli posiadasz zamysł na ciekawą lokalizację, napisz do nas pod adres blog (maupa) efrenzy (kropka) pl a my sprawdzimy czy rzeczywiście warto włożyć w Twój projekt odrobinę pracy. Masz możliwość uzyskać BEZPŁATNIE kodowanie oraz opracowanie optymalnej trony internetowej.</p>
<p><strong>Dlaczego to robimy?</strong></p>
<p>Oczywiście dla naszej wspolnej korzyści, <font COLOR="#ff9900">Twój zysk jest niewątpliwy</font> &#8211; z naszej strony możemy nawiązać współpracę oraz wymienić doświadczenia a co najważniejsze poprostu uwielbiamy nasze zajęcie <img src='http://blog.efrenzy.pl/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Czekam na propozycje! M.Kowalski</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.efrenzy.pl/2007/12/28/darmowe-strony-dla-kreatywnych-to-nie-zart-sprawdz/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Co to jest w3c oraz DTD ? Rzecz o DOCTYPE.</title>
		<link>http://blog.efrenzy.pl/2007/12/26/co-to-jest-w3c-oraz-dtd-rzecz-o-doctype/</link>
		<comments>http://blog.efrenzy.pl/2007/12/26/co-to-jest-w3c-oraz-dtd-rzecz-o-doctype/#comments</comments>
		<pubDate>Wed, 26 Dec 2007 02:08:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[xHTML/css]]></category>
		<category><![CDATA[doctype]]></category>
		<category><![CDATA[dtd]]></category>
		<category><![CDATA[w3c]]></category>
		<category><![CDATA[webdesign]]></category>

		<guid isPermaLink="false">http://blog.efrenzy.pl/2007/12/26/co-to-jest-w3c-oraz-dtd-rzecz-o-doctype/</guid>
		<description><![CDATA[W3C &#8211; The World Wide Web Consortium
Konsorcjum WWW to organizacja zrzeszająca niemalże 400 firm, instytucji, uczelni wyższych, które stoją na straży prawidłowego rozwoju standardów tworzenia dokumentów sieci web. W jego skład wchodzą m. in. deweloperzy tworzący aktualnie najpopularniejsze przeglądarki internetowe (Microsoft, Apple, Operę, AOL (dawny Netscape) i  Mozilla). Dziwić może fakt, że w tym [...]]]></description>
			<content:encoded><![CDATA[<p><strong>W3C &#8211; The World Wide Web Consortium</strong></p>
<p>Konsorcjum WWW to organizacja zrzeszająca niemalże 400 firm, instytucji, uczelni wyższych, które stoją na straży prawidłowego rozwoju standardów tworzenia dokumentów sieci web. W jego skład wchodzą m. in. deweloperzy tworzący aktualnie najpopularniejsze przeglądarki internetowe (Microsoft, Apple, Operę, AOL (dawny Netscape) i  Mozilla). Dziwić może fakt, że w tym gronie znajduje się twórca przeglądarki IE (sic!), jednak Microsoft stanowi poważnego sponsora w3c. To, że jego przeglądarka posiada błędy stanowi odrębną sprawę. Jako głównego założyciela konsorcjum należy wymienić Tim&#8217;a Berners Lee &#8211; człowieka, który dał początek hipertekstowi, przeglądarkom i serwerom www. Jak już wspomniałem w3c dba o standardy na potrzeby sieci i zważa na jej prawidłowy rozwój wytyczając kierunki. Aby &#8220;standard&#8221; nie stał się utopią ludzie zrzeszeni w w3c starają się pamiętać o realnym podejściu do tematu, stąd np. wersje Transitional &#8211; biorące pod uwagę śmietnik dawnego html&#8217;a.<span id="more-18"></span></p>
<p><strong>DTD/DOCTYPE &#8211; co nam daje W3C.</strong></p>
<p>Skrót od Document Type Definition/Declaration, jest to deklaracja stosowanej przestrzeni nazw, czyli struktury html&#8217;a. Umieszczana obowiązkowo na początku każdego dokumentu html/xhtml. Stanowi informację dla przeglądarki jak ma interpretować kod, który jej serwujemy. Wiele jego wersji powstało aby nadążyć za dość chaotycznym rozwojem przeglądarek internetowych &#8211; głównie InternetExplorel&#8217;a, który w przypadku wersji 5, nie był zgodny z żadnym ze standardów, a twórcy stron optymalizowali kod wyłącznie pod tą aplikację. Powstało przez to wiele zamieszania (np. tryb Quirks Mode) i kilka wersji DOCTYPE:</p>
<ul>
<li> <font COLOR="#000080">Strict</font> &#8211; wersja ścisła, zgodna ze standardem, nie zawiera ramek oraz przestarzałych znaczników, takiej powinniśmy się trzymać przy tworzeniu stron www.</li>
<li><font COLOR="#000080">Transitional</font> &#8211; wersja przejściowa, może posiadać tagi uznane za przestarzałe, typ &#8216;transitional&#8217; powstał z myślą o starych stronach, które siłą rzeczy nadal znajdują się w internecie i jesteśmy skazani na ich za&lt;B&gt;a&lt;BR&gt;any kod.</li>
<li><font COLOR="#000080">Frameset</font> &#8211; jest to forma, która dopuszcza stosowanie ramek, jeśli nie wiesz o co chodzi to lepiej niech tak pozostanie, ramki były kiepskim wynalazkiem i dobrze, że aktualnie od tej koncepcji tworzenia stron z całą mocą się odchodzi.</li>
</ul>
<p><font COLOR="#ff9900">Poprawne deklaracje</font> <strong>DOCTYPE</strong>:</p>
<p><font COLOR="#333399">HTML 4.01 Strict, Transitional, Frameset</font></p>
<p>&lt;!DOCTYPE HTML PUBLIC &#8220;-//W3C//DTD HTML 4.01//EN&#8221;<br />
&#8220;http://www.w3.org/TR/html4/strict.dtd&#8221;&gt;</p>
<p>&lt;!DOCTYPE HTML PUBLIC &#8220;-//W3C//DTD HTML 4.01 Transitional//EN&#8221;<br />
&#8220;http://www.w3.org/TR/html4/loose.dtd&#8221;&gt;</p>
<p>&lt;!DOCTYPE HTML PUBLIC &#8220;-//W3C//DTD HTML 4.01 Frameset//EN&#8221;<br />
&#8220;http://www.w3.org/TR/html4/frameset.dtd&#8221;&gt;</p>
<p><font COLOR="#333399"><font COLOR="#ff9900">X</font><font COLOR="#333399">HTML 1.0 Strict, Transitional, Frameset</font></font></p>
<p>&lt;!DOCTYPE html PUBLIC &#8220;-//W3C//DTD XHTML 1.0 Strict//EN&#8221;<br />
&#8220;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&#8221;&gt;</p>
<p>&lt;!DOCTYPE html PUBLIC &#8220;-//W3C//DTD XHTML 1.0 Transitional//EN&#8221;<br />
&#8220;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&#8221;&gt;</p>
<p>&lt;!DOCTYPE html PUBLIC &#8220;-//W3C//DTD XHTML 1.0 Frameset//EN&#8221;<br />
&#8220;http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd&#8221;&gt;</p>
<p><font COLOR="#333399"><font COLOR="#333399"><font COLOR="#333399"><font COLOR="#333399"><font COLOR="#333399"><font COLOR="#333399">XHTML 1.1 DTD</font></font></font></font></font></font></p>
<p>&lt;!DOCTYPE html PUBLIC &#8220;-//W3C//DTD XHTML 1.1//EN&#8221;<br />
&#8220;http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd&#8221;&gt;</p>
<p><strong>Niepoprawne DTD - czym to grozi?</strong></p>
<p>Być może miałeś taką sytuację, że napisałeś kod w html&#8217;u dla srtony www, sprawdziłeś walidatorem jej poprawność, mimo to strona nie chciała poprawnie funkcjonować w żadnej przeglądarce ? Najprawdopodobniej popsułeś deklarację DOCTYPE. Dlaczego to takie ważne ? Dlatego, że mówi przeglądarce w jakim dialekcie z nią rozmawiasz za pośrednictwem plików html. Rzecz w szczególności dotyczy przeglądarek takich jak Mozilla, IE5/Mac, and IE6/Win. Jeśli deklaracja typu jest błędna bądź wogóle nie występuje, przeglądarka przechodzi w tzw. tryb &#8220;Quirks Mode&#8221; czyli traktuje stronę jak dokument niestandardowy &#8211; napisany przestarzałym kodem. Sporo można na tym stracić! Sprawdź:</p>
<ol>
<li> czy adres odnoszący się do zewnętrzenego dokumentu &#8220;.dtd&#8221; jest absolutny (bezwzględny), czyli czy zawiera część &#8220;http://www.w3.org/TR/&#8221;. Zdarza się, że webmaster kopiuje bezmyślnie deklarację ze stron w3w gdzie mogą być podane linki względne &#8211; działające tylko w obrębie danego serwera.</li>
<li>czy rzeczywiście napisany przez Ciebie kod jest tym za co się podaje w deklaracji typu czyli DTD <img src='http://blog.efrenzy.pl/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </li>
</ol>
<p><strong>Zakończenie - w edukacji nadzieja na lepszą przyszłość.</strong></p>
<p>Dzięki wielu akcjom promującym stosowanie standardów oraz zwracającym uwagę na poprawność kodu dostępnych lokalizacji jest możliwe, że niedługo internet stanie się dostępniejszy. Mam nadzieję, że tym wpisem udało mi się wyjaśnić kilka niezwykle istotnych zagadnień oraz przyczynić do lepszego funkcjonowania pisanych przez Ciebie stron. Pozdrowienia.</p>
<p><em>Michał Kowalski 2007</em></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.efrenzy.pl/2007/12/26/co-to-jest-w3c-oraz-dtd-rzecz-o-doctype/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
