Table of content
Manuelles Herunterladen-Installieren-Aktualisieren von TYPO3 Core & Extensions
Arbeiten Sie immer noch auf die alte Art und Weise, um TYPO3 & Extensions einzurichten? Angenommen, Sie wollen ein neues TYPO3 Projekt starten, wie machen Sie das? Gehen Sie zu typo3.org und laden Sie das neueste Paket (von TYPO3 core & extensions) herunter, entpacken Sie das Paket, kopieren Sie den Ordner in Ihr Serververzeichnis, installieren Sie es, führen Sie es aus, konfigurieren Sie es, richten Sie es ein, usw.. Igitt, zu zeitaufwendig und ineffizient für eine einfache TYPO3-Einrichtung. Und dann fragen Sie sich auch noch nach den folgenden Punkten
- Wie steht es um die Versionsabhängigkeit von TYPO3 Core & Extensions?
- Was, wenn Sie viele TYPO3 Extensions installieren wollen? Dann müssen Sie ständig die Abhängigkeiten überprüfen, herunterladen, installieren, konfigurieren und so weiter.
- Wie man den TYPO3-Kern und viele TYPO3-Erweiterungen aktualisiert - Wieder eine lange Reise mit dem Überprüfen von Abhängigkeiten, Herunterladen, Installieren/Aktualisieren etc etc etc....die Liste ist lang!!
Es gibt eine Möglichkeit, diesen schlechten Arbeitsablauf zu überwinden. Lassen Sie uns Ihnen vorstellen: Der Composer. Alles, was Sie tun müssen, ist, einige Befehle auf das Terminal anzuwenden und eine Datei zu konfigurieren - der Composer kümmert sich um den Rest.
Kennen Sie das Composer Repository?
Composer - Der Abhängigkeitsmanager für PHP. Haben Sie schon einmal von https://getcomposer.org/ gehört? Composer ist ein Tool für die Verwaltung von Abhängigkeiten in PHP. Es erlaubt Ihnen, die Bibliotheken anzugeben, von denen Ihr Projekt abhängt, und es verwaltet (installiert/aktualisiert) sie für Sie.
Systemanforderungen:
- OS: Linux/Unix/OSX/Windows
- Version: PHP 5.3.2 +
- PHP settings: Einige empfindliche PHP-Einstellungen und Kompilierungsfahnen sind ebenfalls erforderlich.
- Versioning System: git, svn, fossil oder hg, je nachdem, wie das Paket versionskontrolliert ist.
Wie wird der Composer eingerichtet?
Installieren und konfigurieren Sie den Composer mit den folgenden Schritten:
Step 1: Composer installieren
Laden Sie den Composer herunter und installieren Sie ihn, indem Sie den Anweisungen auf https://getcomposer.org/download/
Step 2: composer.json definieren
Erstellen Sie eine composer.json, die Ihre Abhängigkeiten definiert. Beachten Sie, dass dieses Beispiel nur eine Kurzversion für Anwendungen ist, die nicht als Paket veröffentlicht werden sollen. Zur Erstellung von Bibliotheken/Paketen lesen Sie bitte die Dokumentation.
{ "require":{ "monolog/monolog": ">=1.0.0" } }
Step 3: Laufen lassen
Composer-Befehl ausführen: php composer.phar install
Step 4: Browse
Browse for more packages on Packagist.
CWeitere Details wie die globale Installation des Composers, die Aktualisierung des Composers und mehr finden Sie unter getcomposer.org/doc/00-intro.md
Was ist das TYPO3 CMS Composer Repository?
getcomposer.org ist ein Composer-Repository, mit dem Sie den TYPO3 CMS-Kern und die Erweiterungen einschließlich der Abhängigkeiten über den Composer installieren können. Suchen Sie nach verfügbarenTYPO3 Extensions Paketen unter https://composer.typo3.org/ satis. html
Wie benutzt man den TYPO3 CMS Composer für TYPO3 Core & Extensions?
Wir zeigen Ihnen, wie Sie den Composer schnell nutzen können. Die TYPO3 Core - Base Distribution können Sie mit den folgenden Schritten herunterladen:
Schritt 1: Download der TYPO3 CMS Base Distribution
the latest "stable" release (7.6)
Command: composer create-project typo3/cms-base-distribution CmsBaseDistribution
the "dev" branch (8.1)
Command: composer create-project typo3/cms-base-distribution CmsBaseDistribution dev-master
the "dev" 7.6 branch
Command: composer create-project typo3/cms-base-distribution CmsBaseDistribution 7.6.x-dev
Schritt 2: Zusätzliche TYPO3-Pakete/Erweiterungen hinzufügen
Now, let’s add TYPO3 extensions too through composer. The commands must run inside the CmsBaseDistribution directory.
# Add a CMS extension into typo3conf/ext. composer require typo3-ter/news -> if asked for a version constraint, answer with *. # Add a package from outside the CMS world into Packages/Libraries # Notice: Packages/Libraries/autoload.php will need to be included in your code. composer require monolog/monolog # Personalize your composer.json file to your needs. edit composer.json
Die Verwendung des Composers zur Installation von TYPO3 CMS ist ziemlich einfach, Sie müssen nur das benutzerdefinierte Composer-Repository in Ihr composer.json. Nachdem Sie dies getan haben, können Sie den Core und / oder die Erweiterungen mit dem üblichen Composer-Versionierungsformat anfordern. Im folgenden Beispiel erhalten Sie so immer den aktuellen 7.6.x Kern von TYPO3 CMS, die aktuelle Version der News (inklusive möglicher Abhängigkeiten!).
Hinweis: Achten Sie darauf, die Unterstriche zu ersetzen "_" with a dash "-" im Nebenstellenschlüssel. Zum Beispiel, die Erweiterung "tt_products" wird geschrieben als "tt-products" in the composer.json.
{ "repositories": [ {"type": "composer", "url": "https://composer.typo3.org/" } ], "require": { "typo3/cms": "^7.6.9", "typo3-ter/news": "^3.2.5" }, "extra": { "typo3/cms": { "cms-package-dir": "{$vendor-dir}/typo3/cms", "web-dir": "web" } } }
Haben Sie eine eigene maßgeschneiderte TYPO3-Erweiterung? Es wird empfohlen, Ihre eigene composer.json-Datei in Ihre Extension einzufügen, um auf der sicheren Seite zu sein, da TYPO3 CMS sich mehr und mehr auf Composer verlassen wird, um Abhängigkeiten zu handhaben. Die Datei muss sich im Stammverzeichnis Ihrer Erweiterung befinden und muss wie folgt aussehen:
{ "name": "vendor-name/my-ext-key", "type": "typo3-cms-extension", "description": "Write down your description of extension", "homepage": "https://yoursite.com", "license": ["GPL-2.0+"], "keywords": ["TYPO3 CMS", "keyword1 keyword2"], "support": { "issues": "https://forge.typo3.org/projects/extension-my_ext_key" }, "require": { "typo3/cms-core": "^6.2.14 || ^7.6.0" }, "autoload": { "psr-4": { "VendorName\\MyExtKey\\": "Classes/" } }, "replace": { "my_ext_key": "self.version", "typo3-ter/my-ext-key": "self.version" } }
Der Vendor-Name muss einer der Ihren sein. Er darf nicht "typo3" sein, der für Core-Erweiterungen reserviert ist. Im TYPO3-Wiki gibt es einige Hinweise zu Konventionen in Bezug auf Namespaces.
Sample composer.json
{ "repositories": [ { "type": "composer", "url": "https://composer.typo3.org/" } ], "name": "NITSAN/composer-example", "description" : "TYPO3 Core & News extensions example composer.json.", "license": "GPL-2.0+", "require": { "typo3/cms": "^7.6", "typo3-ter/news": "^4.0" }, "extra": { "typo3/cms": { "cms-package-dir": "{$vendor-dir}/typo3/cms", "web-dir": "web" } } "replace": { "ext_news": "self.version", "typo3-ter/ext-news": "self.version" }, "autoload": { "psr-4": { "GeorgRinger\\ExtNews\\": "Classes" } }, }
Referenzen für TYPO3 Composer:
- http://Getcomposer.org
- http://Composer.typo3.org
- https://usetypo3.com/typo3-and-composer.html
- http://insight.helhum.io/post/130812561790/changes-in-class-loading-in-typo3-7lts
- https://typo3.slack.com/messages/typo3-cms-composer/
- http://insight.helhum.io/post/130876393595/how-to-configure-class-loading-for-extensions-in
- https://wiki.typo3.org/Composer
Verwenden Sie den Composer, um schnelle und intelligente TYPO3-Projekte zu erstellen.
Ansprechpartner für Internetagentur und TYPO3 Projekte
Sven Thelemann
Servicepartner - Deutschland
Comments and Responses
Be the First to Comment