Viele haben Probleme beim verkuppeln von Joomla und phpList.
Ich selbst habe Monate verschwendet und mich durch sämtliche Tutorials gekämpft, ohne Erfolg. Schlussendlich habe bin ich durch Zufall auf einen Thread im Web gestoßen, der genau dieses Thema behandelt. Die erhältliche Bridge arbeitet meiner Meinung nach eher schlecht als recht. Und so mancher möchte einfach seinen eigenen Code verwenden um simpel an einer Liste anmelden zu können. Genau das wollte ich!
Klar hätte ich die üblichen Komponenten verwenden können, aber wer schon mal mit phpList gearbeitet hat, wird die Funktionen und Stabilität zu schätzen wissen.
Zumal es einfacher ist die Daten einzelner Listen zu konsolidieren.
Ich beschreibe hier den Weg, wie man sich mit nur einer einzelnen Inputbox und einem Submit-Button an einer phpList-Liste anmeldet.
Vorbereitungen:
installiertes phpList
installiertes Joomla (nicht zwingend erforderlich!)
phpList Handbuch(geöffnet)
Los gehts:
Wenn Ihr euch nur an einer bestehenden Liste anmelden wollt,
entfällt das erstellen einer neuen Liste.
Erzeugt eine neue Anmeldeseite in der phpList Konfiguration.
Gebt ihr eine Namen und richtet sie design-technisch nach euren Wünschen ein.
Alles was Ihr hier an Radio-Buttons klicken müsst, ist bei "Bestätigung".
Dort wählt Ihr "keine E-Mail Bestätigunganzeigen".
Warum? Weil wir ja nur ein sichtbares Inputfeld verwenden wollen.
Die restlichen Möglicheiten wie: HTML-Mails etc., lassen sich mit versteckten
Feldern realisieren.
Speichern fertig.
Nun zum HTML/JavaScript-Code.
In euren Joomla-Beitrag/-Modul kommt nun folgendes:
Ich gehe hier nicht weiter auf das JavaScript ein. Kommt aus der GOOGLE und prüft ob eine E-Mail Adresse eingetragen wurde oder nicht. Also ziemlich rudimentär.Code:<script language="Javascript" type="text/javascript"> var fieldstocheck = new Array(); fieldnames = new Array(); function checkform() { for (i=0;i<fieldstocheck.length;i++) { if (eval("document.subscribeform.elements['"+fieldstocheck[i]+"'].value") == "") { alert("Please enter your "+fieldnames[i]); eval("document.subscribeform.elements['"+fieldstocheck[i]+"'].focus()"); return false; } } return true; } function addFieldToCheck(value,name) { fieldstocheck[fieldstocheck.length] = value; fieldnames[fieldnames.length] = name; } </script> <form method="post" action="http://ww.xyzabc.de/lists/?p=subscribe&id=5" name="subscribeform"> Email:<input type="text" name="email" value = ""><br> <script language="Javascript" type="text/javascript">addFieldToCheck("email","Email Address");</script> <input type="hidden" name="list[1]" value="signup" /> <input type="submit" name="subscribe" value="Subscribe" onClick="return checkform();"> </form>
Jeder kann das Ding erweitern, beispielsweise um eine Prüfung auf valide Domains etc.!
Zum HTML-Code
Grundsätzlich erzeugen wir ein Formular und schicken den Input an die Liste unserer
phpList Installation.
Wenn Ihr nur eine Anmeldeseite habt, reicht dieser Code
Bei mehreren Seiten kommt dieser Code ins Spiel.Code:<form method="post" action="http:/mysite.com/lists/?p=subscribe" name="subscribeform">
Um die ID der entsprechenden Anmeldeseite heraus zu finden, seht einfach in die Adressleiste eures Browseres bei geöffneter Anmeldeseite!Code:<form method="post" action="http://mysite.com/lists/?p=subscribe&id=5" name="subscribeform">
Klar oder? Ein Input-Feld für die E-Mail Adresse und das JS zum überprüfen.Code:Email:<input type="text" name="email" value = ""><br> <script language="Javascript" type="text/javascript">addFieldToCheck("email","Email Address");</script>
Nun kommen wir zur Liste an der Ihr euch anmelden wollt.
Tragt die ID in ein verstecktes Feld ein.
Um Sicher zu stellen das der Benutzer sich für HTML- Mails anmeldet,Code:<input type="hidden" name="list[1]" value="signup" />
solltet Ihr zusätzlich ein verstecktes Feld einfügen.
Und jetzt alles abschicken!Code:<input type="hidden" value="1" name="htmlemail"/>
FertigCode:<input type="submit" name="subscribe" value="Subscribe" onClick="return checkform();"> </form>
Verbesserungen erwünscht!


LinkBack URL
About LinkBacks
Zitieren
Lesezeichen