J3.x

Entwicklung einer MVC Komponente/Einführung

From Joomla! Documentation

< J3.x:Developing an MVC Component
Revision as of 15:53, 19 January 2017 by FuzzyBot (talk | contribs) (Updating to match new version of source page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Other languages:
Deutsch • ‎English • ‎Nederlands • ‎español • ‎français • ‎italiano • ‎polski • ‎português do Brasil • ‎العربية • ‎中文(中国大陆)‎ • ‎中文(台灣)‎
Joomla! 
3.x
Tutorial
Entwicklung einer MVC Komponente

Hinzufügen einer variablen Anfrage zum Menütyp

Benutzung der Datenbank

Backend-Grundlagen

Hinzufügen von Sprachen

Hinzufügen von Aktionen im Backend

Hinzufügen von Dekorationen zum Backend

Hinzufügen von Validierungen

Hinzufügen von Kategorien

Hinzufügen einer Konfiguration

  1. Hinzufügen von ACL

Hinzufügen eines Installations-/Deinstallations-/Aktualisierungs-Skriptes

Hinzufügen eines Formulars im Frontend

  1. Hinzufügen von Bildern
  2. Hinzufügen von Karten
  3. Hinzufügen von AJAX
  4. Hinzufügen eines Alias

Benutzung des Sprachenfilters

  1. Hinzufügen von Modalen
  2. Hinzufügen von Verknüpfungen
  3. Hinzufügen der Freigabe/Sperrung von Elementen
  4. Hinzufügen von Sortierungen
  5. Hinzufügen von Ebenen
  6. Hinzufügen von Versionen
  7. Hinzufügen von Schlagwörtern (Tags)
  8. Hinzufügen von Zugriffsebenen
  9. Hinzufügen von Stapelverarbeitungen
  10. Hinzufügen eines Cache-Speichers
  11. Hinzufügen eines Feeds

Hinzufügen eines Aktualisierungs-Servers

  1. Adding Custom Fields
  2. Upgrading to Joomla4



Dies ist eine Artikel-Serie mit Tutorials über die Entwicklung einer Modal-View-Controller Komponente für Joomla! VersionJoomla 3.x.

Beginne mit der Einführung und navigiere durch die Artikel dieser Serie mit Hilfe des Buttons am Ende der Seite oder der Box auf der rechten Seite ("Artikel in dieser Serie").



Hinweise

Voraussetzungen

Du benötigst Joomla! 3.0 (mit PHP, MySQL und Apache/Microsoft IIS) oder höher für dieses Tutorial. Ich sammelte eine Vielzahl von Informationen und startete dann die Komponente vom neuen Joomla! 2.5 nach 3.0 zu migrieren. Unten sind einige wichtige Informationen, die für die Migration genutzt wurden. Alle Informationen zur Migration können Upgrade-Versionen entnommen werden. Benutze "display_errors On" um Fehler leichter zu finden.

Migration von Joomla! 2.5 nach Joomla! 3.0:

Denke daran, dass du "Legacy" immer dann anhängst, wenn du JModel, JView oder JController direkt erweiterst. Wenn es indirekt ist (wie z.B. durch JModelList) brauchst du es nicht hinzuzufügen, da sich darum bereits gekümmert wurde. Ansonsten und die Tatsache, dass, wie lange angekündigt, veralteter Code entfernt wurde (ich schätze, dass das auf JParameter die größte Auswirkung hat), sollten Erweiterungen nur minimale Änderungen erfordern ... Obwohl du dir vielleicht die Änderungen an der Ausgabe, an denen Kyle arbeitet, ansehen willst. Wenn du natürlich eine alleinstehende Plattform-Applikation erstellen willst, solltest du mit dem neuen MVC und JApplicationWeb/JApplicationCLI arbeiten. Das Schöne an der Art wie wir das umgesetzt haben ist, dass die neuen Pakete bereits auf deinem Server zusammen mit dem CMS sind. (Elin in der Development Mailing-Liste)

Beispiele: DS Seit wir die DS Konstante in 3.0 entfernt haben müssen wir alle Vorkommen der Konstante in com_media ersetzen. Die unauffälligste Änderung ist sie einfach mit PHP's DIRECTORY_SEPARATOR zu ersetzen, da DS ein Alias für diese Konstante ist.

(joomlacode)

if(!defined('DS')){
define('DS',DIRECTORY_SEPARATOR);
}

//$controller = JController::getInstance('HelloWorld');
$controller = JControllerLegacy::getInstance('HelloWorld');

//class HelloWorldViewHelloWorlds extends JView
class HelloWorldViewHelloWorlds extends JViewLegacy

class HelloWorldController extends JControllerLegacy

class HelloWorldModelHelloWorld extends JModelItemLegacy

class HelloWorldModelUpdHelloWorld extends JModelFormLegacy

JRegistry::getValue() now is JRegistry::get()

//Convert sample to JRegistry with LoadJSON - Sample from Joomla! 3.0 sourcecode

//				$params = new JRegistry;
//				$params->loadJSON($this->item->params);
//				$this->item->params = $params;

				$params = new JRegistry;
				$params->loadString($item->params);
				$item->params = $params;

Hier ist der Quellcode: http://joomlacode.org/gf/project/hellojoomla3/frs/

Neues MVC in Joomla! 3.0

"Version 12.1 der Plattform führte ein neues Format des Model-View-Controller-Paradigmas ein. Im Prinzip sind die Klassen JModel, JView und JController nun Schnittstellen beziehungsweise die grundlegenden abstrakten Klassen sind nun JModelBase, JViewBase und JControllerBase. Zudem wurden alle Klassen vereinfacht, indem viele Verkopplungen mit dem Joomla! CMS gelöst wurden, da dies unnötig für eigenständige Joomla! Plattform-Anwendungen war." ... Joomla! Platform Manual MVC

Mitwirkende