<?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>TYPO3 Blogger &#187; myExt</title>
	<atom:link href="http://typo3blogger.de/category/myext/feed/" rel="self" type="application/rss+xml" />
	<link>http://typo3blogger.de</link>
	<description>TYPO3 News, Development &#38; Insider Infos</description>
	<lastBuildDate>Tue, 22 May 2012 19:04:05 +0000</lastBuildDate>
	<language>de-de</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>EXT:Maintenance &#8211; TYPO3 Wartungsmodus mit einem Klick aktivieren</title>
		<link>http://typo3blogger.de/extension-maintenance-typo3-wartungsmodus-mit-einem-klick-aktivieren/</link>
		<comments>http://typo3blogger.de/extension-maintenance-typo3-wartungsmodus-mit-einem-klick-aktivieren/#comments</comments>
		<pubDate>Wed, 22 Feb 2012 19:50:12 +0000</pubDate>
		<dc:creator>Andy Grunwald</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[myExt]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=7651</guid>
		<description><![CDATA[Am 28. April 2011 hat Peter Kraume einen Beitrag zum Thema &#8220;TYPO3 vorübergehend in den Wartungsmodus schalten&#8221; veröffentlicht. In den dortigen Kommentaren wurde gefragt, warum dies nicht einfacher zu aktivieren wäre. Diese Frage ist bei mir auf Interesse gestoßen. Ich habe daraufhin eine kleine Extension entwickelt, die genau dies tut: Den TYPO3 Wartungsmodus mit einem Klick [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Am 28. April 2011 hat Peter Kraume einen Beitrag zum Thema <a title="TYPO3 vorübergehend in den Wartungsmodus schalten" href="http://typo3blogger.de/typo3-vorubergehend-in-den-wartungsmodus-schalten/">&#8220;TYPO3 vorübergehend in den Wartungsmodus schalten</a>&#8221; veröffentlicht. In den dortigen Kommentaren wurde gefragt, warum dies nicht einfacher zu aktivieren wäre. Diese Frage ist bei mir auf Interesse gestoßen. Ich habe daraufhin eine kleine Extension entwickelt, die genau dies tut: Den TYPO3 Wartungsmodus mit einem Klick zu aktivieren. Zugegeben: Ich habe länger als fünf Minuten benötigt (siehe Kommentare im verlinken Artikel). Dennoch funktioniert diese Extension ab TYPO3 4.5 aufwärts.</p>
<p><span id="more-7651"></span>Aber was ist zu tun um das ganze zum laufen zu bringen? Gar nicht so viel!</p>
<ol>
<li>Extension <a title="TYPO3 Extension Repository: Maintenance" href="http://typo3.org/extensions/repository/view/maintenance/current/">&#8220;maintenance&#8221; aus dem TER</a> installieren</li>
<li>Im Extension Manager das Setting &#8220;adminOnly&#8221; konfigurieren. Dieses Setting wird bei Aktivierung des Wartungsmodus automatisch gesetzt. Dort ist Einstellbar, wer sich während der Wartung in das Backend einloggen kann (alle User, nur Administratoren, Administratoren und CLI Benutzer)</li>
<li>Zur Kontrolle sollten die Einstellungen &#8220;DevIpMask&#8221;, &#8220;pageUnavailable_handling&#8221; und &#8220;pageUnavailable_handling_statheader&#8221; im Install-Tool überprüft werden</li>
<li>Um ganz sicher zu gehen, kann man seine getätigten Einstellungen noch im Report-Module im Bereich &#8220;maintenance&#8221; überprüfen</li>
<li>Danach einfach mal das TYPO3 Backend neu laden. In der rechten oberen Ecke sollte nun ein neues Icon auftauchen, was den Wartungsmodus aktiviert / deaktiviert</li>
</ol>
<p>Schritt zwei, drei und vier sind nicht wirklich nötig um die Extension zu testen. Dennoch sind diese sinnvoll und empfehlenswert. Denn wie schon im verlinken Artikel beschrieben sollte die &#8220;DevIpMask&#8221; auf die aktuelle IP-Adresse zutreffen um weiterhin die richtige Seite zu sehen. &#8220;pageUnavailable_handling&#8221; sollte mittels READFILE, REDIRECT, USER_FUNCTION, oder ähnliches auf einen vernünftigen und aussagekräftigen Wert gesetzt werden, damit der Benutzer auch weiß warum die Seite für kurze Zeit nicht verfügbar ist. Und zu guter letzt sollten alle automatischen Anfragen mittels &#8220;pageUnavailable_handling_statheader&#8221; informiert werden (HTTP Header 503).</p>
<p>Bereits kurz nach dem ersten Release im TER hat Josef Florian Glatz vom österreichischen <a title="TYPO3Blog" href="http://typo3blog.at">TYPO3Blog</a> die Extension aufgegriffen, getestet und <a title="TYPO3Blog.at: Extension &quot;maintenance&quot; im TER veröffentlicht" href="http://typo3blog.at/videos/artikel/extension-maintenance-im-ter-veroeffentlicht/">einen Artikel darüber verfasst</a>. Dazu wurde ein kleiner Screencast erstellt, den er uns freundlicherweise zur Verfügung gestellt hat. Vielen Dank dafür!<br />
[Im Feed kann dieses Video nicht angezeigt werden.<a href="http://typo3blogger.de/extension-maintenance-typo3-wartungsmodus-mit-einem-klick-aktivieren/">Klicke zum Blogeintrag um das Video anzusehen.]</a></p>
<p>Wie immer würde ich mich als Entwickler über Feedback sehr freuen (auch negatives!). Gefundene Bugs sowie weitere Features werden gerne im Forge-Issue-Tracker entgegen genommen. Auch eine Bewertung (Rating) im TYPO3 Extension Repository zaubert einem Entwickler ein grinsen ins Gesicht <img src='http://typo3blogger.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Und nun eine Frage aus eigenem Interesse: Werdet Ihr diese Extension einsetzen oder ist diese &#8220;unnütz&#8221;, weil TYPO3 alles von Haus aus mit bringt?</p>
<p>Weitere Links:</p>
<ul>
<li><a title="EXT:maintenance auf Forge" href="http://forge.typo3.org/projects/extension-maintenance">EXT:maintenance auf Forge</a></li>
<li><a title="EXT:maintenance im TER" href="http://typo3.org/extensions/repository/view/maintenance/current/">EXT:maintenance im TER</a></li>
<li><a title="Extension-Review auf TYPO3blog.at" href="http://typo3blog.at/videos/artikel/extension-maintenance-im-ter-veroeffentlicht/">Extension-Review auf TYPO3blog.at</a></li>
<li><a title="EXT:maintenance-Review auf Vimeo" href="http://vimeo.com/37218330">EXT:maintenance-Review auf Vimeo</a></li>
</ul>
<p>&nbsp;</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/extension-maintenance-typo3-wartungsmodus-mit-einem-klick-aktivieren/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Hilfetexte in Extension einbinden &#8211; Context Sensitive Help (CSH)</title>
		<link>http://typo3blogger.de/hilfetexte-in-extension-einbinden-context-sensitive-help-csh/</link>
		<comments>http://typo3blogger.de/hilfetexte-in-extension-einbinden-context-sensitive-help-csh/#comments</comments>
		<pubDate>Wed, 28 Sep 2011 17:57:54 +0000</pubDate>
		<dc:creator>Christian Wolfram</dc:creator>
				<category><![CDATA[Extension]]></category>
		<category><![CDATA[myExt]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[TYPO3]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=6606</guid>
		<description><![CDATA[Um Redakteuren das Leben mit TYPO3 zu vereinfachen bietet es sich an, in selbst entwickelten Extentions Hilfetexte zu den Eingabefeldern zu verfassen. Die Feldbezeichnung selbst, sollte schon Aussagekräftig genug sein, allerdings kann man an dieser Stelle nicht immer ausreichend Informationen hinerlassen. Um Context Sensitive Help nun aktivieren zu können, sind 2 Schritte nötig. Es muss [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Um Redakteuren das Leben mit TYPO3 zu vereinfachen bietet es sich an, in selbst entwickelten Extentions Hilfetexte zu den Eingabefeldern zu verfassen. Die Feldbezeichnung selbst, sollte schon Aussagekräftig genug sein, allerdings kann man an dieser Stelle nicht immer ausreichend Informationen hinerlassen.</p>
<p><span id="more-6606"></span>Um Context Sensitive Help nun aktivieren zu können, sind 2 Schritte nötig.</pre>
<ol>
<li>Es muss eine entsprechende Datei mit den Hilfetexten erstellen werden</li>
<li>Die Datei ext_tables.php der Extension muss modifiziert bzw. erweitert werden</li>
</ol>
<p>Im Root-Verzeichnis der Extension erstellt man sich eine XML-Datei oder kopiert sich die locallang.xml und benennt diese in "locallang_csh_ExtensionKey_DBTabelle.xml" um. In diese XML-Datei werden wie gewohnt die verschiedenen Übersetzungen der Sprachen angelegt. Lediglich die META-Angabe unterscheidet sich und sollte in etwa wie folgt aussehen:</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;meta</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;array&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;description<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>CSH for your own table.<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/description<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;type<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>CSH<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/type<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;csh_table<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>tx_meineExtension_DBTabelle<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/csh_table<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/meta<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<p>Der Index der Label-Tags setzt sich aus dem Tabellenfeld und ".description" zusammen, z.B.</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;label</span> <span style="color: #000066;">index</span>=<span style="color: #ff0000;">&quot;subtitle.description&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>Eine Beschreibung für das Beschreibungsfeld.<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/label<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<p>Im zweiten Schritt muss die XML-Datei TYPO3 bekannt gemacht werden und dies erfolgt in der Datei ext_tables.php (ebenfalls im Root-Verzeichnis der Extension). Hier wird nun die folgende Zeile (bei mir am Ende der Datei) eingefügt:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">t3lib_extMgm<span style="color: #339933;">::</span><span style="color: #004000;">addLLrefForTCAdescr</span><span style="color: #009900;">&#40;</span>
  <span style="color: #0000ff;">'tx_meineExtension_DBTabelle'</span><span style="color: #339933;">,</span>
  <span style="color: #0000ff;">'EXT:ExtensionKey/locallang_csh_ExtensionKey_DBTabelle.xml'</span>
<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Danach werden die Hilfetexte beim überfahren der Feldbeschriftung mit der Maus nachgeladen. Ich persönlich finde es nicht gerade praktisch, dass es keinen Hinweis in Form eines Icons mehr gibt. Dadurch muss man immer Raten hinter welcher Feldbezeichnung vll. auch eine Beschreibung verborgen ist.</p>
<p>Die genannten 2 Schritte kann man nun für weitere DB-Tabellen wiederholen und somit für jedes Eingabefeld eine entsprechende Beschreibung einbinden.</p>
<p>P.S.: Wer bereits mit Extbase programmiert, muss sich darum nicht mehr kümmern, sofern mit dem Extension Builder gearbeitet wird. Dieser erstellt die CSH-Dateien bereits beim anlegen der Extension unter /Resources/Private/Language/. Insofern braucht man nur noch die Beschreibungstexte tippen und hineinkopieren.</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/hilfetexte-in-extension-einbinden-context-sensitive-help-csh/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Extension socials veröffentlicht</title>
		<link>http://typo3blogger.de/extension-socials-veroffentlicht/</link>
		<comments>http://typo3blogger.de/extension-socials-veroffentlicht/#comments</comments>
		<pubDate>Tue, 13 Sep 2011 04:21:08 +0000</pubDate>
		<dc:creator>Georg Ringer</dc:creator>
				<category><![CDATA[ExtBase/Fluid]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[myExt]]></category>
		<category><![CDATA[TYPO3]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=6546</guid>
		<description><![CDATA[Gestern habe ich eine weitere Extension namens &#8220;socials&#8221; im TER veröffentlicht. Diese soll als Sammeltopf für alle Belange im Socials-Sektor dienen. Ich gebe zu, ich habe nicht jede Extension des TER ausprobiert, die Facebook, Twitter &#38; Co in ihrem Namen hat, aber doch ein paar.  Das Ziel der Extension ist allerdings, alles bzw. soviel wie [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Gestern habe ich eine weitere Extension namens &#8220;<strong>socials</strong>&#8221; im TER veröffentlicht. Diese soll als Sammeltopf für alle Belange im Socials-Sektor dienen.</p>
<p><span id="more-6546"></span>Ich gebe zu, ich habe nicht jede Extension des TER ausprobiert, die Facebook, Twitter &amp; Co in ihrem Namen hat, aber doch ein paar.  Das Ziel der Extension ist allerdings, alles bzw. soviel wie möglich unter einen Hut zu bekommen. Die Extension steckt von den Featuren her noch in den Kinderschuhen, die Planungen sind allerdings schon weiter fortgeschritten.</p>
<p><strong>Aktuelle Features:</strong></p>
<ul>
<li>Share Buttons für Facebook, Twitter, Google+ auf Basis von Extbase  &amp; Fluid.</li>
<li>Integration der 2click-Variante von heise.de</li>
<li>Gut dokumentierte ViewHelper, die sich auch problemlos in andere Extensions integrieren lassen.</li>
</ul>
<div><strong>Geplante Features:</strong></div>
<div>
<ul>
<li>weitere Buttons wie Addthis</li>
<li>verbesserte Konfigurationsmöglichkeiten der ViewHelper über TypoScript</li>
<li>Integration der Twitter-API zum Sharen von Content via Backend</li>
<li>Integration der Facebook-API zum Sharen von Content via Backend</li>
<li>Integration von anderen Social-API-Funktionen wie das Einbinden von Fotoalben von FB</li>
</ul>
<div>Link zur Extension: <a href="http://typo3.org/extensions/repository/view/socials/current/">http://typo3.org/extensions/repository/view/socials/current/</a></div>
<div>Gerne werden weitere Wünsche entgegengenommen, sei es über die Kommentarfunktion hier oder über <a title="EXT:socials auf forge" href="http://forge.typo3.org/projects/extension-socials/issues" target="_blank">Forge</a>.</div>
</div>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/extension-socials-veroffentlicht/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Extension &#8220;news&#8221; im TER veröffentlicht</title>
		<link>http://typo3blogger.de/extension-news-veroffentlicht/</link>
		<comments>http://typo3blogger.de/extension-news-veroffentlicht/#comments</comments>
		<pubDate>Fri, 09 Sep 2011 07:50:15 +0000</pubDate>
		<dc:creator>Georg Ringer</dc:creator>
				<category><![CDATA[ExtBase/Fluid]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[myExt]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[TYPO3]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=6541</guid>
		<description><![CDATA[Vor wenigen Minuten habe ich mein aktuell größtes Projekt ins TER geladen, die Extension &#8220;news&#8221;, ehemalig als &#8220;news2&#8243; bekannt. Die Extension &#8220;news&#8221; basiert auf Extbase &#38; Fluid und ist für mich der Nachfolger von tt_ news, ist von dieser aber komplett unabhängig. Die wichtigsten Links: Forge: http://forge.typo3.org/projects/extension-news/issues Git: http://git.typo3.org/TYPO3v4/Extensions/news.git Die Features Basierend auf Extbase &#38; Fluid Minimierung [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Vor wenigen Minuten habe ich mein aktuell größtes Projekt ins TER geladen, die Extension &#8220;news&#8221;, ehemalig als &#8220;news2&#8243; bekannt.</p>
<p><span id="more-6541"></span>Die Extension &#8220;news&#8221; basiert auf Extbase &amp; Fluid und ist für mich der Nachfolger von tt_ news, ist von dieser aber komplett unabhängig. Die wichtigsten Links:</p>
<ul>
<li>Forge: <a href="http://forge.typo3.org/projects/extension-news/issues">http://forge.typo3.org/projects/extension-news/issues</a></li>
<li>Git: <a href="http://git.typo3.org/TYPO3v4/Extensions/news.git">http://git.typo3.org/TYPO3v4/Extensions/news.git</a></li>
</ul>
<div><strong>Die Features</strong></div>
<div>
<ul>
<li>Basierend auf Extbase &amp; Fluid</li>
<li>Minimierung auf das wesentliche: Es gibt kein List/Latest 1-10 sondern nur 1 Listenansicht</li>
<li>Medienelemente via Relation</li>
<li>Medienelemente default mit Videos &amp; HTML möglich, DAM bereits vorgesehen (noch ein Todo fürs Frontend)</li>
<li>Neuen Features wie der TCA-Tree</li>
<li>Social-Buttons für Facebook, Twitter, Google+ usw schon vorgesehen</li>
<li>&#8230;</li>
</ul>
<div>Die Extension wird schon von einigen Agenturen produktiv eingesetzt, ist also in der Praxis erprobt.</div>
<div>Ich freue mich auf Feature- und Bugreports, sonstige Tests und Meinungen</div>
</div>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/extension-news-veroffentlicht/feed/</wfw:commentRss>
		<slash:comments>47</slash:comments>
		</item>
		<item>
		<title>So baut man Google Sitemaps heute?!</title>
		<link>http://typo3blogger.de/so-baut-man-google-sitemaps-heute/</link>
		<comments>http://typo3blogger.de/so-baut-man-google-sitemaps-heute/#comments</comments>
		<pubDate>Wed, 07 Sep 2011 22:06:30 +0000</pubDate>
		<dc:creator>Tim Lochmüller</dc:creator>
				<category><![CDATA[ExtBase/Fluid]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[myExt]]></category>
		<category><![CDATA[TYPO3]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=6503</guid>
		<description><![CDATA[Lange Zeit habe ich mich über die Google Sitemap Extensions welche es im TER gibt aufgeregt. Teilweise sind diese sehr veraltetet und es sind keine klaren Programmierkonzepte zu erkennen. Zudem lassen sich die Erweiterungen schlecht ergänzen um eigene Extensions/Tabellen. Aus diesen Gründen habe ich vor kurzem mit der &#8220;Google Services&#8221; Extension begonnen (TER). Der erste [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Lange Zeit habe ich mich über die Google Sitemap Extensions welche es im <a href="http://typo3.org/extensions/repository/?tx_terfe_pi1%5Bview%5D=search&#038;no_cache=1&#038;tx_terfe_pi1%5Bsword%5D=Google+Sitemap">TER</a> gibt aufgeregt. Teilweise sind diese sehr veraltetet und es sind keine klaren Programmierkonzepte zu erkennen. Zudem lassen sich die Erweiterungen schlecht ergänzen um eigene Extensions/Tabellen.</p>
<p>Aus diesen Gründen habe ich vor kurzem mit der &#8220;Google Services&#8221; Extension begonnen (<a href="http://typo3.org/extensions/repository/view/google_services/current/">TER</a>). Der erste Service ist eine saubere und erweiterbare Sitemap Integration, welche ich euch vorstellen will. Zudem Suche ich weitere Möglichkeiten und Ideen für die Google Service Erweiterung. Doch wie wird eine Sitemap erstellt?<span id="more-6503"></span></p>
<h2>Extension Integration</h2>
<p>Nach der Installation sollte das Static Template der Extension integriert werden. Es wird eine neue Seite angelegt (es wird keine eID-Funktionalität für die Google Sitemap benutzt) und das Sitemap Plugin auf der Seite platziert. Es wird der passende Provider ausgewählt und die Daten-Quelle bestimmt. Nach einem &#8220;Speichern und Anschauen&#8221;, kann die generierte Erweiterung eingesehen werden. Die Extension baut dabei vollständig auf ExtBase / Fluid auf und versucht das Problem der Sitemap Generierung so weit wie möglich zu abstrahieren.</p>
<h2>Eigene Sitemap Erstellen</h2>
<p>Hierbei wird es interessant. Weder Hooks noch XClass sollte hier eine Rolle spielen. Stattdessen habe ich an eine aktive Registrierung ähnlich des Scheduler gedacht. Die Erweiterbarkeit der Sitemap liegt in dem SitemapProvider Service. Der SitemapProvider lässt sich aus jeder Extension befüllen und um weitere Provider ergänzen. Hier ein Beispiel:</p>
<p>Anpassungen an eurer ext_localconf.php:</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>t3lib_extMgm<span style="color: #339933;">::</span><span style="color: #004000;">isLoaded</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'google_services'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
<span style="color: #b1b100;">require_once</span><span style="color: #009900;">&#40;</span>t3lib_extMgm<span style="color: #339933;">::</span><span style="color: #004000;">extPath</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'google_services'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'Classes/Service/SitemapProvider.php'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
Tx_GoogleServices_Service_SitemapProvider<span style="color: #339933;">::</span><span style="color: #004000;">addProvider</span><span style="color: #009900;">&#40;</span>t3lib_extMgm<span style="color: #339933;">::</span><span style="color: #004000;">extPath</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'yourkey'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'Classes/Service/SitemapProvider/ModelName.php'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'Tx_Yourkey_Service_SitemapProvider_ModelName'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Eine neue Klasse z.B. Classes/Service/SitemapProvider/ModelName.php</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">class</span> Tx_Yourkey_Service_SitemapProvider_ModelName implements Tx_GoogleServices_Service_SitemapProvider_SitemapProviderInterface <span style="color: #009900;">&#123;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> getRecords<span style="color: #009900;">&#40;</span><span style="color: #000088;">$startPage</span><span style="color: #339933;">,</span> <span style="color: #000088;">$basePages</span><span style="color: #339933;">,</span> Tx_GoogleServices_Controller_SitemapController <span style="color: #000088;">$obj</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #000088;">$nodes</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>
&nbsp;
        <span style="color: #666666; font-style: italic;">// Build up a $nodes Array of Tx_GoogleServices_Domain_Model_SitemapNode Objects</span>
        <span style="color: #666666; font-style: italic;">// Use $obj-&gt;getUriBuilder() to build valid FE URLs (incl. RealURL)</span>
&nbsp;
        <span style="color: #b1b100;">return</span> <span style="color: #000088;">$nodes</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Ist die Klasse und der SitemapProvider passend bestückt, dann könnt Ihr den Provider nun mit in dem Plugin auswählen.</p>
<p>Was haltet ihr von diesem Ansatz? Video Sitemaps, News Sitemaps, Geo Sitemaps und Image Sitemaps sind in Arbeit. Weitere Idee und Ergänzungen sowohl in der Struktur als auch in der Funktionalität sind herzlich willkommen. Einfach kommentieren! Achtung: Die Extension befindet sich noch im Beta Status. Ihr findet die Extension bereits im <a href="http://typo3.org/extensions/repository/view/google_services/current/">TER</a>.</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/so-baut-man-google-sitemaps-heute/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Extension insertrecordfix &#8211; Türchen 23</title>
		<link>http://typo3blogger.de/extension-insertrecordfix-turchen-23/</link>
		<comments>http://typo3blogger.de/extension-insertrecordfix-turchen-23/#comments</comments>
		<pubDate>Thu, 23 Dec 2010 07:00:46 +0000</pubDate>
		<dc:creator>Georg Ringer</dc:creator>
				<category><![CDATA[Extension]]></category>
		<category><![CDATA[myExt]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=5358</guid>
		<description><![CDATA[Mit diesem Beitrag wird eine weitere Extension vorgestellt, die in üblichen TYPO3-Projekten durchaus nützlich sein kann, speziell bei mehrsprachigen Websites. Das Contentelement &#8220;Datensatz einfügen&#8221; (im englischen &#8220;Insert records&#8221;) dürfe bekannt sein. Dennoch eine kurze Erklärung. Mit diesem Element ist es möglich, bereits bestehende Contentelemente einzufügen indem man diese einfach verlinkt. Somit kann man an unterschiedlichen [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Mit diesem Beitrag wird eine weitere Extension vorgestellt, die in üblichen TYPO3-Projekten durchaus nützlich sein kann, speziell bei mehrsprachigen Websites.</p>
<p><span id="more-5358"></span>Das Contentelement &#8220;Datensatz einfügen&#8221; (im englischen &#8220;Insert records&#8221;) dürfe bekannt sein. Dennoch eine kurze Erklärung. Mit diesem Element ist es möglich, bereits bestehende Contentelemente einzufügen indem man diese einfach verlinkt. Somit kann man an unterschiedlichen Stellen das gleiche Contentelement einfügen und muss es später auch nur an einer Stelle aktualisieren.</p>
<p><strong>Nachteil des Elements</strong></p>
<p>Wird beispielsweise das Element mit der ID 123 ausgewählt, so wird immer dieses referenziert. Wird das Element &#8220;Datensatz einfügen&#8221; übersetzt indem der Button &#8220;Copy default content elements&#8221; benützt wird, so wird auch auf der übersetzten Sprache immer noch das Element mit der ID 123 angezeigt, auch wenn dieses selbst eine Übersetzung aufweisen mag. Der Redakteur muss daher in der Übersetzung jeweils die Referenzierung selbst auf das andere Element herstellen.</p>
<p><strong>Funktionalität von insertrecordfix</strong></p>
<p>Die hier vorgestellte Extension behebt den beschriebenen Nachteil und lässt, falls eine Übersetzung vorhanden ist, diese ausgeben. Mittels Typoscript</p>
<pre>tt_content.shortcut.20.0.source.override.cObject</pre>
<p>wird eine USERfunc aufgerufen, die nach den korrekten Übersetzungen sucht.</p>
<p><strong>Nachteil von insertrecordfix</strong></p>
<p>Der Nachteil der Extension ist, dass es nun nicht mehr möglich ist, auf einer übersetzten Seite mittels &#8220;Datensatz einfügen&#8221; ein Element in der Ausgangssprache darzustellen auch wenn von diesem selbst eine Übersetzung vorliegt. Dieser Nachteil ließe sich über viele Wege beheben, kommt im Einzelfall aber auf das konkrete Projekt an. Beispiele wären über eine seperate TS-if-Konstruktion oder über eine alternative Userfunc.</p>
<p>Die Extension wurde von CYBERHOUSE/mir erstellt und kann man <a href="http://www.ringer.it/downloads/T3X_insertrecordfix.t3x" target="_blank">hier</a> beziehen.</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/extension-insertrecordfix-turchen-23/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Extension languagetoggle &#8211; Türchen 19</title>
		<link>http://typo3blogger.de/extension-languagetoggle-turchen-19/</link>
		<comments>http://typo3blogger.de/extension-languagetoggle-turchen-19/#comments</comments>
		<pubDate>Sun, 19 Dec 2010 07:00:06 +0000</pubDate>
		<dc:creator>Georg Ringer</dc:creator>
				<category><![CDATA[Extension]]></category>
		<category><![CDATA[myExt]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[TYPO3]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=5238</guid>
		<description><![CDATA[In den folgenden Tagen möchte ich ein paar kleine Extensions vorstellen, die in die Kategorie &#8220;kleine Helferleins&#8221; fallen, von der Zeilenanzahl nicht besonders groß, aber einfach praktisch sind. Gestartet wird mit &#8220;languagetoggle&#8221; &#8211; einer Extension zum Ein-/Ausblenden von Sprachen im Backend. Eine Stärke von TYPO3 ist das gute Handling von mehrsprachigen Seiten. Je mehr Sprachen [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>In den folgenden Tagen möchte ich ein paar kleine Extensions vorstellen, die in die Kategorie &#8220;kleine Helferleins&#8221; fallen, von der Zeilenanzahl nicht besonders groß, aber einfach praktisch sind. Gestartet wird mit &#8220;languagetoggle&#8221; &#8211; einer Extension zum Ein-/Ausblenden von Sprachen im Backend.</p>
<p><span id="more-5238"></span>Eine Stärke von TYPO3 ist das gute Handling von mehrsprachigen Seiten. Je mehr Sprachen im System allerdings vorhanden sind, desto mehr Informationen hat man automatisch im Blickfeld und lenken oftmals von der eigentlichen Tätigkeit im Backend ab. B<a href="http://typo3blogger.de/wp-content/uploads/2010/12/languagetoggle.png"><img class="alignright size-full wp-image-5322" title="languagetoggle" src="http://typo3blogger.de/wp-content/uploads/2010/12/languagetoggle.png" alt="" width="346" height="447" /></a>esonders User mit Adminrechten sind davon betroffen, denn Redakteure kann man problemlos in den Sprachen einschränken.</p>
<p>Die Extension &#8220;languagetoggle&#8221; schafft jedem User die Möglichkeit, gerade nicht benötigte Sprachen über ein eigenes Menü auszublenden. Dieses ist rechts oben (neben den Icons fürs Cache löschen usw.) positioniert. Wird eine Sprache ausgeblendet, so wird diese an folgenden Stellen nicht mehr dargestellt:</p>
<ul>
<li>Seitenansicht: Als Sprache in die man eine Seite übersetzen kann bzw. als Spalte im Übersetzungsmodus</li>
<li>Listenansicht: Bereits in diese Sprache übersetzte Datensätze werden ebenso ausgeblendet wie die Möglichkeit, in diese Sprache zu übersetzen.</li>
</ul>
<p>Die Extension gibt es hier: <a href="http://www.ringer.it/downloads/T3X_languagetoggle.t3x" target="_blank">Download</a></p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/extension-languagetoggle-turchen-19/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>News beim Einloggen ins Backend</title>
		<link>http://typo3blogger.de/news-beim-einloggen-ins-backend/</link>
		<comments>http://typo3blogger.de/news-beim-einloggen-ins-backend/#comments</comments>
		<pubDate>Tue, 12 Jan 2010 14:50:29 +0000</pubDate>
		<dc:creator>Matthias Stübner</dc:creator>
				<category><![CDATA[Extension]]></category>
		<category><![CDATA[myExt]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=3890</guid>
		<description><![CDATA[Weihnachten ist nicht nur zum Schlafen gut, auch zum Durchsehen der Sachen die man das Jahr über liegen gelassen hat. Dabei sind mir auch Notizen zu Extensionen in die Hand gefallen die ich irgendwann mal schreiben wollte. Eine davon wäre dazu da, News zu verwalten die unter der Backend-Loginbox angezeigt werden. Verwalten soll zumind. heissen, [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Weihnachten ist nicht nur zum Schlafen gut, auch zum Durchsehen der Sachen die man das Jahr über liegen gelassen hat. Dabei sind mir auch Notizen zu Extensionen in die Hand gefallen die ich irgendwann mal schreiben wollte.</p>
<p>Eine davon wäre dazu da, News zu verwalten die unter der Backend-Loginbox angezeigt werden. Verwalten soll zumind. heissen, dass ContentElemente ausgegeben werden die in einem oder mehreren Foldern liegen und auch Dinge wie START/STOP, Hidden u.ä. der ContentElemente beachtet werden.</p>
<p>Um nun nicht nur für die eigene Schublade zu schreiben, möchte ich an dieser Stelle dazu aufrufen Ideen/Wünsche (so vorhanden) zu äussern. Auch falls es sowas schon gibt und mir nur nicht bekannt ist, wäre ein Hinweis wunderbar.</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/news-beim-einloggen-ins-backend/feed/</wfw:commentRss>
		<slash:comments>22</slash:comments>
		</item>
		<item>
		<title>Kompatibilitätsmodus für Internet Explorer 8 &#8211; Türchen 16</title>
		<link>http://typo3blogger.de/kompatibilitatsmodus-fur-internet-explorer-8/</link>
		<comments>http://typo3blogger.de/kompatibilitatsmodus-fur-internet-explorer-8/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 01:08:26 +0000</pubDate>
		<dc:creator>Georg Ringer</dc:creator>
				<category><![CDATA[Extension]]></category>
		<category><![CDATA[myExt]]></category>
		<category><![CDATA[TYPO3]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=3495</guid>
		<description><![CDATA[Der heutige Eintrag stellt eine kleine Extension vor, die das Leben des Supports und aller Anwender mit Internet Explorer 8 erleichtern sollte. Das derzeit herrschende Problem ist, dass User mit diesem Browser manchmal aus dem TYPO3-Backend ausgeloggt werden. Der Hintergrund Wenn aufgrund von falsch interpretiertem Code der IE in den Quirks-Modus fällt, ist die aktuelle [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Der heutige Eintrag stellt eine kleine Extension vor, die das Leben des Supports und aller Anwender mit Internet Explorer 8 erleichtern sollte. Das derzeit herrschende Problem ist, dass User mit diesem Browser manchmal aus dem TYPO3-Backend ausgeloggt werden.</p>
<p><span id="more-3495"></span><strong>Der Hintergrund</strong></p>
<p>Wenn aufgrund von falsch interpretiertem Code der IE in den Quirks-Modus fällt, ist die aktuelle Session und damit der Login nicht mehr gültig und der Browser wechselt in den sogenannten Kompatibilitätsmodus.</p>
<p><strong>Die Extension ie8compatmode</strong></p>
<p>Der Kompatibilitätsmodus kann entweder manuell über das Menü des Browsers (Seite &gt; Kompatibilitätsansicht) aktiviert werden oder über einen bestimmten Meta-Tag:</p>
<blockquote><p>&lt;meta http-equiv=&#8221;X-UA-Compatible&#8221; content=&#8221;IE=EmulateIE7&#8243; /&gt;</p></blockquote>
<p>Hier kommt die Extension ie8compatmode ins Spiel, die über XCLASS den Meta-Tag automatisiert setzt. Die Extension funktioniert unter 4.2.x und 4.3.x und natürlich auch unter 4.4-dev.</p>
<p><strong>Das Besondere</strong></p>
<p>Die Extension gibts vorab für alle typo3blogger-Leser <a href="http://www.ringer.it/T3X_ie8compatmode.t3x" target="_blank">ganz exklusiv hier</a>. In wenigen Tagen wird die Extension natürlich auch regulär im TER erscheinen.</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/kompatibilitatsmodus-fur-internet-explorer-8/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>TYPO3 worldmap &#8211; inspiring people to share your location</title>
		<link>http://typo3blogger.de/typo3-worldmap-inspiring-people-to-share-your-location/</link>
		<comments>http://typo3blogger.de/typo3-worldmap-inspiring-people-to-share-your-location/#comments</comments>
		<pubDate>Tue, 30 Jun 2009 05:40:00 +0000</pubDate>
		<dc:creator>Georg Ringer</dc:creator>
				<category><![CDATA[Extension]]></category>
		<category><![CDATA[myExt]]></category>
		<category><![CDATA[TYPO3]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=2320</guid>
		<description><![CDATA[Am 27.6.2009 ist mein Google Maps Mashup gestartet, das den Zweck hat, alle TYPO3-Entwickler, -User und -Fans in einer Karte einzutragen. Mittlerweile sind mehr als 300 Personen eingetragen! Die URL dazu ist: http://www.typo3worldmap.net/ Das Projekt ist für den Start bewusst sehr einfach gehalten und besteht aus 2 Seiten: Der Übersicht und der Seite zur eigenen [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Am 27.6.2009 ist mein Google Maps Mashup gestartet, das den Zweck hat, alle TYPO3-Entwickler, -User und -Fans in einer Karte einzutragen. Mittlerweile sind mehr als 300 Personen eingetragen!</p>
<p>Die URL dazu ist: <a title="TYPO3 Worldmap" href="http://www.typo3worldmap.net/" target="_blank">http://www.typo3worldmap.net/</a></p>
<p><a title="TYPO3 worldmap" href="http://" target="_blank"></a><span id="more-2320"></span>Das Projekt ist für den Start bewusst sehr einfach gehalten und besteht aus 2 Seiten: Der Übersicht und der Seite zur eigenen Registrierung. Verwendet werden für erstere die Extension rggooglemap (aktuelle Version siehe <a title="rggooglemap auf forge" href="http://forge.typo3.org/projects/show/extension-rggooglemap" target="_blank">forge</a>) und rggooglemapfe für die Ausgabe (noch unveröffentlicht). Mögliche Features können bei gutem Projektverlauf hinzukommen.</p>
<p><strong>So kannst du mitmachen!</strong></p>
<p>Für einen Eintrag musst du einfach auf <a title="Trag dich ein!" href="http://www.typo3worldmap.net/registrieren.html" target="_blank">folgender Seite</a> deine Position suchen indem du mit der Maus auf die richtige Stelle klickst und das Formular ausfüllen. Du erhältst anschließend ein Mail mit einem Schlüssel, der dir erlaubt, deinen Eintrag später wieder zu editieren.</p>
<p><strong>Was bringts?</strong></p>
<p>Zeig allen wie groß die TYPO3-Community wirklich ist und wo du dich befindest. Ich finde es ganz interessant, nicht nur die Namen einzelner zu lesen, sondern diese auch geographisch zuordnen zu können.</p>
<p><strong>Was noch?</strong></p>
<p>Schreib doch all deinen TYPo3-Freunden und Freundinnen, sofern sie von der Seite noch nichts wissen &#8211; spread the word!</p>
<p>Vielen Dank fürs Mitmachen und ganz nach dem Motto von TYPo3: inspiring people to share your location</p>
<p>PS: <a title="TYPO3 Worldmap" href="http://www.typo3worldmap.net/" target="_blank">http://www.typo3worldmap.net/</a></p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/typo3-worldmap-inspiring-people-to-share-your-location/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Extension canonical zur Vermeidung von Duplicate Content</title>
		<link>http://typo3blogger.de/extension-canonical-zur-vermeidung-von-duplicate-content/</link>
		<comments>http://typo3blogger.de/extension-canonical-zur-vermeidung-von-duplicate-content/#comments</comments>
		<pubDate>Tue, 21 Apr 2009 20:15:37 +0000</pubDate>
		<dc:creator>Georg Ringer</dc:creator>
				<category><![CDATA[Extension]]></category>
		<category><![CDATA[myExt]]></category>
		<category><![CDATA[SEO]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=1885</guid>
		<description><![CDATA[Gerade eben hab ich eine weitere kleine Extension für meine Firma CYBERhouse fertiggestellt, die den relativ neuen canonical Tag in TYPO3 integriert. Dieser dient zur Kennzeichnung von doppeltem Inhalt (duplicate content), der ansonsten zu einem niedrigerem Ranking bei den Suchmaschinen führt.Grundlage Duplicate Content kann aufgrund vieler Möglichkeiten entstehen und TYPO3 bietet hierfür eine hervorragende Grundlage. [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Gerade eben hab ich eine weitere kleine Extension für meine Firma <a title="TYPO3 Erweiterung" href="http://www.cyberhouse.at/typo3-cms/" target="_blank">CYBERhouse</a> fertiggestellt, die den relativ neuen canonical Tag in TYPO3 integriert. Dieser dient zur Kennzeichnung von doppeltem Inhalt (duplicate content), der ansonsten zu einem niedrigerem Ranking bei den Suchmaschinen führt.<span id="more-1885"></span><strong>Grundlage</strong></p>
<p>Duplicate Content kann aufgrund vieler Möglichkeiten entstehen und TYPO3 bietet hierfür eine hervorragende Grundlage. Folgende Funktionen können für Duplicate Content verwendet werden:</p>
<ul>
<li>MountPoints: Diese werden verwendet, um komplette Seiten(-bäume) an anderen Stellen wieder verwenden zu können.</li>
<li>&#8220;Zeige Inhalt dieser Seite&#8221;: Die Option in den Seiteneigenschaften erzielt das gleiche wie MountPoints, allerdings auf eine Seite beschränkt.</li>
<li>tt_news und backPid: Der Parameter backPid führt dazu, dass die Detailansicht unter mehreren Links erreichbar ist.</li>
</ul>
<p>Die Extension <strong>canonical</strong> kann auf alle diese Varianten reagieren und erstellt im Header der Seite den folgenden Tag</p>
<blockquote><p>&lt;link rel=&#8221;canonical&#8221; href=&#8221;LINK zur Original-Seite&#8221; /&gt;</p></blockquote>
<p>Was die Extension nicht kann, ist auf doppelten Content zu reagieren, der vom Redakteur mit kopiertem Text verursacht wurde oder der mittels cObj CONTENT / RECORDS erstellt wurde.</p>
<p>Auf deine Meinungen bin ich wie immer gespannt</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/extension-canonical-zur-vermeidung-von-duplicate-content/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Generische Marker in tt_news</title>
		<link>http://typo3blogger.de/generische-marker-in-tt_news/</link>
		<comments>http://typo3blogger.de/generische-marker-in-tt_news/#comments</comments>
		<pubDate>Mon, 12 Jan 2009 22:17:39 +0000</pubDate>
		<dc:creator>Georg Ringer</dc:creator>
				<category><![CDATA[myExt]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[TypoScript]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=1152</guid>
		<description><![CDATA[Ich möchte auf diese Weise meine neuste Extension vorstellen: ttnewsgenericmarkers. Hast du schon mal ein Feld in tt_news mehr gebraucht oder wurde eine bestimmte Funktionalität in tt_news benötigt, die du mit TS in wenigen Minuten locker hinbekommen hättest, und nun darfst du dich mit Hooks usw. beschäftigen? Es geht auch einfacher! Die Extension ist dazu [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Ich möchte auf diese Weise meine neuste Extension vorstellen:  <strong>ttnewsgenericmarkers</strong>.<br />
Hast du schon mal ein Feld in tt_news mehr gebraucht oder wurde eine bestimmte Funktionalität in tt_news benötigt, die du mit TS in wenigen Minuten locker hinbekommen hättest, und nun darfst du dich mit Hooks usw. beschäftigen?</p>
<p>Es geht auch einfacher!</p>
<p><span id="more-1152"></span>Die Extension ist dazu da, TS-Konstrukte innerhalb von tt_news auszugeben, daher braucht es logischerweise Admin-Rechte. Folgende Beispiele sollen die Extension und deren Möglichkeiten erklären.</p>
<p><strong>Beispiel 1 &#8211; Einfache Ausgabe eines Links</strong></p>
<p>Erstelle im tt_news-Template den Marker ###GENERIC_LINK### und füge folgendes TS ein:</p>
<blockquote>
<pre>plugin.tt_news.genericmarkers {
	link = TEXT
	link {
		value = Important link
		typolink.parameter = www.typo3.org
	}
}</pre>
</blockquote>
<p>Ergebnis ist ein Link zu <a href="http://www.typo3.org">www.typo3.org</a></p>
<p><strong>Beispiel 2 &#8211; Ausgabe des Usernamens</strong></p>
<p>Erstelle den Marker ###GENERIC_USERNAME### und verwende folgendes TS:</p>
<blockquote>
<pre>plugin.tt_news.genericmarkers {
	username = TEXT
	username.data = TSFE:fe_users|username
}</pre>
</blockquote>
<p><strong>Beispiel 3 &#8211; Unterschiedliche Ausgabe pro View</strong></p>
<p>Erstelle den Marker ###GENERIC_TEST### und folgendes TS:</p>
<blockquote>
<pre>plugin.tt_news.genericmarkers {
	SINGLE {
		test = TEXT
		test.value = abc
	}

	test = TEXT
	test.value = def
}</pre>
</blockquote>
<p>In der Single-View ist das Ergebnis &#8220;abc&#8221; und in den anderen &#8220;def&#8221;.</p>
<p><strong>Beispiel 4 &#8211; Zugriff auf Daten von tt_news</strong></p>
<p>Oft benötigt man Zugriff auf die Daten vom tt-news-Artikel, zB um einen Link zu generieren oder eine bestimmte Abfrage durchführen zu können. Folgendes Beispiel zeigt wie es geht:</p>
<blockquote>
<pre>plugin.tt_news.genericmarkers {
	data = title,uid

	title2 = TEXT
	title2 {
		field = generic_title
		wrap = Title again: |
	}
}</pre>
</blockquote>
<p>Mit generic_xxxx (xxxx steht für die gesetzten Felder in data = ) kann man auf alles gewünschte zugreifen.</p>
<p>Beispiel 5 &#8211; Erstellung eines Tip-A-Friend-Links</p>
<p>Das letzte Beispiel erstellt rein über TS einen tip-a-friend-Link für den Marker ###GENERIC_TIP###</p>
<pre>plugin.tt_news.genericmarkers {
	tip = TEXT
	tip {
		value = Send this page to a friend
		typolink.parameter = 10778
		typolink.additionalParams.cObject = COA
		typolink.additionalParams.cObject {
     			# rawUrlEncoded link
			10 = COA
			10 {
				10 = TEXT
				10.data = TSFE:baseUrl
				# including all parameters from the query string.
				20 = TEXT
				20.typolink.parameter.data = page:uid
				20.typolink.addQueryString = 1
				20.typolink.addQueryString.exclude = id,tipUrl
				20.typolink.returnLast = url

				# rawurlencode to use url as one parameter
				stdWrap.rawUrlEncode = 1
			}
			wrap = &amp;tipUrl=|
		}
		wrap = =&gt; |
	}
}</pre>
<p style="text-align: center;">Viel Spaß mit der Extension und ich freue mich auf Feedback</p>
<p style="margin-bottom: 0cm;">
Note: There is a poll embedded within this post, please visit the site to participate in this post's poll.
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/generische-marker-in-tt_news/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
		<item>
		<title>Sichere Extension mit wt_doorman</title>
		<link>http://typo3blogger.de/sichere-extension-mit-wt_doorman/</link>
		<comments>http://typo3blogger.de/sichere-extension-mit-wt_doorman/#comments</comments>
		<pubDate>Tue, 06 Jan 2009 14:57:59 +0000</pubDate>
		<dc:creator>Alex Kellner</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[myExt]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[TYPO3]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/?p=1099</guid>
		<description><![CDATA[Wie die Security Bug Schnitzeljagt Ende letzten Jahres gezeigt hat, gibt es wohl noch einige Extensions im TER mit mehr oder weniger großen Sicherheitsproblemen. Das häufigste Problem sind vermutlich ungefilterte User Eingaben (GET oder POST Parameter). Die Extension wt_doorman hilft beim Bereinigen der empfangenen piVars. Im Prinzip wird nach Einbinden der Doorman Extension der Klasse [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Wie die <a href="/security-bug-schnitzeljagd-finish/">Security Bug Schnitzeljagt</a> Ende letzten Jahres gezeigt hat, gibt es wohl noch einige Extensions im TER mit mehr oder weniger großen Sicherheitsproblemen.<br />
Das häufigste Problem sind vermutlich ungefilterte User Eingaben (GET oder POST Parameter).<br />
Die Extension wt_doorman hilft beim Bereinigen der empfangenen piVars.<br />
<span id="more-1099"></span><br />
Im Prinzip wird nach Einbinden der Doorman Extension der Klasse das komplette piVars Array übergeben und gefiltert empfangen. Hierbei kann man einstellen welcher Parameter wie gefiltert werden soll.<br />
Diese Filtermöglichkeiten gibt es aktuell bei wt_doorman:</p>
<ul>
<li>Wert in Zahl wandeln (Integer)</li>
<li>Wert in Text wandeln</li>
<li>Wert in Zahlen und Zeichen wandeln</li>
<li>Wert in Zahlen und Zeichen wandeln (mit eigener Definition)</li>
<li>Werte vorgeben</li>
</ul>
<p>In der <a href="http://typo3.org/documentation/document-library/extension-manuals/wt_doorman/1.0.0/view/">Doorman Dokumentation</a> gibt es ein ausführliches Beispiel, wie man wt_doorman zusammen mit seiner eigenen Extension einbinden kann.</p>
<p>Grüße im neuen Jahr, Alex</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/sichere-extension-mit-wt_doorman/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Dashboard Extension &#8211; MyExt</title>
		<link>http://typo3blogger.de/dashboard-extension-myext/</link>
		<comments>http://typo3blogger.de/dashboard-extension-myext/#comments</comments>
		<pubDate>Sun, 09 Mar 2008 00:02:42 +0000</pubDate>
		<dc:creator>Tim Lochmüller</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[myExt]]></category>
		<category><![CDATA[Releases]]></category>
		<category><![CDATA[TYPO3]]></category>
		<category><![CDATA[TYPO3blogger]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/dashboard-extension-myext/</guid>
		<description><![CDATA[Ich habe grade die erste Version meiner neuen Extension myDashboard publiziert. Mal sehen ob ich dazu morgen ein kleines Brainstorming moderieren werde oder ob ich erst einmal Feedback aus der Community abwarte. Und so sieht es derzeit aus: Der Theme ist nicht auf das default Theme von TYPO3 angepasst, aber es werden derzeit schon alle [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Ich habe grade die erste Version meiner neuen Extension myDashboard publiziert. Mal sehen ob ich dazu morgen ein kleines Brainstorming moderieren werde oder ob ich erst einmal Feedback aus der Community abwarte. Und so sieht es derzeit aus:</p>
<p>
<a href="http://typo3blogger.de/wp-content/uploads/2008/03/bild-2.jpg" class="thickbox"><img src="http://typo3blogger.de/wp-content/uploads/2008/03/bild-2-tm.jpg" width="167" height="100" alt="Bild 2.png" /></a></p>
<p>Der Theme ist nicht auf das default Theme von TYPO3 angepasst, aber es werden derzeit schon alle Widgets angezeigt die im System sind. Benutzer bezogene Daten werden noch nicht gespeichert. Ich werde die Extension in den nächsten Tagen weiterbauen, damit es zu der SnowboardTour eine Stable gibt.</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/dashboard-extension-myext/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>TYPO3 Stammtisch &#8211; Resumé</title>
		<link>http://typo3blogger.de/typo3-stammtisch-resume/</link>
		<comments>http://typo3blogger.de/typo3-stammtisch-resume/#comments</comments>
		<pubDate>Fri, 22 Feb 2008 19:28:56 +0000</pubDate>
		<dc:creator>Tim Lochmüller</dc:creator>
				<category><![CDATA[Dev]]></category>
		<category><![CDATA[Extension]]></category>
		<category><![CDATA[myExt]]></category>
		<category><![CDATA[Releases]]></category>
		<category><![CDATA[Stammtisch & TUG]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[TYPO3]]></category>

		<guid isPermaLink="false">http://typo3blogger.de/typo3-stammtisch-resume/</guid>
		<description><![CDATA[Am Mittwoch war seit langem wieder TYPO3 Stammtisch in Bielefeld. Es war eine nette kleine Runde. Ich sehe das wie Tobi: Wir werden so etwas auf jeden Fall wiederholen. Dann auch evtl. mit Vorträgen (Beamer? Location?!?!). Ich habe mich dann hinterher zu einer kleinen Live Demo in &#8220;Extension Entwicklung&#8221; hinreißen lassen und habe in 30 [...]<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></description>
			<content:encoded><![CDATA[<p>Am Mittwoch war seit langem wieder TYPO3 Stammtisch in Bielefeld. Es war eine nette kleine Runde. Ich sehe das wie <a href="http://tobi.weinhorst.de/2008/02/22/typo3-stammtisch-gelungen/" target="_blank">Tobi</a>: Wir werden so etwas auf jeden Fall wiederholen. Dann auch evtl. mit Vorträgen (Beamer? Location?!?!).</p>
<p>Ich habe mich dann hinterher zu einer kleinen Live Demo in &#8220;Extension Entwicklung&#8221; hinreißen lassen und habe in <strike>30</strike> (geplant) knapp über ner Stunde eine Extension geschrieben. Nach der Problem Definition ist dann diese Lösung entstanden&#8230;<span id="more-391"></span></p>
<p>Problem: Wenn man eine TYPO3 Webseite mit mehreren Sprachen hat und eine neue Sprache hinzu kommt, dann kann es passieren das der Redakteure nicht der Standard Sprache mächtig ist. Somit ist der &#8220;Standard Inhalte kopieren&#8221;-Button im Page Module (Aber auch TV) sinnlos.</p>
<p>Lösung: In den Backend Usern kann man nun die Reihenfolge der Sprachen festlegen in der TYPO3 nach Übersetzungen schaut. Wenn es schon in einer anderen Sprache Übersetzungen gibt, die mit dem Standard Datensatz in Relation stehen, dann nimmt die Extension nun diesen Datensatz als Basis für die Kopie.</p>
<p>Die Extension heißt <a href="http://typo3.org/extensions/repository/?tx_terfe_pi1%5Bview%5D=search&amp;no_cache=1&amp;tx_terfe_pi1%5Bsword%5D=fl_langtranslate" target="_blank">fl_langtranslate (Version 0.0.1)</a> und sollte in wenigen Minuten im TER erscheinen.</p>
<p>------------------------------------------------------<br />Dies ist ein Post vom <a href="http://typo3blogger.de/">TYPO3 Blog</a> typo3blogger.de!</p>
]]></content:encoded>
			<wfw:commentRss>http://typo3blogger.de/typo3-stammtisch-resume/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

