| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- EN-Revision: 24249 -->
- <!-- Reviewed: no -->
- <sect1 id="zend.service.technorati">
- <title>Zend_Service_Technorati</title>
- <sect2 id="zend.service.technorati.introduction">
- <title>Einführung</title>
- <para>
- <classname>Zend_Service_Technorati</classname> bietet ein einfaches, intuitives und
- objekt-orientiertes Interface für die Verwendung der Technorati <acronym>API</acronym>.
- Es bietet Zugriff zu allen vorhandenen <ulink
- url="http://technorati.com/developers/api/">Technorati <acronym>API</acronym>
- Abfragen</ulink> und gibt die originalen <acronym>XML</acronym> Antworten als
- freundliches <acronym>PHP</acronym> Objekt zurück.
- </para>
- <para>
- <ulink url="http://technorati.com/">Technorati</ulink> ist eine der populärsten Blog
- Suchmaschinen. Das <acronym>API</acronym> Interface ermöglicht es Entwicklern
- Informationen über einen spezifischen Blog zu erhalten, Blogs zu suchen die einem
- einzelnen Tag oder einer Phrase entsprechen und Informationen über einen spezifischen
- Author (Blogger) erhalten. Für eine komplette Liste von vorhandenen Abfragen kann in die
- <ulink url="http://technorati.com/developers/api/">Technorati <acronym>API</acronym>
- Dokumentation</ulink> oder die <link
- linkend="zend.service.technorati.queries">vorhandenen Technorati Abfragen</link>
- Sektion dieses Dokuments gesehen werden.
- </para>
- </sect2>
- <sect2 id="zend.service.technorati.getting-started">
- <title>Anfangen</title>
- <para>
- Technorati benötigt einen gültigen <acronym>API</acronym> Schlüssel zur Verwendung. Um
- einen eigenen <acronym>API</acronym> Schlüssel zu erhalten muss <ulink
- url="http://technorati.com/signup/">ein neuer Technorati Account erstellt
- werden</ulink>, und anschließend die <ulink
- url="http://technorati.com/developers/apikey.html">API Schlüssel Sektion</ulink>
- besucht werden.
- </para>
- <note>
- <title>API Schlüssel Beschränkungen</title>
- <para>
- Es können bis zu 500 Technirati <acronym>API</acronym> Aufrufe pro Tag durchgeführt
- werden ohne das Kosten anfallen. Andere Limitationen der Verwendung können vorhanden
- sein, abhängig von der aktuellen Technorati <acronym>API</acronym> Lizenz.
- </para>
- </note>
- <para>
- Sobald man einen gültigen <acronym>API</acronym> Schlüssel hat, kann man beginnen
- <classname>Zend_Service_Technorati</classname> zu verwenden.
- </para>
- </sect2>
- <sect2 id="zend.service.technorati.making-first-query">
- <title>Die erste Abfrage durchführen</title>
- <para>
- Um eine Abfrage durchzuführen, benötigt man zuerst eine
- <classname>Zend_Service_Technorati</classname> Instanz mit einem gültigen
- <acronym>API</acronym> Schlüssel. Dann kann eine der vorhandenen Abfragemethoden
- ausgewählt werden, und durch Angabe der benötigen Argumente aufgerufen werden.
- </para>
- <example id="zend.service.technorati.making-first-query.example-1">
- <title>Die erste Abfragen senden</title>
- <programlisting language="php"><![CDATA[
- // ein neues Zend_Service_Technorati mit einem gültigen API_KEY erstellen
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- // Technorati nach dem Schlüsselwort PHP durchsuchen
- $resultSet = $technorati->search('PHP');
- ]]></programlisting>
- </example>
- <para>
- Jede Abfragemethode akzeptiert ein Array von optionalen Parametern die verwendet werden
- kann um die Abfrage zu verfeinern.
- </para>
- <example id="zend.service.technorati.making-first-query.example-2">
- <title>Verfeinern der Abfrage</title>
- <programlisting language="php"><![CDATA[
- // ein neues Zend_Service_Technorati mit einem gültigen API_KEY erstellen
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- // Die Abfrage nach Ergebnissen mit etwas Authority filtern
- // (Ergebnisse von Blogs mit einer Handvoll Links)
- $options = array('authority' => 'a4');
- // Technorati nach dem Schlüsselwort PHP durchsuchen
- $resultSet = $technorati->search('PHP', $options);
- ]]></programlisting>
- </example>
- <para>
- Eine <classname>Zend_Service_Technorati</classname> Instanz ist kein einmal zu
- verwendendes Objekt. Deswegen muß keine neue Instanz für jede Abfrage erstellt werden;
- es kann einfach das aktuelle <classname>Zend_Service_Technorati</classname> Objekt
- solange verwendet werden wie es benötigt wird.
- </para>
- <example id="zend.service.technorati.making-first-query.example-3">
- <title>
- Mehrfache Abfragen mit der gleichen Zend_Service_Technorati Instanz senden
- </title>
- <programlisting language="php"><![CDATA[
- // ein neues Zend_Service_Technorati mit einem gültigen API_KEY erstellen
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- // Technorati nach dem Schlüsselwort PHP durchsuchen
- $search = $technorati->search('PHP');
- // Top Tags die von Technorati indiziert wurden erhalten
- $topTags = $technorati->topTags();
- ]]></programlisting>
- </example>
- </sect2>
- <sect2 id="zend.service.technorati.consuming-results">
- <title>Ergebnisse verarbeiten</title>
- <para>
- Es kann einer von zwei Typen von Ergebnisobjekten als Antwort auf eine Abfrage empfangen
- werden.
- </para>
- <para>
- Die erste Gruppe wird durch <classname>Zend_Service_Technorati_*ResultSet</classname>
- Objekte repräsentiert. Ein Ergebnisset Objekt ist grundsätzlich eine Kollektion von
- Ergebnisobjekten. Es erweitert die grundsätzliche
- <classname>Zend_Service_Technorati_ResultSet</classname> Klasse und implementiert das
- <acronym>PHP</acronym> Interface <classname>SeekableIterator</classname>. Der beste Weg
- um ein Ergebnisset Objekt zu verarbeiten ist dieses mit einem <acronym>PHP</acronym>
- <methodname>foreach()</methodname> Statement zu durchlaufen.
- </para>
- <example id="zend.service.technorati.consuming-results.example-1">
- <title>Ein Ergebnisset Objekt verarbeiten</title>
- <programlisting language="php"><![CDATA[
- // ein neues Zend_Service_Technorati mit einem gültigen API_KEY erstellen
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- // Technorati nach dem PHP Schlüsselwort durchsuchen
- // $resultSet ist eine Instanz von Zend_Service_Technorati_SearchResultSet
- $resultSet = $technorati->search('PHP');
- // Alle Ergebnisobjekte durchlaufen
- foreach ($resultSet as $result) {
- // $result ist eine Instanz von Zend_Service_Technorati_SearchResult
- }
- ]]></programlisting>
- </example>
- <para>
- Weil <classname>Zend_Service_Technorati_ResultSet</classname> das
- <classname>SeekableIterator</classname> Interface implementiert, kann ein spezifisches
- Ergebnisobjekt gesucht werden indem dessen Position in der Ergebnissammlung verwendet
- wird.
- </para>
- <example id="zend.service.technorati.consuming-results.example-2">
- <title>Ein spezifisches Ergebnisset Objekt suchen</title>
- <programlisting language="php"><![CDATA[
- // ein neues Zend_Service_Technorati mit einem gültigen API_KEY erstellen
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- // Technorati nach dem PHP Schlüsselwort durchsuchen
- // $resultSet ist eine Instanz von Zend_Service_Technorati_SearchResultSet
- $resultSet = $technorati->search('PHP');
- // $result ist eine Instanz von Zend_Service_Technorati_SearchResult
- $resultSet->seek(1);
- $result = $resultSet->current();
- ]]></programlisting>
- </example>
- <note>
- <para>
- <classname>SeekableIterator</classname> arbeitet als Array und zählt Positionen
- beginnend vom Index 0. Das Holen der Position 1 bedeutet das man das zweite Ergebnis
- der Kollektion erhält.
- </para>
- </note>
- <para>
- Die zweite Gruppe wird durch spezielle alleinstehende Ergebnisobjekte repräsentiert.
- <classname>Zend_Service_Technorati_GetInfoResult</classname>,
- <classname>Zend_Service_Technorati_BlogInfoResult</classname> und
- <classname>Zend_Service_Technorati_KeyInfoResult</classname> funktionieren als Wrapper
- für zusätzliche Objekte, wie <classname>Zend_Service_Technorati_Author</classname> und
- <classname>Zend_Service_Technorati_Weblog</classname>.
- </para>
- <example id="zend.service.technorati.consuming-results.example-3">
- <title>Ein alleinstehendes Ergebnisobjekt verarbeiten</title>
- <programlisting language="php"><![CDATA[
- // ein neues Zend_Service_Technorati mit einem gültigen API_KEY erstellen
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- // Infos über weppos Author erhalten
- $result = $technorati->getInfo('weppos');
- $author = $result->getAuthor();
- echo '<h2>Blogs authorisiert von ' . $author->getFirstName() . " " .
- $author->getLastName() . '</h2>';
- echo '<ol>';
- foreach ($result->getWeblogs() as $weblog) {
- echo '<li>' . $weblog->getName() . '</li>';
- }
- echo "</ol>";
- ]]></programlisting>
- </example>
- <para>
- Bitte lesen Sie das
- <link linkend="zend.service.technorati.classes">Zend_Service_Technorati Klassen</link>
- Kapitel für weitere Details über Antwortklassen.
- </para>
- </sect2>
- <sect2 id="zend.service.technorati.handling-errors">
- <title>Fehler behandeln</title>
- <para>
- Jede <classname>Zend_Service_Technorati</classname> Abfragemethode wirft bei einem
- Fehler eine <classname>Zend_Service_Technorati_Exception</classname> Ausnahme mit einer
- bedeutungsvollen Fehlermeldung.
- </para>
- <para>
- Es gibt verschiedene Gründe die Verursachen können das eine
- <classname>Zend_Service_Technorati</classname> Abfrage fehlschlägt.
- <classname>Zend_Service_Technorati</classname> prüft alle Parameter für jegliche
- Abfrageanfragen. Wenn ein Parameter ungültig ist oder er einen ungültigen Wert enthält,
- wird eine neue <classname>Zend_Service_Technorati_Exception</classname> Ausnahme
- geworfen. Zusätzlich kann das Technorati <acronym>API</acronym> Interface temporär
- unerreichbar sein, oder es kann eine Antwort zurückgeben die nicht gültig ist.
- </para>
- <para>
- Eine Technorati Abfrage sollte immer mit einem <command>try ... catch</command>
- Block umhüllt werden.
- </para>
- <example id="zend.service.technorati.handling-errors.example-1">
- <title>Eine Abfrageausnahme behandeln</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- try {
- $resultSet = $technorati->search('PHP');
- } catch(Zend_Service_Technorati_Exception $e) {
- echo "Ein Fehler ist aufgetreten: " $e->getMessage();
- }
- ]]></programlisting>
- </example>
- </sect2>
- <sect2 id="zend.service.technorati.checking-api-daily-usage">
- <title>Prüfen der täglichen Verwendung des eigenen API Schlüssels</title>
- <para>
- Von Zeit zu Zeit wird man die tägliche Verwendung des <acronym>API</acronym> Schlüssels
- prüfen wollen. Standardmäßig limitiert Technorati die <acronym>API</acronym> Verwendung
- auf 500 Aufrufe pro Tag, und eine Ausnahme wird durch
- <classname>Zend_Service_Technorati</classname> zurückgegeben wenn versucht wird dieses
- Limit zu überschreiten. Man kann diese Information über die Verwendung des eigenen
- <acronym>API</acronym> Schlüssels erhalten indem die
- <methodname>Zend_Service_Technorati::keyInfo()</methodname> Methode verwendet wird.
- </para>
- <para>
- <methodname>Zend_Service_Technorati::keyInfo()</methodname> gibt ein
- <classname>Zend_Service_Technorati_KeyInfoResult</classname> Object zurück. Für
- vollständige Details kann im <ulink url="http://framework.zend.com/apidoc/core/">API
- Referenz Guide</ulink> nachgesehen werden.
- </para>
- <example id="zend.service.technorati.checking-api-daily-usage.example-1">
- <title>Die Information über die tägliche Verwendung des API Schlüssels erhalten</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $key = $technorati->keyInfo();
- echo "API Schlüssel: " . $key->getApiKey() . "<br />";
- echo "Tägliche Verwendung: " . $key->getApiQueries() . "/" .
- $key->getMaxQueries() . "<br />";
- ]]></programlisting>
- </example>
- </sect2>
- <sect2 id="zend.service.technorati.queries">
- <title>Vorhandene Technorati Abfragen</title>
- <para>
- <classname>Zend_Service_Technorati</classname> bietet Unterstützung für die folgenden
- Abfragen:
- <itemizedlist>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.queries.cosmos">Cosmos</link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.queries.search">Search</link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.queries.tag">Tag</link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.queries.dailycounts">DailyCounts</link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.queries.toptags">TopTags</link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.queries.bloginfo">BlogInfo</link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.queries.blogposttags">BlogPostTags</link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.queries.getinfo">GetInfo</link>
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <sect3 id="zend.service.technorati.queries.cosmos">
- <title>Technorati Cosmos</title>
- <para>
- Eine <ulink url="http://technorati.com/developers/api/cosmos.html">Cosmos</ulink>
- Abfrage lässt einen Sehen welche Blog zu einer gegebenen <acronym>URL</acronym>
- verknüpft sind. Sie gibt ein <link
- linkend="zend.service.technorati.classes.cosmosresultset"><classname>Zend_Service_Technorati_CosmosResultSet</classname></link>
- Objekt zurück. Für vollständige Details kann nach
- <methodname>Zend_Service_Technorati::cosmos()</methodname> im <ulink
- url="http://framework.zend.com/apidoc/core/">API Referenz Guide</ulink>
- nachgesehen werden.
- </para>
- <example id="zend.service.technorati.queries.cosmos.example-1">
- <title>Cosmos Abfrage</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $resultSet = $technorati->cosmos('http://devzone.zend.com/');
- echo "<p>Liest " . $resultSet->totalResults() .
- " von " . $resultSet->totalResultsAvailable() .
- " vorhandenen Ergebnissen</p>";
- echo "<ol>";
- foreach ($resultSet as $result) {
- echo "<li>" . $result->getWeblog()->getName() . "</li>";
- }
- echo "</ol>";
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.queries.search">
- <title>Technorati Search</title>
- <para>
- Die <ulink url="http://technorati.com/developers/api/search.html">Search</ulink>
- Abfrage lässt einen Sehen welche Blogs einen gegebenen Suchstring enthalten. Sie
- gibt ein <link
- linkend="zend.service.technorati.classes.searchresultset"><classname>Zend_Service_Technorati_SearchResultSet</classname></link>
- Objekt zurück. Für vollständige Details kann nach
- <methodname>Zend_Service_Technorati::search()</methodname> im <ulink
- url="http://framework.zend.com/apidoc/core/">API Referenz Guide</ulink>
- nachgesehen werden.
- </para>
- <example id="zend.service.technorati.queries.search.example-1">
- <title>Suchabfrage</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $resultSet = $technorati->search('zend framework');
- echo "<p>Liest " . $resultSet->totalResults() .
- " von " . $resultSet->totalResultsAvailable() .
- " vorhandenen Ergebnissen</p>";
- echo "<ol>";
- foreach ($resultSet as $result) {
- echo "<li>" . $result->getWeblog()->getName() . "</li>";
- }
- echo "</ol>";
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.queries.tag">
- <title>Technorati Tag</title>
- <para>
- Die <ulink url="http://technorati.com/developers/api/tag.html">Tag</ulink> Abfrage
- lässt einen Sehen welche Antworten mit einem gegebenen Tag assoziiert sind. Sie gibt
- ein <link
- linkend="zend.service.technorati.classes.tagresultset"><classname>Zend_Service_Technorati_TagResultSet</classname></link>
- Objekt zurück. Für vollständige Details kann nach
- <methodname>Zend_Service_Technorati::tag()</methodname> im <ulink
- url="http://framework.zend.com/apidoc/core/">API Referenz Guide</ulink>
- nachgesehen werden.
- </para>
- <example id="zend.service.technorati.queries.tag.example-1">
- <title>Tag Abfrage</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $resultSet = $technorati->tag('php');
- echo "<p>Liest " . $resultSet->totalResults() .
- " von " . $resultSet->totalResultsAvailable() .
- " vorhandenen Ergebnissen</p>";
- echo "<ol>";
- foreach ($resultSet as $result) {
- echo "<li>" . $result->getWeblog()->getName() . "</li>";
- }
- echo "</ol>";
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.queries.dailycounts">
- <title>Technorati DailyCounts</title>
- <para>
- Die <ulink
- url="http://technorati.com/developers/api/dailycounts.html">DailyCounts</ulink>
- Abfrage bietet tägliche Anzahlen von Antworten die ein abgefragtes Schlüsselwort
- enthalten. Sie gibt ein <link
- linkend="zend.service.technorati.classes.dailycountsresultset"><classname>Zend_Service_Technorati_DailyCountsResultSet</classname></link>
- Objekt zurück. Für vollständige Details kann nach
- <methodname>Zend_Service_Technorati::dailyCounts()</methodname> im
- <ulink url="http://framework.zend.com/apidoc/core/">API Referenz Guide</ulink>
- nachgesehen werden.
- </para>
- <example id="zend.service.technorati.queries.dailycounts.example-1">
- <title>DailyCounts Abfrage</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $resultSet = $technorati->dailyCounts('php');
- foreach ($resultSet as $result) {
- echo "<li>" . $result->getDate() .
- "(" . $result->getCount() . ")</li>";
- }
- echo "</ol>";
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.queries.toptags">
- <title>Technorati TopTags</title>
- <para>
- Die <ulink url="http://technorati.com/developers/api/toptags.html">TopTags</ulink>
- Abfrage bietet Informationen über Top Tags die durch Technorati indiziert sind. Sie
- gibt ein <link
- linkend="zend.service.technorati.classes.tagsresultset"><classname>Zend_Service_Technorati_TagsResultSet</classname></link>
- Objekt zurück. Für vollständige Details kann nach
- <methodname>Zend_Service_Technorati::topTags()</methodname> im
- <ulink url="http://framework.zend.com/apidoc/core/">API Referenz Guide</ulink>
- nachgesehen werden.
- </para>
- <example id="zend.service.technorati.queries.toptags.example-1">
- <title>TopTags Abfrage</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $resultSet = $technorati->topTags();
- echo "<p>Liest " . $resultSet->totalResults() .
- " von " . $resultSet->totalResultsAvailable() .
- " vorhandenen Ergebnissen</p>";
- echo "<ol>";
- foreach ($resultSet as $result) {
- echo "<li>" . $result->getTag() . "</li>";
- }
- echo "</ol>";
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.queries.bloginfo">
- <title>Technorati BlogInfo</title>
- <para>
- Eine <ulink
- url="http://technorati.com/developers/api/bloginfo.html">BlogInfo</ulink>
- Abfrage bietet Informationen darüber welcher Blog, wenn überhaupt, mit einer
- gegebenen <acronym>URL</acronym> assoziiert ist. Sie gibt ein <link
- linkend="zend.service.technorati.classes.bloginforesult"><classname>Zend_Service_Technorati_BlogInfoResult</classname></link>
- Objekt zurück. Für vollständige Details kann nach
- <methodname>Zend_Service_Technorati::blogInfo()</methodname> im
- <ulink url="http://framework.zend.com/apidoc/core/">API Referenz Guide</ulink>
- nachgesehen werden.
- </para>
- <example id="zend.service.technorati.queries.bloginfo.example-1">
- <title>BlogInfo Abfrage</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $result = $technorati->blogInfo('http://devzone.zend.com/');
- echo '<h2><a href="' . (string) $result->getWeblog()->getUrl() . '">' .
- $result->getWeblog()->getName() . '</a></h2>';
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.queries.blogposttags">
- <title>Technorati BlogPostTags</title>
- <para>
- Eine <ulink
- url="http://technorati.com/developers/api/blogposttags.html">BlogPostTags</ulink>
- Abfrage bietet Informationen über Top Tags die von einem spezifischen Blog verwendet
- werden. Sie gibt ein <link
- linkend="zend.service.technorati.classes.tagsresultset"><classname>Zend_Service_Technorati_TagsResultSet</classname></link>
- Objekt zurück. Für vollständige Details kann nach
- <methodname>Zend_Service_Technorati::blogPostTags()</methodname> im
- <ulink url="http://framework.zend.com/apidoc/core/">API Referenz Guide</ulink>
- nachgesehen werden.
- </para>
- <example id="zend.service.technorati.queries.blogposttags.example-1">
- <title>BlogPostTags Abfrage</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $resultSet = $technorati->blogPostTags('http://devzone.zend.com/');
- echo "<p>Liest " . $resultSet->totalResults() .
- " von " . $resultSet->totalResultsAvailable() .
- " vorhandenen Ergebnissen</p>";
- echo "<ol>";
- foreach ($resultSet as $result) {
- echo "<li>" . $result->getTag() . "</li>";
- }
- echo "</ol>";
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.queries.getinfo">
- <title>Technorati GetInfo</title>
- <para>
- Eine <ulink url="http://technorati.com/developers/api/getinfo.html">GetInfo</ulink>
- Abfrage teilt mit was Technorati über ein Mitglied weiß. Sie gibt ein <link
- linkend="zend.service.technorati.classes.getinforesult"><classname>Zend_Service_Technorati_GetInfoResult</classname></link>
- Objekt zurück. Für vollständige Details kann nach
- <methodname>Zend_Service_Technorati::getInfo()</methodname> im
- <ulink url="http://framework.zend.com/apidoc/core/">API Referenz Guide</ulink>
- nachgesehen werden.
- </para>
- <example id="zend.service.technorati.queries.getinfo.example-1">
- <title>GetInfo Abfrage</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $result = $technorati->getInfo('weppos');
- $author = $result->getAuthor();
- echo "<h2>Blogs authorisiert von " . $author->getFirstName() . " " .
- $author->getLastName() . "</h2>";
- echo "<ol>";
- foreach ($result->getWeblogs() as $weblog) {
- echo "<li>" . $weblog->getName() . "</li>";
- }
- echo "</ol>";
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.queries.keyinfo">
- <title>Technorati KeyInfo</title>
- <para>
- Die KeyInfo Abfrage bietet Informationen über die tägliche Verwendung eines
- <acronym>API</acronym> Schlüssels. Sie gibt ein <link
- linkend="zend.service.technorati.classes.keyinforesult"><classname>Zend_Service_Technorati_KeyInfoResult</classname></link>
- Objekt zurück. Für vollständige Details kann nach
- <methodname>Zend_Service_Technorati::keyInfo()</methodname> im
- <ulink url="http://framework.zend.com/apidoc/core/">API Referenz Guide</ulink>
- nachgesehen werden.
- </para>
- </sect3>
- </sect2>
- <sect2 id="zend.service.technorati.classes">
- <title>Zend_Service_Technorati Klassen</title>
- <para>
- Die folgenden Klassen werden von den verschiedenen Technorati Anfragen zurückgegeben.
- Jede <classname>Zend_Service_Technorati_*ResultSet</classname> Klasse enthält ein
- typ-spezifisches Ergebnisset welches einfach, mit jedem Ergebnis das in einem Typ
- Ergebnisobjekt enthalten ist, iteriert werden kann. Alle Ergebnisset Klassen erweitern
- die <classname>Zend_Service_Technorati_ResultSet</classname> Klasse und implementieren
- das <classname>SeekableIterator</classname> Interface, welches eine einfache Iteration
- und Suche nach einem spezifischen Ergebnis erlaubt.
- <itemizedlist>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.classes.resultset"><classname>Zend_Service_Technorati_ResultSet</classname></link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.classes.cosmosresultset"><classname>Zend_Service_Technorati_CosmosResultSet</classname></link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.classes.searchresultset"><classname>Zend_Service_Technorati_SearchResultSet</classname></link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.classes.tagresultset"><classname>Zend_Service_Technorati_TagResultSet</classname></link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.classes.dailycountsresultset"><classname>Zend_Service_Technorati_DailyCountsResultSet</classname></link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.classes.tagsresultset"><classname>Zend_Service_Technorati_TagsResultSet</classname></link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.classes.result"><classname>Zend_Service_Technorati_Result</classname></link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.classes.cosmosresult"><classname>Zend_Service_Technorati_CosmosResult</classname></link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.classes.searchresult"><classname>Zend_Service_Technorati_SearchResult</classname></link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.classes.tagresult"><classname>Zend_Service_Technorati_TagResult</classname></link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.classes.dailycountsresult"><classname>Zend_Service_Technorati_DailyCountsResult</classname></link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.classes.tagsresult"><classname>Zend_Service_Technorati_TagsResult</classname></link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.classes.getinforesult"><classname>Zend_Service_Technorati_GetInfoResult</classname></link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.classes.bloginforesult"><classname>Zend_Service_Technorati_BlogInfoResult</classname></link>
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="zend.service.technorati.classes.keyinforesult"><classname>Zend_Service_Technorati_KeyInfoResult</classname></link>
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_GetInfoResult</classname>,
- <classname>Zend_Service_Technorati_BlogInfoResult</classname> und
- <classname>Zend_Service_Technorati_KeyInfoResult</classname> repräsentieren
- Ausnahmen zu den obigen weil Sie nicht zu einem ergebnisset gehören und sie kein
- Interface implementieren. Sie repräsentieren ein einzelnes Antwortobjekt und sie
- funktionieren als Wrapper für zusätzliche
- <classname>Zend_Service_Technorati</classname> Objekte, wie
- <classname>Zend_Service_Technorati_Author</classname> und
- <classname>Zend_Service_Technorati_Weblog</classname>.
- </para>
- </note>
- <para>
- Die <classname>Zend_Service_Technorati</classname> Bibliothek beinhaltet zusätzliche
- bequeme Klassen die spezifische Antwortobjekte repräsentieren.
- <classname>Zend_Service_Technorati_Author</classname> repräsentiert einen einzelnen
- Technorati Account, welcher auch als Blog Author oder Blogger bekannt ist.
- <classname>Zend_Service_Technorati_Weblog</classname> repräsentiert ein einzelnes Weblog
- Objekt, zusätzlich mit allen spezifischen Weblog Eigenschaften die Feed
- <acronym>URL</acronym>s oder Blog Namen. Für komplette Details kann nach
- <classname>Zend_Service_Technorati</classname> im <ulink
- url="http://framework.zend.com/apidoc/core/">API Referenz Guide</ulink> nachgesehen
- werden.
- </para>
- <sect3 id="zend.service.technorati.classes.resultset">
- <title>Zend_Service_Technorati_ResultSet</title>
- <para>
- <classname>Zend_Service_Technorati_ResultSet</classname> ist das am meisten
- essentielle Ergebnisset. Der Zweck dieser Klasse ist es von einer
- abfrage-spezifischen Kind-Ergebnisset-Klasse erweitert zu werden, und sie sollte
- niemals verwendet werden um ein alleinstehendes Objekt zu initialisieren. Jedes der
- spezifischen Ergebnissets repräsentiert eine Kollektion von abfrage-spezifischen
- <link
- linkend="zend.service.technorati.classes.result"><classname>Zend_Service_Technorati_Result</classname></link>
- Objekte.
- </para>
- <para>
- <classname>Zend_Service_Technorati_ResultSet</classname> Implementiert das
- <acronym>PHP</acronym> <classname>SeekableIterator</classname> Interface, und man
- kann durch alle Ergebnisobjekte mit dem <acronym>PHP</acronym> Statement
- <methodname>foreach()</methodname> iterieren.
- </para>
- <example id="zend.service.technorati.classes.resultset.example-1">
- <title>Über Ergebnisobjekte von einer Ergebnisset Kollektion iterieren</title>
- <programlisting language="php"><![CDATA[
- // eine einfache Abfrage durchlaufen
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $resultSet = $technorati->search('php');
- // $resultSet ist jetzt eine Instanz von
- // Zend_Service_Technorati_SearchResultSet
- // sie erweitert Zend_Service_Technorati_ResultSet
- foreach ($resultSet as $result) {
- // irgendwas mit dem Zend_Service_Technorati_SearchResult Objekt anfangen
- }
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.classes.cosmosresultset">
- <title>Zend_Service_Technorati_CosmosResultSet</title>
- <para>
- <classname>Zend_Service_Technorati_CosmosResultSet</classname> repräsentiert ein
- Technorati Cosmos Abfrage Ergebnisset.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_CosmosResultSet</classname> erweitert <link
- linkend="zend.service.technorati.classes.resultset">Zend_Service_Technorati_ResultSet</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.searchresultset">
- <title>Zend_Service_Technorati_SearchResultSet</title>
- <para>
- <classname>Zend_Service_Technorati_SearchResultSet</classname> repräsentiert ein
- Technorati Search Abfrage Ergebnisset.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_SearchResultSet</classname> erweitert <link
- linkend="zend.service.technorati.classes.resultset">Zend_Service_Technorati_ResultSet</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.tagresultset">
- <title>Zend_Service_Technorati_TagResultSet</title>
- <para>
- <classname>Zend_Service_Technorati_TagResultSet</classname> repräsentiert ein
- Technorati Tag Abfrage Ergebnisset.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_TagResultSet</classname> erweitert <link
- linkend="zend.service.technorati.classes.resultset">Zend_Service_Technorati_ResultSet</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.dailycountsresultset">
- <title>Zend_Service_Technorati_DailyCountsResultSet</title>
- <para>
- <classname>Zend_Service_Technorati_DailyCountsResultSet</classname> repräsentiert
- ein Technorati DailyCounts Abfrage Ergebnisset.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_DailyCountsResultSet</classname> erweitert
- <link
- linkend="zend.service.technorati.classes.resultset">Zend_Service_Technorati_ResultSet</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.tagsresultset">
- <title>Zend_Service_Technorati_TagsResultSet</title>
- <para>
- <classname>Zend_Service_Technorati_TagsResultSet</classname> repräsentiert ein
- Technorati TopTags oder BlogPostTags Abfrage Ergebnisset.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_TagsResultSet</classname> erweitert <link
- linkend="zend.service.technorati.classes.resultset">Zend_Service_Technorati_ResultSet</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.result">
- <title>Zend_Service_Technorati_Result</title>
- <para>
- <classname>Zend_Service_Technorati_Result</classname> ist das wichtigste
- Ergebnisobjekt. Der Zweck dieser Klasse ist es, durch eine abfrage-spezifische
- Kind-Ergebnisklasse erweitert zu werden, und Sie sollte nie verwendet werden um ein
- alleinstehendes Objekt zu initiieren.
- </para>
- </sect3>
- <sect3 id="zend.service.technorati.classes.cosmosresult">
- <title>Zend_Service_Technorati_CosmosResult</title>
- <para>
- <classname>Zend_Service_Technorati_CosmosResult</classname> repräsentiert ein
- einzelnes Technorati Cosmos Abfrageobjekt. Es wird nie als alleinstehendes Objekt
- zurückgegeben, aber es gehört immer einem gültigen <link
- linkend="zend.service.technorati.classes.cosmosresultset">Zend_Service_Technorati_CosmosResultSet</link>
- Objekt an.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_CosmosResult</classname> erweitert <link
- linkend="zend.service.technorati.classes.result">Zend_Service_Technorati_Result</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.searchresult">
- <title>Zend_Service_Technorati_SearchResult</title>
- <para>
- <classname>Zend_Service_Technorati_SearchResult</classname> repräsentiert ein
- einzelnes Technorati Search Abfrage Ergebnisobjekt. Es wird nie als alleinstehendes
- Objekt zurückgegeben, aber es gehört immer einem gültigen <link
- linkend="zend.service.technorati.classes.searchresultset">Zend_Service_Technorati_SearchResultSet</link>
- Objekt an.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_SearchResult</classname> erweitert <link
- linkend="zend.service.technorati.classes.result">Zend_Service_Technorati_Result</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.tagresult">
- <title>Zend_Service_Technorati_TagResult</title>
- <para>
- <classname>Zend_Service_Technorati_TagResult</classname> repräsentiert ein einzelnes
- Technorati Tag Abfrage Ergebnisobjekt. Es wird nie als alleinstehendes Objekt
- zurückgegeben, aber es gehört immer einem gültigen <link
- linkend="zend.service.technorati.classes.tagresultset">Zend_Service_Technorati_TagResultSet</link>
- Objekt an.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_TagResult</classname> erweitert <link
- linkend="zend.service.technorati.classes.result">Zend_Service_Technorati_Result</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.dailycountsresult">
- <title>Zend_Service_Technorati_DailyCountsResult</title>
- <para>
- <classname>Zend_Service_Technorati_DailyCountsResult</classname> repräsentiert ein
- einzelnes Technorati DailyCounts Abfrage Ergebnisobjekt. Es wird nie als
- alleinstehendes Objekt zurückgegeben, aber es gehört immer einem gültigen <link
- linkend="zend.service.technorati.classes.dailycountsresultset">Zend_Service_Technorati_DailyCountsResultSet</link>
- Objekt an.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_DailyCountsResult</classname> erweitert <link
- linkend="zend.service.technorati.classes.result">Zend_Service_Technorati_Result</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.tagsresult">
- <title>Zend_Service_Technorati_TagsResult</title>
- <para>
- <classname>Zend_Service_Technorati_TagsResult</classname> repräsentiert ein
- einzelnes Technorati TopTags oder BlogPostTags Abfrage Ergebnisobjekt. Es wird nie
- als alleinstehendes Objekt zurückgegeben, aber es gehört immer einem gültigen <link
- linkend="zend.service.technorati.classes.tagsresultset">Zend_Service_Technorati_TagsResultSet</link>
- Objekt an.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_TagsResult</classname> erweitert <link
- linkend="zend.service.technorati.classes.result">Zend_Service_Technorati_Result</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.getinforesult">
- <title>Zend_Service_Technorati_GetInfoResult</title>
- <para>
- <classname>Zend_Service_Technorati_GetInfoResult</classname> repräsentiert ein
- einzelnes Technorati GetInfo Abfrage Ergebnisobjekt.
- </para>
- </sect3>
- <sect3 id="zend.service.technorati.classes.bloginforesult">
- <title>Zend_Service_Technorati_BlogInfoResult</title>
- <para>
- <classname>Zend_Service_Technorati_BlogInfoResult</classname> repräsentiert ein
- einzelnes Technorati BlogInfo Abfrage Ergebnisobjekt.
- </para>
- </sect3>
- <sect3 id="zend.service.technorati.classes.keyinforesult">
- <title>Zend_Service_Technorati_KeyInfoResult</title>
- <para>
- <classname>Zend_Service_Technorati_KeyInfoResult</classname> repräsentiert ein
- einzelnes Technorati KeyInfo Abfrage Ergebnisobjekt. Es bietet Informationen über
- die eigene <link linkend="zend.service.technorati.checking-api-daily-usage">tägliche
- Verwendung des Technorati <acronym>API</acronym> Schlüssels</link>.
- </para>
- </sect3>
- </sect2>
- </sect1>
|