1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
|
---
title: OpenSearch Plugin für Firefox erstellen
slug: Web/OpenSearch
tags:
- Add-ons
- OpenSearch
translation_of: Web/OpenSearch
original_slug: OpenSearch_Plugin_für_Firefox_erstellen
---
<h2 id="OpenSearch">OpenSearch</h2>
<p>{{ fx_minversion_header(2) }}</p>
<p><a href="/de/Firefox_2_für_Entwickler" title="de/Firefox 2 für Entwickler">Firefox 2</a> unterstützt das <a class="external" href="http://opensearch.org/">OpenSearch</a>(engl.) Beschreibungsformat für Such-Plugins. Plugins, die <a class="external" href="http://www.opensearch.org/Specifications/OpenSearch/1.1#OpenSearch_description_document">OpenSearch description syntax</a>(engl.) verwenden, sind kompatibel mit IE 7 und Firefox. Daher sind sie das empfohlene Format für das Web.</p>
<p>Firefox unterstützt zudem zusätzliche Suchoptionen, die nicht im <a class="external" href="http://www.opensearch.org/Specifications/OpenSearch/1.1#OpenSearch_description_document">OpenSearch description syntax</a>(engl.) genannt werden, wie zum Beispiel Suchvorschläge und das <code>SearchForm</code> Element. Dieser Artikel bezieht sich auf die Erstellung von OpenSearch-kompatiblen Such-Plugins, die die zusätzlichen Firefox-spezifischen Funktionen unterstützen.</p>
<p>OpenSearch Beschreibungsdateien können auch <a href="/de/OpenSearch_Plugin_für_Firefox_erstellen#Automatische_Erkennung_von_Such-Plugins" title="de/OpenSearch Plugin für Firefox erstellen#Automatische Erkennung von Such-Plugins">automatisch erkannt</a> und <a href="/de/Hinzufügen_von_Suchmaschinen_von_Webseiten" title="de/Hinzufügen von Suchmaschinen von Webseiten">von Webseiten</a> installiert werden.</p>
<h2 id="OpenSearch_Beschreibungsdatei">OpenSearch Beschreibungsdatei</h2>
<p>Die XML Datei, die eine Suchmaschine beschreibt, ist sehr einfach aufgebaut. Eine Vorlage findet sich unterhalb. Die fett markierten Abschnitte müssen angepasst werden, je nach dem was auf Ihre Suchmaschine zutrifft.</p>
<pre class="eval"><OpenSearchDescription xmlns="<span class="nowiki">http://a9.com/-/spec/opensearch/1.1/</span>"
xmlns:moz="<span class="nowiki">http://www.mozilla.org/2006/browser/search/</span>">
<ShortName><strong>engineName</strong></ShortName>
<Description><strong>engineDescription</strong></Description>
<InputEncoding><strong>inputEncoding</strong></InputEncoding>
<Image width="16" height="16" type="image/x-icon">data:image/x-icon;base64,<strong>imageData</strong></Image>
<Url type="text/html" method="<strong>method</strong>" template="<strong>searchURL</strong>">
<Param name="<strong>paramName1</strong>" value="<strong>paramValue1</strong>"/>
...
<Param name="<strong>paramNameN</strong>" value="<strong>paramValueN</strong>"/>
</Url>
<Url type="application/x-suggestions+json" template="<strong>suggestionURL</strong>"/>
<moz:SearchForm><strong>searchFormURL</strong></moz:SearchForm>
</OpenSearchDescription>
</pre>
<dl>
<dt>
<strong>ShortName</strong></dt>
<dd>
Ein kurzer Name für Ihre Suchmaschine.</dd>
<dd>
<strong>Einschränkungen:</strong> Der Wert muss 16 oder weniger Zeichen enthalten und darf kein HTML oder sonstiges Markup enthalten.</dd>
</dl>
<dl>
<dt>
<strong>Description</strong></dt>
<dd>
Eine kurze Beschreibung der Suchmaschine.</dd>
<dd>
<strong>Einschränkungen:</strong> Der Wert muss 1024 oder weniger Zeichen enthalten und darf kein HTML oder sonstiges Markup enthalten.</dd>
</dl>
<dl>
<dt>
<strong>InputEncoding</strong></dt>
<dd>
Das Encoding, welches für die eingegeben Daten verwendet werden soll. Beispiel: <code><InputEncoding>UTF-8</InputEncoding></code>.</dd>
</dl>
<dl>
<dt>
<strong>Image</strong></dt>
<dd>
URI zu einem Icon, welches die Suchmaschine repräsentiert. Nach Möglichkeit sollten Suchmaschinen ein 16x16 großes Bild des Typs "image/x-icon" und ein 64x64 großes Bild des Typs "image/jpeg" oder "image/png" bereitstellten. Der Link kann auch das <a class="external" href="http://en.wikipedia.org/wiki/Data:_URI_scheme">data: URI scheme</a> verwenden. Ein hilfreiches Tool zum Erstellen der data URIs lässt sich hier finden: <a class="external" href="http://software.hixie.ch/utilities/cgi/data/data">The data: URI kitchen</a>.
<pre class="eval"><Image height="16" width="16" type="image/x-icon"><a class="external" href="http://example.com/favicon.ico" rel="freelink">http://example.com/favicon.ico</a></Image>
Oder
<Image height="16" width="16">data:image/x-icon;base64,AAABAAEAEBAAA ... DAAA=</Image>
</pre>
Firefox speichert das Icon als eine base64 data: URI im Cache (Such-Plugins werden im "searchplugins" Ordner im Profil gespeichert). http: URIs werden auf data: URIs umgewandelt, wenn diese vorhanden sind.</dd>
</dl>
<dl>
<dt>
<strong>Url</strong></dt>
<dd>
Gibt die URL oder die URLs an, die zur Suche verwendet werden sollen. Das <code>method</code> Attribut gibt an, ob eine <code>GET</code> oder <code>POST</code> Anfrage verwendet wird. Das <code>template</code> Attribut gibt die Basis-URL für die Suchanfrage an.</dd>
<dd>
<div class="note">
<strong>Hinweis:</strong> Der Internet Explorer 7 unterstützt keine <code>POST</code> Anfragen.</div>
</dd>
</dl>
<dl>
<dd>
Es gibt zwei URL-Typen, die Firefox unterstützt:</dd>
</dl>
<ul>
<li><code>type="text/html"</code> wird benutzt, um die URL für die Suchanfrage selbst festzulegen.</li>
<li><code>type="application/x-suggestions+json"</code> wird benutzt, um die URL anzugeben, die die Suchvorschläge enthält.</li>
</ul>
<dl>
<dd>
Für jeden URL-Typ können Sie <code>{searchTerms}</code> einsetzen, um dort den Suchausdruck des Benutzers einzufügen. Andere unterstützte dynamische Suchparameter sind unter <a class="external" href="http://www.opensearch.org/Specifications/OpenSearch/1.1/Draft_3#OpenSearch_1.1_parameters">OpenSearch 1.1 parameters</a> beschrieben.</dd>
</dl>
<dl>
<dd>
Für Suchvorschläge wird die festgelegte Vorlage verwendet, um eine Liste im JavaScript Object Notation (JSON) Format zu erhalten. Für weitere Details zur Implementierung von Suchvorschlägen, siehe <a href="/de/Suchvorschläge_in_Such-Plugins_unterstützen" title="de/Suchvorschläge in Such-Plugins unterstützen">Suchvorschläge in Such-Plugins unterstützen</a>.</dd>
</dl>
<p><img alt="Image:SearchSuggestionSample.png" class="internal" src="/@api/deki/files/358/=SearchSuggestionSample.png"></p>
<dl>
<dt>
<strong>Param</strong></dt>
<dd>
Die Parameter, die durch die Suchanfrage laufen müssen, als Schlüssel/Wert Paare. Wenn Werte festgelegt werden, können Sie <code>{searchTerms}</code> verwenden, um den Suchausdruck vom Benutzer in der Suchleiste einzufügen.</dd>
<dd>
<div class="note">
<strong>Hinweis:</strong> Der Internet Explorer 7 unterstützt dieses Element nicht.</div>
</dd>
</dl>
<dl>
<dt>
<strong>SearchForm</strong></dt>
<dd>
Die URL zur der Suchseite auf der Seite, für die das Plugin erstellt wurde. Das bietet einen Weg für den Benutzer an, die Seite direkt zu besuchen, auf der er suchen möchte.</dd>
<dd>
<div class="note">
<strong>Hinweis:</strong> Da dieses Element Firefox-spezifisch ist und nicht Teil der OpenSearch Spezifikation ist, verwenden wir das "<code>moz:</code>" XML Namespace Präfix im Beispiel oben, um sicher zu stellen, dass andere Browser dieses Element ignorieren.</div>
</dd>
</dl>
<h2 id="Automatische_Erkennung_von_Such-Plugins">Automatische Erkennung von Such-Plugins</h2>
<p>Eine Webseite, die ein Such-Plugin anbietet, kann dieses bemerkbar machen, sodass Firefox Benutzer dieses einfach herunterladen und installieren können.</p>
<p>Um die automatisch Erkennung zu unterstützen, müssen Sie einfach einen Link im <code><head></code> Ihrer Webseite hinzufügen:</p>
<pre class="eval"><link rel="search" type="application/opensearchdescription+xml" title="<em>searchTitle</em>" href="<em>pluginURL</em>">
</pre>
<p>Ersetzen Sie die kursiven Einträge, wie unten erklärt:</p>
<dl>
<dt>
<strong>searchTitle</strong></dt>
<dd>
Der Name der Suche, etwa "MDC Suche" oder "Yahoo! Suche". Dieser Wert sollte mit dem ShortName Ihres Plugins übereinstimmen.</dd>
</dl>
<dl>
<dt>
<strong>pluginURL</strong></dt>
<dd>
Die URL zum XML Such-Plugin, von welchem der Browser das Plugin herunterladen kann.</dd>
</dl>
<p>Wenn Ihre Seite mehrere Such-Plugins anbietet, können Sie diese Zeile für Zeile angeben. Zum Beispiel:</p>
<pre class="eval"><link rel="search" type="application/opensearchdescription+xml" title="MySite: By Author" href="<a class="external" href="http://www.mysite.com/mysiteauthor.xml" rel="freelink">http://www.mysite.com/mysiteauthor.xml</a>">
<link rel="search" type="application/opensearchdescription+xml" title="MySite: By Title" href="<a class="external" href="http://www.mysite.com/mysitetitle.xml" rel="freelink">http://www.mysite.com/mysitetitle.xml</a>">
</pre>
<p>Dadurch bietet Ihre Seite sowohl die Such nach Autor und nach Titel als separate Möglichkeiten an.</p>
<h2 id="Automatische_Aktualisierungen_für_OpenSearch_Plugins_bereitstellen">Automatische Aktualisierungen für OpenSearch Plugins bereitstellen</h2>
<p>{{ fx_minversion_note(3.5, "Dieser Abschnitt beschreibt Funktionen, die in Firefox 3.5 eingeführt wurden.") }}</p>
<p>Ab Firefox 3.5 können OpenSearch Plugins automatsch aktualisiert werden. Um dies zu unterstützen, muss ein zusätzliches <code>Url</code> Element des Typs "<code>application/opensearchdescription+xml</code>" eingefügt werden. Das <code>rel</code> Attribut muss "<code>self</code>" lauten und das template Attribut muss die URL des OpenSearch Dokuments sein, welches automatisch aktualisiert werden muss.</p>
<p>Zum Beispiel:</p>
<pre><Url type="application/opensearchdescription+xml"
rel="self"
template="http://www.foo.com/mysearchdescription.xml" />
</pre>
<h2 id="Tipps_zur_Problemlösung">Tipps zur Problemlösung</h2>
<p>Falls sich ein Fehler in Ihr Such-Plugin XML eingeschlichen hat, können Fehler beim Hinzufügen von Such-Plugin auftreten. Die Fehlermeldungen sind meist nicht sehr hilfreich, die folgenden Tipps können Ihnen aber vielleicht helfen das Problem zu finden.</p>
<ul>
<li>Ihr Server sollte OpenSearch Plugins mit dem MIME type <code>application/opensearchdescription+xml</code> ausliefern.</li>
<li>Stellen Sie sicher, dass die XML Datei des Plugins wohlgeformt ist. Das können Sie überprüfen, indem Sie die Datei direkt in Firefox aufrufen. Ampersands in der template URL müssen mit &amp; maskiert werden und Tags müssen mit einem Slash oder einem schließenden Tag geschlossen werden.</li>
<li>Das <code>xmlns</code> Attribut ist wichtig, ohne diesem taucht die Fehlermeldung auf: "Firefox could not download the search plugin from: (URL)".</li>
<li>Achten Sie darauf, dass Sie eine <code>text/html</code> URL einfügen <strong>müssen</strong> — Such-Plugins mit Atom oder <a href="/de/RSS" title="de/RSS">RSS</a> URL Typen (was gültig wäre, Firefox aber nicht unterstützt) werden ebenfalls zum Fehler "could not download the search plugin" führen.</li>
<li>Favicons aus einer entfernten Quelle dürfen nicht größer als 10KB sein (siehe {{ Bug(361923) }}).</li>
</ul>
<p>Zusätzlich bietet das Such-Plugin einen Log-Mechanismus, der von Plugin Entwicklern verwendet werden kann. Verwenden Sie <em>about:config</em> um die Einstellung '<code>browser.search.log</code>' auf <code>true</code> zu setzen. Logging Informationen werden in Firefox's <a href="/de/Fehlerkonsole" title="de/Fehlerkonsole">Fehlerkonsole</a> (Extras->Fehlerkonsole) erscheinen, wenn Such-Plugins hinzugefügt werden.</p>
<h2 id="Referenzmaterial">Referenzmaterial</h2>
<ul>
<li><a class="external" href="http://opensearch.org/">OpenSearch Documentation</a>, <a class="external" href="http://www.opensearch.org/Specifications/OpenSearch/Extensions/Parameter/1.0">OpenSearch Documentation about the Url and Param element</a></li>
<li>Technorati.com hat eine <a class="external" href="http://technorati.com/osd.xml">arbeitende osd.xml</a></li>
<li>Schwierigkeiten bei der automatischen Erkennung: {{ Bug(340208) }}</li>
<li><a class="external" href="http://en.wikipedia.org/wiki/Data:_URI_scheme"><code>data:</code> URI scheme</a></li>
<li><a class="external" href="http://www.searchplugins.net">searchplugins.net</a> - OpenSearch Plugins für Firefox 2. <a class="external" href="http://www.searchplugins.net/pluginlist.aspx">Liste von genierten Such-Plugins</a></li>
<li><a class="external" href="http://keijisaito.info/ready2search/e/">Ready2Search</a> - OpenSearch Plugins erstellen. <a class="external" href="http://keijisaito.info/arc/search/en_make_plugin.htm">Benutzerdefinierte Suche durch Ready2Search</a></li>
</ul>
<p>{{ languages( { "en": "en/Creating_OpenSearch_plugins_for_Firefox", "ca": "ca/Creaci\u00f3_de_connectors_OpenSearch_per_al_Firefox", "fr": "fr/Cr\u00e9ation_de_plugins_OpenSearch_pour_Firefox", "ja": "ja/Creating_OpenSearch_plugins_for_Firefox", "pl": "pl/Tworzenie_wtyczek_OpenSearch_dla_Firefoksa", "pt": "pt/Criando_plugins_OpenSearch_para_o_Firefox" } ) }}</p>
|