2014-04-29 11 views
11

Ich bin neu sowohl Angular als auch Joomla, dass ich atm lernen bin. Was ich frage mich ist - ist es möglich, Angular JS-Anwendung in Joomla zu integrieren? Von dem, was ich über Joomla gelesen habe, verstehe ich, dass dieses CMS es einfach macht, Artikel zu erstellen und Inhalte und Menüs im Admin-Panel zu verwalten. Da die Angular JS App jedoch selbst eine Anwendung ist, funktioniert eine Artikelseite natürlich nicht. Wie gehen die Menschen damit um?Wie zu integrieren AngularJs App in Joomla

über Angular App:

My Angular App ein bisschen ähnlich die Dan Wahlin's Customer Manager App ist, die eine separate MySQL DB für diese App hat und für serverseitige Verarbeitung auf Apache mit PHP.

Grund für den Versuch Angular JS mit Joomla zu integrieren:

Das Haupt Wesen, Joomla bietet die Benutzerregistrierung Features, die Rechteverwaltung für Benutzer, etc .. aus der Box, und ich plane die Installation Mitgliedschaftserweiterung dazu. Ich möchte nur, dass die bezahlten Mitglieder Zugang zur Angular App haben. Das versuche ich zu erreichen.

Was ich bisher erforscht:

1) I in directPHP Verlängerung sah, wenn der Winkel JS App sehen kann mit dieser ext eingefügt werden. Aber ich denke nicht, dass das funktionieren wird und es auch nicht der richtige Weg ist.

2) Auf der Suche nach mehr, stieß ich auf diese Joomla Tutorial und ich bin mir nicht sicher, ob das der Weg ist, damit zu gehen. „Eine MVC-Komponente Entwicklung“: http://docs.joomla.org/Developing_a_Model-View-Controller_%28MVC%29_Component_for_Joomla!2.5

Wenn jemand mich auf diese führen kann, wird mir enorm helfen:

1) Eine Übersicht darüber, wie der Winkel App kann mit Joomla integriert werden, was getan werden muss, , die Anforderungen, etc ... Ich verstehe, dass das Erklären dies über den Rahmen von SO hinausgehen wird, aber einige Hinweise hier werden helfen.

2) Zeigen/führen Sie mir den Weg dorthin, wo ich mit dem Lesen beginnen muss, um dies zu erreichen. Ich habe versucht, zu diesem Thema zu googeln und ich kann kein Tutorial finden, das zeigt, wie man Angular und Joomla integriert.

+0

Eckig sitzt auf einem RESTful Server, also wenn Joomla es bietet, bist du sicher - obwohl ich mich in den Fuß schießen würde, bevor ich eine einzige Zeile Joomla schreibe, aber das ist Geschmackssache. – moonwave99

+0

Dies ist ein Beispiel, das mit einer eigenständigen Joomla-Anwendung mit angular.js https://github.com/elinw/jwc2012-tasks/tree/jwc2012-final erstellt wurde. – Elin

+0

Danke Elin. Ich werde in den Link schauen. Die letzten paar Tage habe ich ein paar mehr darüber gelesen und ich werde jetzt versuchen zu sehen, ob es möglich ist, die eigenständige Angular App als Joomla-Komponente hinzuzufügen. Ich lese gerade die Dokumentationen zum Erstellen einer Komponente. Nicht sicher, ob es der richtige Weg ist oder ob es funktionieren wird. – Neel

Antwort

23

Endlich konnte ich AngularJS App mit Joomla integrieren. Es war eigentlich viel einfacher als ich dachte. Meine Angular App ist eine Standalone-App und ich benutze nur Joomla für Benutzerregistrierungen, für kostenpflichtiges Mitgliedschaftsprogramm, Newsletter versenden etc .. Daher möchte ich, dass Joomla nur dann Zugriff auf meine Angular App gibt, wenn sie die richtigen Benutzerberechtigungen haben. Um diese 2 zu integrieren, habe ich folgendes:

1) I die Dokumentation auf lesen eine MVC Component für Joomla Entwicklung und versucht zu verstehen, wie das MVC-Komponente funktioniert: http://docs.joomla.org/J3.3:Developing_a_MVC_Component

2) Ich habe dann ein Komponente für diese Angular App. Das Erstellen dieser Komponente war wirklich einfach, da ich die Tools hier verwendet habe: http://www.component-creator.com/

3) Ich habe dann die Komponente zu Joomla hochgeladen und installiert es von Back-End.

4) Ich habe den Komponentenlink zum Menü hinzugefügt und die Berechtigungen dort festgelegt, sodass nur die registrierten Benutzer auf den Menülink der App zugreifen können.

Das ist es! Es hat danach funktioniert. Ich war überrascht, wie einfach es ist, die Angular-App als Komponente in die bestehende Joomla-Installation zu integrieren. Die einzigen Dinge, die ich in meiner Angular App machen muss sind:

1) Bearbeiten Sie den relativen Pfad in der App, so dass der Pfad von der index.php-Datei von joomla statt der Indexdatei der Angular-App stammt.

2) Korrigieren Sie die Klassenkonflikte, die aufgrund von Konflikten zwischen Bootstrap und Joomla-Vorlage auftreten können.

Dies ist mein erster Versuch, seit ich Joomla sehr neu bin. Ich hoffe, dass dies anderen hilft, die sich vielleicht genauso wundern, da ich so verloren war, als ich anfing. Die Joomla-Dokumentation ist ziemlich gut und hat mir dabei sehr geholfen.

Happy Coding!

+0

Wie wurde das AngularJS-Framework zum Joomla-Framework hinzugefügt, damit Ihre AngularJS-App ordnungsgemäß funktioniert? – Ryan

+0

Die Angular App wird in Joomla selbst als eigenständige Komponente eingebettet. Ich füge die Angular FW und alle anderen benötigten Dateien zu Joomla hinzu, indem ich die Methode '$ doc-> addScript' verwende, die aus den PHP-Dateien der Angular-Komponente aufgerufen wird. – Neel

+0

Ich wusste nie, dass es so eingerichtet werden kann. Bitte, wenn Sie einen Link zur Beispieldateistruktur erstellen können, die großartig sein wird. Ich habe die Komponente von Component-creator.com erstellt und die Komponente funktioniert. Allerdings kann ich angularjs nicht zur Ansicht hinzufügen .. danke –