Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Vorwort
1 Einleitung
2 Installation
3 Frontend
4 Backend
5 Inhalte erstellen und verändern
6 Eine erste Webseite
7 Das Website-Design
8 Benutzer und Bereiche
9 Module, Plug-ins, Komponenten
10 Pflege der Webseite
11 Eine Site aufbauen
12 Was macht ein Template aus?
13 Tools zur Template-Erstellung
14 Barrierefreiheit
15 Aus der Trickkiste
16 Joomla! als professionelle Geschäftsplattform
17 Online-Shop: VirtueMart
18 Formulare: BreezingForms und ChronoForms
19 Dokumentenverwaltung: Docman und Attachments
20 Kalender: JEvent und iWebCal
21 Bildergalerien: Zoom Media Gallery und JoomGallery
22 Joomla! als Community-Treff
23 Weblogs: IDoBlog und MMS Blog
24 Wiki: JoomlaWiki
25 Forum: FireBoard
26 Gästebücher
27 Noch mehr Kommunikation
28 Installation beim Webhost
29 Backup und Upgrade
30 Tools
31 Standard-Erweiterungen
32 Mehrsprachigkeit
33 Suchmaschinenoptimierung
34 Statistik
35 Performance
36 Datentransfer und FTP-Modus
37 Sicherheit
38 Troubleshooting
39 Mein erstes Modul
40 Die Joomla!-API
41 Plug-ins erstellen
42 Eine eigene Komponente
A Parameter der unterschiedlichen Menütypen
B Die Joomla!-API
C Glossar
D Inhalt der DVD
Stichwort

Download:
- ZIP, ca. 28,5 MB
Buch bestellen
Ihre Meinung?

Spacer
<< zurück
Joomla! 1.5 von Anja Ebersbach, Markus Glaser, Radovan Kubani
Das umfassende Handbuch
Buch: Joomla! 1.5

Joomla! 1.5
geb., mit DVD
820 S., 34,90 Euro
Galileo Computing
ISBN 978-3-89842-881-1
Pfeil 41 Plug-ins erstellen
Pfeil 41.1 Funktionsweise
Pfeil 41.2 Plug-ins für den Inhalt
Pfeil 41.3 Ein passender Button
Pfeil 41.4 Plug-ins für die Suche


Galileo Computing - Zum Seitenanfang

41.3 Ein passender Button topZur vorigen Überschrift

Um das Einfügen von Links zu erleichtern, werden wir unseren Usern einen Button zur Verfügung stellen, der auf einen Klick hin ein {hotlink=1 text=name} einfügt. Dazu benötigen wir einen Editor-Extension-Plug-in. Bei der XML-Datei beschränken wir uns dieses Mal auf das Nötigste:

1   <?xml version="1.0" encoding="utf-8"?> 
2   <install type="plugin" group="editors-xtd" 
3            version="1.5"> 
4      <name>Editorbutton – HotLink</name> 
5      <files> 
6         <filename plugin="hotlinkbtn">hotlinkbtn.php</filename> 
7         <filename>hotlink.png</filename> 
8     </files> 
9     <params /> 
10  </install>

Listing 41.5 hotlinkbtn.xml

Wie Sie sehen, hat sich die Gruppe in editors-xtd geändert (Zeile 2), und es stehen dieses Mal zwei Einträge im <files>-Tag (Zeilen 5 –10).


Namenskonvention
Der Name, der im Attribut plugin angegeben ist, muss mit dem Teil der folgenden Klasse übereinstimmen, der nach pkgButton folgt.


Ansonsten ereignet sich hier wenig Spektakuläres.

Wenden wir uns also dem Programmteil zu. Die Funktion, die aufgerufen wird, wenn Buttons angezeigt werden sollen, muss ein Objekt zurückgeben, das den Button definiert. Zudem müssen wir ein wenig CSS erstellen, um dem Button ein Bild zu geben.

1   <?php 
2   defined( '_JEXEC' ) or die( 'Restricted access' ); 
3   jimport( 'joomla.plugin.plugin' ); 
4   class plgButtonHotlinkbtn extends JPlugin { 
5      function plgButtonHotlinkbtn( &$subject, $config) { 
6         parent::__construct($subject, $config); 
7      } 
8      function onDisplay($name) 
9      { 
10         $doc =& JFactory::getDocument(); 
11         $css = ".button2-left .hotlink { 
12            background:transparent 
13                       url(../plugins/editors-xtd/hotlink.png) 
14                       no-repeat scroll 100  % 0; 
15            }"; 
16         $doc->addStyleDeclaration($css); 
17         $button = new JObject(); 
18         $button->set('onclick', 
19             'jInsertEditorText(\'{hotlink=1 text=name}\',    Umbruch 
20              \''.$name.'\');return false;'); 
21         $button->set('text', 'HotLink'); 
22         $button->set('name', 'hotlink'); 
23         $button->set('link', '#'); 
24         return $button; 
25      } 
26 } 
27 ?>

Listing 41.6 hotlinkbtn.php

Die Zeilen 1 bis 7 entsprechen dem Gerüst eines Plug-ins. Um den Button darzustellen, wird der onDisplay-Event definiert, dem als Parameter der Name des Editors übergeben wird. In Zeile 10 wird das Objekt des aktuellen Ausgabedokuments geholt. Das benötigen wir, um das CSS zu übergeben, das das Hintergrundbild des Buttons festlegt. Diese CSS-Anweisungen werden in den Zeilen 11 bis 15 festgelegt und in Zeile 16 an das Dokument übergeben. In Zeile 17 wird ein neues Objekt erstellt, das die Eigenschaften des Buttons enthalten soll. Diese werden in den folgenden Zeilen eingetragen. Zunächst wird das Verhalten bestimmt. Wenn auf den Button geklickt wird, so wird ein JavaScript-Befehl von Joomla! ausgeführt: jInsertEditorText. Dieser hat zwei Parameter: einmal den Text, der eingefügt werden soll, und dann den Namen des Editors. Diesen erhalten wir durch die PHP-Variable $name. In Zeile 21 wird die Beschriftung festgelegt und in Zeile 22 der Name, der wiederum als Schlüssel für die CSS-Klasse dient. In Zeile 23 setzen wir die URL des Buttons auf #, das heißt, das aktuelle Dokument.

Nun müssen Sie noch ein Bild mit dem Namen hotlink.png erstellen, das als Button angezeigt werden soll. Wir haben Ihnen auf der DVD schon eines mitgeliefert.

Jetzt können Sie das Plug-in über das Joomla!-Backend installieren. Nach der Installation muss es in der Plug-in-Verwaltung noch publiziert werden. Hier können Sie auch über die Spalte »Order« die Reihenfolge bestimmen. Wenn alles geklappt hat, dann sollte die Button-Leiste unter dem Editor im Frontend jetzt ungefähr so aussehen, wie in Abbildung 41.1 dargestellt.

Abbildung 41.1 Die Editor-Leiste mit Hotlink-Button



Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.






<< zurück
  Zum Katalog
Zum Katalog: Joomla! 1.5 - Das umfassende Handbuch





Joomla! 1.5 -
Das umfassende Handbuch

Jetzt bestellen


 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchtipps
Zum Katalog: Einstieg in Joomla! - Das Video-Training





 Einstieg in Joomla! -
 Das Video-Training


Zum Katalog: Joomla! 1.5 für Einsteiger





 Joomla! 1.5
 für Einsteiger


Zum Katalog: Einstieg in TYPO3 4.2






 Einstieg in TYPO3 4.2


Zum Katalog: Webseiten erstellen für Einsteiger






 Webseiten erstellen
 für Einsteiger


Zum Katalog: Einstieg in PHP 5 und MySQL 5






 Einstieg in PHP 5
 und MySQL 5


Zum Katalog: Suchmaschinen-Optimierung






 Suchmaschinen-
 Optimierung


Zum Katalog: Modernes Webdesign






 Modernes Webdesign


Zum Katalog: Praxisbuch Web 2.0






 Praxisbuch Web 2.0


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Galileo Press 2009
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de