Current version: 0.1

Diese Seite ist nur auf Englisch verfügbar. (Sie darf aber gerne auf Deutsch kommentiert werden.)

ContactNG is the next generation of contact forms! It is a very stylish and small form for your sidebar or a page. But although it is small, it is stuffed with features.

  • The contactNG form is fully themable and it comes with two very stylish skins.
  • It features a set of intelligent and unobtrusive antispam techniques.
  • Height and width of the Contact Form can be set via the admin panel, other options are also available.
  • You can easily create your own skins, there is even a button generator toolkit included.
  • The plugin is fully localized and comes with support for multilanguage plugins like Polyglot.
  • Comes with support for WPsyslog.

Overview

Installation

Download

Please consider coming back for a donation. You’ll support our efforts and receive a backlink.

Have problems unpacking archives? Try the latest 7zip.

  • Download it.
  • Unpack it and upload the folder cng to your plugins directory
  • Activate the plugin in your admin panel
  • Go to Options » contactNG and set the options
  • To actually display it:
    • If you want it in the sidebar (which it is primarily designed for): Open your sidebar.php and add the line <?php if ( function_exists('cngForm') ) cngForm(); ?> where you want the form to appear. (You might want to readjust height and width via the Options page.)
    • If you want it on a page: Create a new page with the title “Contact” (or whatever you like), and the content <!--cngForm--> (Other text can be around that line.)

Upgrading

If you are upgrading, delete the cng plugin folder from your wp-content/plugins directory, then proceed as described above. (Don’t forget to backup modifications and custom skins, and don’t forget to revisit the options after uploading.)

Screenshots

contactNG, default skin contactNG, dark skin

More screenshots will come soon.

Unobtrusive and intelligent anti-spam techniques.

contactNG features a number of anti-spam techniques, which prevent spambots from bothering you.
  • Input verification: Of course, it is veryfied that all mandatory fields are filled with appropriate values.
  • Honeypot: There is an empty input field hidden via CSS. It is invisible for the user and will even not be selected when tabbing through the form. Spambots however don’t read CSS, and they tend to fill all fields with just something, and when he fills this one: Gotcha!
  • Cookie-post-relation: The user gets a hashed and salted fingerprint (from a timestamp and his IP) via cookie, the same fingerprint (not hashed and salted) is inserted into the field. This means that a bot can’t just submit data through a POST request, but they must first retrieve the cookie and send it along with the form data. (It can happen that a user falls victim to this one when clicking backwards in the browser, but only in very rare situations.)
  • Submit timeframe: Between loading a page and submitting the form, at least 20 seconds must pass. A human reader will have to fill in all the fields, which takes time for thinking and typing. So if there is a robot clever enough to first retrieve page, then he still has to wait this time, which they usually don’t. Unfortunately (for the robot), the form expires after one hour.
  • Akismet: Finally, if a spambot should really succeed in bypassing all these filters, the message is scanned by Akismet (if installed).

As you see, we don’t even need CAPTCHAs and stuff to be on the bright side of life.

By the way, if you want to enjoy a little show of seeing spambots trying crack this form, download and install WPsyslog.

Creating skins

ContactNG comes with two beautiful default skins. But you can also create derivate skins. Both default skins come with a button generator and a skin development toolkit. Read the instructions in src/README.skins on creating new skins. It’s not too hard, and it’s really fun. Note: The button generator requires GD and TrueType support in PHP.

Translations.

This plugin has full multilinguality support. Included/available languages for both themes are:

  • English (default)
  • German (de_DE, included)

Translators for other languages are very welcome! (Only one theme needs to be translated, at the moment, all language-related items are identical.) Please contact us, if you want to do a translation.

What else?

Feedback is welcome via the my contactNG form ;-) , but you can also just leave a comment on the plugin’s page. Enjoy!

42 Kommentare zu „ContactNG – the next-generation contact form“

  1. Phillip am 16. Juli 2007 um 21:38 #

    Hi, wenn ich das Plugin aktiviere, bekomme ich folgenden Fehler angezeigt, was kann ich tun ?

    Phillip

    Warning: preg_replace(): Compilation failed: PCRE does not support \L, \l, \N, \P, \p, \U, \u, or \X at offset 3 in /hp/ag/ad/sf/www/book/wp-content/plugins/cng/cng.php on line 52

  2. Alex Günsche am 16. Juli 2007 um 21:52 #

    Deine PCRE-Version ist offenbar zu alt. Was Du machen kannst, ist in Zeile 52 \pL durch a-z ersetzen, allerdings werden dann akzentuierte Zeichen wie Umlaute ausgefiltert.

  3. marc am 17. Juli 2007 um 04:48 #

    Thanks making the replacement (\pL with a-z) seems to turn the trick.

  4. Klaus am 17. Juli 2007 um 08:41 #

    Hallo Alex,
    Glueckwunsch und Danke fuer dieses Werkzeug. Einfach Klasse !

  5. John Stevens am 17. Juli 2007 um 10:37 #

    Having problems with both your zip and tar.gz files.
    They seem to be corrupted.
    Many thanks.

  6. Alex Günsche am 17. Juli 2007 um 10:44 #

    Have you tried the .7z or the .tar.bz2? Have you tried 7zip?

  7. Wkung am 17. Juli 2007 um 10:44 #

    Das kleine grau z wird nicht angezeigt. Außerdem wird das Pop-up-Fenster, etwa wenn man zu wenig Text geschrieben hat, von den Imgaes im Content überlagert, wenn da gerade eines ist. Idee, wie man das beheben kann? Wäre cool, da das form wirklcih schick ist! VG.

  8. Alex Günsche am 17. Juli 2007 um 10:48 #

    Das ganze Formular ist bei Dir ein wenig zerhauen. Anscheinend stören einige Eigenschaften Deines Hauptstylesheets die Darstellung des contactNG-Formulars.

  9. Wkung am 17. Juli 2007 um 10:49 #

    Das geht ja schnell :-) DANKE!

  10. Wkung am 17. Juli 2007 um 10:51 #

    Schalte das Plugin erst mal ab. Da ich sehr viel Eigenes in meinen CSS habe, muss ich da mal sehen. Für Dein Plugin wäre es praktisch, wenn es “irgendwie” den Content - mit all seinen CSS - “überlagern” würde. VG.

  11. Alex Günsche am 17. Juli 2007 um 10:58 #

    Für Dein Plugin wäre es praktisch, wenn es “irgendwie” den Content - mit all seinen CSS - “überlagern” würde.

    Das habe ich auch schon überlegt, allerdings wieder verworfen. Wenn ich das täte, müsste ich für jedes Element eine Riesenlatte an Eigenschaften definieren und hätte dann für so ein kleines Kontaktformular eine CSS-Datei von 50kB. Dann sollen lieber die Webmaster ein bissel an der Integration arbeiten — oder es bleiben lassen.

  12. Baris Unver am 17. Juli 2007 um 12:04 #

    Sending the Turkish translation today.

  13. Martin am 17. Juli 2007 um 13:46 #

    Great plugin, just wondering it is going to have widget support in the near future :)

  14. Alex Günsche am 17. Juli 2007 um 15:19 #

    Widgetizing is on my list, though not at position 1.

  15. John Stevens am 17. Juli 2007 um 16:25 #

    Thank you, Alex Gunsche.

    The 7-zip worked fine and all installed in a few moments and it works.

    Thank you for what seems a nice plugin.

    Best wishes
    John Stevens

  16. Martin am 18. Juli 2007 um 05:45 #

    Thanks for the reply Alex.

    Martin.

  17. Glenn am 2. August 2007 um 02:17 #

    Very nice plugin, I’ll add my vote for a widget version.

  18. poea am 2. August 2007 um 07:35 #

    The form is difficult to see, too light or too dark. maybe you can give more color. I think image spam protection is good to add in this plugins form.

  19. Ersin am 4. August 2007 um 22:15 #

    hallo leute,

    ich verstehe nur Bahnhof :( .
    kann man mir bitte sgane wie ich mien steam also css auf Tükisch einstellen kann , und das bitte schritt weise wenn es geht ?

    vielen Dank für eure Hilfe :)

  20. Alex Günsche am 5. August 2007 um 09:49 #

    Hallo Ersin, was meinst Du mit “Steam”?

  21. Ersin am 5. August 2007 um 11:30 #

    Hi Alex Günsche, ich meine damit das spiel css (counter strike source ) in steam.
    Also wenn man bei steam die sprache ändert kann man im spiel alle sounds dann auf der eingestellten sprache hören, wie z.b. geht in Deckung schreit der spiler der grad eine granate wirft und bei einer geänderten sprache hört man den sound in der sprache was eingestellt wurde.

    Und da steam kein Türkisch in der language options hat dachte ich mir das man mir vielleicht hier HELFEN kann oder ?

  22. Alex Günsche am 5. August 2007 um 11:33 #

    Hallo Ersin, da bist Du hier leider völlig falsch. Diese Seite hat mit Counterstrike rein gar nichts zu tun. Hier geht es um WordPress und WordPress-Plugins. Bezüglich Deines Problems musst Du Dich leider anderweitig umsehen.

  23. Ersin am 5. August 2007 um 17:19 #

    hmmmm schde :( dachte weil ich da etwas mitbekommen habe von css ,das es um counter strike source geht :(

    Naja was solls aber trotzdem Vielen Dank :) ,war wirklich nett von dir und viel glück in deiner zukunft :)

  24. Jay am 14. August 2007 um 19:14 #

    Clicking the “Save” button doesn’t include the site name in the URL, just this

    http://wp-admin/options-general.php?page=cng/cng.php

  25. Alex Günsche am 14. August 2007 um 23:26 #

    Are your settings for site URL and blog URL in Options complete?

  26. Jay am 16. August 2007 um 13:26 #

    Are your settings for site URL and blog URL in Options complete?

    Yes, just checked.

  27. Alex Günsche am 20. August 2007 um 09:57 #

    What other plugins do you have in use? Which WP version are you using? What is your webserver?

  28. brooke am 28. August 2007 um 01:03 #

    this looks like a great plugin! does it support multiple contact forms for multiple email addresses? like for use on blogs with multiple authors..

  29. Angie Walton am 8. September 2007 um 04:04 #

    I have installed your widget in the sidebar for a site that I have designed, but, every time I try to test it out to send an email it gives me an error and says that a form can’t be submitted after an error, to reload etc. and then my page is stuck with that info, even when I try to refresh it etc.. I didn’t make any mistakes or errors in creating the email, so I am not even sure what is triggering this reaction. Any help would be appreciated. I don’t want to remove the code as it serves a great purpose. ;-) thank you. Okay, since emailing that last bit and now posting it here, I took the site live by moving the appropriate files into the root directory (index and htaccess etc.) and a separate issue occurred, the form won’t display properly and can’t find its image files, so I had to deactivate for now until I can get this resolved. Hopefully you can help me out. I deactivated the plugin, removed it from the server and then installed a fresh one, but, no change, and my settings remained as they had been set on the deleted version. That said, I’m assuming that perhaps the code writes a path to the images in the database, along with the options that are set and when the path changes, this is not being updated in the database. As well, the options are not being deleted when the plugin is removed. Any advice on how to make this work?

  30. Alex Günsche am 8. September 2007 um 09:53 #

    Hi Angie,

    I have installed your widget in the sidebar for a site that I have designed, but, every time I try to test it out to send an email it gives me an error and says that a form can’t be submitted after an error, to reload etc

    Ok, this is an error that other people also reported, but I can’t reproduce it. I even don’t understand it, because all it does is compute the identical values by identical methods, and I don’t understand why this fails. Maybe, if you can tell me a bit about your environment (Server software, PHP version, etc.), I can find a clue.

    However, there’s a workaround for this problem: You have to comment ll. 114-118 in the file cng.php, which will deactivate this particular check.

    and a separate issue occurred, the form won’t display properly and can’t find its image files, so I had to deactivate for now until I can get this resolved.

    I don’t know what exactly is the problem, but could you just go to the settings and re-enter all values and save again?

  31. Angie Walton am 11. September 2007 um 04:35 #

    Hi Alex,
    I have commented out the appropriate lines, but, don’t know if all is well yet, as I am still having the second issue. To help with figuring out what is going on with the first issue, I can tell you that I am on a linux apache server, running php 4.4.7 and mysql 5.0.27. If you would like to see the issue at hand for yourself I could arrange a time with you and uncomment the files and let you in to the backend to see it reproduced here. Just let me know. On the second issue, the problem is that when I moved the site from a subdirectory into the root (only the core file though, the main wordpress files remain in the subdirectory) the code is not finding the images to create the skin. I am just seeing the little blue question mark boxes that show up when an image isn’t available, the input boxes and text that says ‘Please do not enter anything here: “. I deleted the plugin and reinstalled it, but, the issue persisted. As I mentioned before, my preferences in the options panel remained as well, even though I had deleted the plugin and reinstalled it. What this is leading me to believe is that some tables were created in the database for cng and one of those tables tells the function a path in which to find the image files, as well as the options set in the cng admin. When the plugin is removed and put back new, the table data is found and not replaced with the new info. I am going to dig into the database and see if I can find the tables, but, your help in knowing if this is a possibility and potentially where to look would be greatly appreciated. ;-) I love this plugin, seriously, and refuse to give up finding the problem.

  32. Alex Günsche am 11. September 2007 um 23:05 #

    Angie, I’ll have a look the next days, but I have to say that I’m extremely busy, so it can take some days. I’m glad you like the plugin, and I am sure the issues can be solved.

  33. Angie Walton am 13. September 2007 um 08:46 #

    Darnit. I have spent hours and hours and hours and hours …. and I just don’t know how to fix it. I am sure it has something to do with the fact that my index.php file is in root while remaining wordpress files are in subdirectory ( standard WP stuff) and the fact that you have absolute paths etc. defined in the code. Not positive, but, only explanation I can come up with for why the code cannot find its skins. Unfortunately I am going to have to give up now. I have to present the site to my client who is an art gallery tomorrow, and must have a contact form in there. The little blue squares with ?’s and text stating please do not use this just won’t work. Such a shame, this was truly perfect for my needs and I even designed my entire sidebar around it. Sigh.

  34. Angie Walton am 14. September 2007 um 02:01 #

    No need to look. I understand being busy … trust me. However, for those of us not quite as adept at writing code it is extremely frustrating to receive such a nice piece of work only to not have it function as it should. I gave it one last shot today and found that what has taken me days and days of pulling my hair out and getting fatal database errors to fix, probably would have taken you as long as excusing yourself to the restroom, perhaps not even that long. That said, please don’t mistake my frustration for a lack of gratitude. As I said before, I love this peice of code you have written. I certainly wouldn’t have spent all this time trying to fix it if I didn’t. At least I learned a few more things along the way.
    So, for those of you that find yourself in the same position as myself, i.e. anyone who has a home url and a separate wordpress url, here is the very very very simple fix to this:
    In the cng.php file:
    1. Change all uses of the deprecated reference to “siteurl” which returns the value of your home url when used with bloginfo, to “wpurl”, which returns your site url.
    2, In both the default and the dark skin folders, index.php files, do the same.
    Yep, that’s it.
    Nothing like a week’s work. I hope this will save someone else from the same fate.

  35. harriet am 29. Januar 2008 um 23:53 #

    hi, kann das tool zwar installieren aber wenn ich auf senden drücke lädt er und zeit nachher das formular wieder leer an aber eine email wurde nicht versendet das selbe hab ich manchmal auch bei anderen formularen gehabt nur intouch ging früher mal…

    was muss ich tun damit das tool auch bei mir geht?

    vielen dank vorab

    achja ich bin bei strato ….

  36. Alex Günsche am 31. Januar 2008 um 13:55 #

    harriet: Wenn Du mit verschiedenen Kontaktformularen Probleme hast, solltest Du evtl. mal Deinen Hoster fragen, ob an dem Server was nicht stimmt.

  37. Dustin am 23. Februar 2008 um 16:35 #

    Great plugin…any way of using it with an html site? I decided to not use Wordpress after my site was hacked. Any help would be GREATLY appreciated.

  38. Alex Günsche am 23. Februar 2008 um 17:42 #

    Sure, take the code an build a standalone contact form. Or hire somebody who does it for you.

  39. RedMoze am 27. Februar 2008 um 11:17 #

    very nice plugin. thks.

  40. baron am 9. April 2008 um 02:27 #

    hi there.com plugin but :

    Does anybody know if tis script is compatible with Wordpress 2.5?

    Thanks in advance for any help on this!

  41. Alex Günsche am 9. April 2008 um 09:37 #

    I haven’t tested it, but it should work.

  42. Caner am 29. August 2008 um 12:49 #

    Hi alex it is ver nice plugin but i have a problem i set up this plugin but every time when i try to use this ,it shows me an error page which says you shold wait for 20 seconds what should i do to prevent this

Please support our OpenSource developments. Donate some bucks! Use the form in the upper right of this page, and get a backlink!

Artikel kommentieren

 (wird nicht veröffentlicht)


Kommentare können bis zu 30 Minuten nach dem Veröffentlichen bearbeitet werden.