Contao-Camp 2024
Ergebnis 1 bis 11 von 11

Thema: Contao Erweiterungsentwicklung mit PhpStorm

  1. #1
    Jayster
    Gast

    Standard Contao Erweiterungsentwicklung mit PhpStorm

    Ich habe mir (endlich) die Testversion von PhpStorm geholt. Mit dieser IDE möchte ich in Zukunft meine Contao Erweiterungen erstellen.

    Nun ist, die Frage, wie man das am besten macht. Damit meine ich, was für Einstellungen man machen sollte, wie man ein Projekt anlegt und solche Sachen.

    Wie fange ich zum Beispiel am besten an? Wenn man in PhpStorm ein Projekt neu erstellt oder ein Projekt aus einem vorhandenen Ordner erstellt gibt es ja ein paar Sachen, die man auswählen muss.

    Könnt ihr mir vielleicht so eine kleine Schritt-für-Schritt Anleitung geben
    1. Für das Anlegen eines neuen Projekts
    2. Für das Verwenden eines bereits vorhandenen Ordners

    Es wäre gut, wenn ich im Projekt nur meinen Extension Ordner hätte, aber trotzdem die Contao Methoden im Autocomplete hätte (ich weiß nicht genau, ob das geht).

  2. #2
    Contao-Nutzer
    Registriert seit
    11.09.2016.
    Beiträge
    79

    Standard

    Interessant, an der gleichen Thematik bin ich auch gerade dran.
    Ich habe vor von Eclipse (PHP Version) zu PHPStorm umzusteigen, um damit primär an Contao Webseiten / Erweiterungen zu arbeiten.

    Also eine Schritt-für-Schritt Anleitung habe ich gerade auch nicht parat. Ich hatte aber keine Probleme mit dem Vorgehen ein vorhandenes Contao Projekt einfach in PHPStorm zu öffnen.
    Zuordnungen für die Logik der autocomplete Funktionen der IDE oder sonstige Einstellungen musste ich nicht tätigen, das ging alles weitgehend von selbst.
    Auf den ersten Blick funktioniert das Ganze bei PHPStorm auch sehr gut. Bei Eclipse hatte ich immer Probleme damit, dass hier und da immer irgendwas nicht richtig funktionierte (Stichword autocomplete bei JavaScript Dateien). PHPStorm scheint hier etwas stabiler und ausgereifter zu sein.

    Was mich jedoch extrem stört ist die Unterstützung von GIT. Hier hat Eclipse meiner Meinung nach ganz klar die Nase vorn. Die Unterstützung für Submodule z.B. habe ich bei PHPStorm bisher gar nicht gefunden. Und generell ist der Workflow bzw. die Übersicht die Eclipse bietet hier deutlich besser (staging view, Repository Übersicht etc).

    Also kurz gesagt: Contao im Dateisystem installieren / einrichten -> Projekt in PHPStorm öffnen / importieren -> fertig. Oder gibt es bei dir hierbei Probleme?
    Zu dem Zweiten was du schreibst: Du willst lediglich einen Unterordner (z.B. system/modules/my_plugin/) im Editor haben und den Contao Core "unsichtbar" im Hintergrund oder wie meinst du das?

  3. #3
    Jayster
    Gast

    Standard

    Zu dem Zweiten was du schreibst: Du willst lediglich einen Unterordner (z.B. system/modules/my_plugin/) im Editor haben und den Contao Core "unsichtbar" im Hintergrund oder wie meinst du das?
    Ja, genau. Das wollte ich bei 1. und 2. gerne so machen. Die Contao Dateien gehören ja nicht zu meinem Projekt. Ich will sie nicht bearbeiten, ich will nur an meinem Modul arbeiten. Ich frage mich, ob das möglich ist. Sonst bekomme ich ja immer Warnungen, wenn ich eine Methode verwende, die nicht in meinen Projekt Dateien steht.

    Bei der Option "Create Project from Existing Files" verwirrt mich das Fenster mit der Auswahl des Webservers ein bisschen. Was sollte ich da wählen, wenn mein Projekt Root mein Modul Ordner ist?

  4. #4
    Contao-Nutzer
    Registriert seit
    09.09.2009.
    Beiträge
    59

    Standard

    Du kannst auch den DocRoot auf den Contao-Ordner legen und die nicht benötigten Unterverzeichnisse excluden, dann werden die Ordner nicht für Codevervollständingung & Co. genommen.

  5. #5
    Jayster
    Gast

    Standard

    Danke für den Hinweis, Dean.

    Ich habe trotzdem noch den Verdacht, dass es irgendwie so gehen könnte, wie ich es mir vorstelle, also mein Modul als Projekt Root. Es scheint für andere Systeme zu gehen. Wenn man in PhpStorm ein Projekt als "WordPress Plugin" anlegt, kann man dort den Pfad zur WordPress Installation setzen.

  6. #6
    Wandelndes Contao-Lexikon Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    10.507
    User beschenken
    Wunschliste

    Standard

    So arbeite ich in Contao auch, wenn auch mit Zend Studio (Eclipse). Ein Projekt darin ist direkt das Verzeichnis der Erweiterung, und zusätzlich gebe ich an, das er eine Contao Installation includen soll. Somit funktioniert dann auch die Code Vervollständigung aus Contao / Symfony Teilen.
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  7. #7
    Jayster
    Gast

    Standard

    Danke, BugBuster. Wo kann man das angeben mit dem Include?

    [EDIT]
    Oh, verlesen, du benutzt ja Zend-Studio. Ich suche noch mal selber.

  8. #8
    Jayster
    Gast

    Standard

    Leider noch nicht gefunden. Ich kann zwar unter "External Libraries" den Pfad zur Contao Installation hinzufügen, dadurch passiert aber nichts.

  9. #9
    Contao-Fan Avatar von stefan.sl
    Registriert seit
    19.06.2009.
    Ort
    Iserlohn
    Beiträge
    352
    Partner-ID
    1371

    Standard

    Zitat Zitat von Jayster Beitrag anzeigen
    Bei der Option "Create Project from Existing Files" verwirrt mich das Fenster mit der Auswahl des Webservers ein bisschen. Was sollte ich da wählen, wenn mein Projekt Root mein Modul Ordner ist?
    Das hat mich anfangs auch irritiert. Geh einfach auf "Open" und navigiere zum Projektordner. PhpStorm legt dann automatisch das Projekt an und erkennt z.B. Composer. Remote Server etc. richte ich dann ein, wenn ich's brauche.
    Bei Shopware gibt es eine ganz gute Hilfe, wie man ein Projekt vernünftig anlegt: https://developers.shopware.com/deve...uide/phpstorm/ (passt natürlich nicht auf Contao, aber gibt trotzdem ein paar gute Hinweise)

    Ansonsten habe ich eine Dev-Contao-Umgebung, wo alle meine Module drinliegen. Projectroot ist der Contao-Root. Unter PhpStorm -> Preferences -> Version Control kannst du dann auch jeden einzelne Modul-Ordner mit seinem Git-Repo verbinden.

    Ob das jetzt letztlich der "best practice way" ist, weiß ich ncht. Aber es funktioniert

  10. #10
    Contao-Urgestein
    Registriert seit
    29.10.2009.
    Ort
    Magdeburg
    Beiträge
    2.020
    Partner-ID
    626
    User beschenken
    Wunschliste

    Standard

    Ja das geht. Es gibt dafür zwei Möglichkeiten:

    1. Contao und alle benötigten Abhängigkeiten als externe PHP Libraries manuell hinzufügen.

    2. Über Composer alle Abhängigkeiten pro Projekt installieren lassen. PHPStorm könnt damit gut klar.

    Letzteres ist mein klarer Favorit. Mit Unittests meistens sogar ein muss. Einziger Nachteil ist der belegte Speicherplatz.

    PHPStorm bekommt es inzwischen gut hin auch composer.json Einstellungen zu erkennen, wie Autoloading oder die PHP version

  11. #11
    Jayster
    Gast

    Standard

    Danke euch beiden. das hilft mir sehr weiter.

    @webstar: könntest du das bitte noch etwas ausführen.
    zu 1. Das habe ich versucht, aber wahrscheinlich falsch gemacht. Ich habe hier bei der Projekterstellung bei "Include Path" den Pfad zum Contao Ordner angegeben. Das hatte aber nicht den gewünschten Erfolg. Contao wurde mir auch nicht unter den External Libraries angezeigt, da war nur die PHP Runtime. Wie geht es richtig? Funktioniert es auch mit Contao 3?
    zu 2. Wie geht das? Hier bin ich noch komplett unerfahren.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •