Contact Form 7 Multi-Step Slider Form

Multi Step Sliding Form

BootStrap, CSS, Frank Thoeny, JavaScript, jQuery, PHP, PHP Frameworks, Website Developing, WordPress
Contact Form 7 Multi-Step Slider Form

Contact Form 7 Multi-Step Slider Form

It’s been 5 years since my attempt to find a solution for a multi step sliding forms with 3 separate WordPress plugins. I had something that worked as long as the plugins were never updated. Sadly enough, my hack became outdated and useless as plugins were updated. I had a couple of people contact me recently about using my multi step sliding form. My hack works on the same page without page reloads. They did not understand when the code hack did not work. The main reason because it’s outdated.

Nobody wants a hack. They want clean, reusable and supported WordPress plugins. Well now, that is what I look for as a WordPress developer. Amazingly enough, I am developing a clean, reusable and supported WordPress plugin. I promise it will be out soon.

My experience with custom designing themes and custom plugin development has given me a toolbox of awesomeness. I have 17 years of knowledge as a web developer. In those years, I have learned modern web development and best practices.

 

 

 

joomla logo

Joomla Template Creation

Frank Thoeny, Website Developing, WordPress

You may be wondering what I’ve been doing for the last couple months. Well, I have been working hard. I decided to sit down and wrap my head around Joomla. The Joomla platform is widely used by many Fortune 500/1000 companies for their websites. I already have my head fully wrapped around WordPress, but that’s just not enough. The more CMS platforms you know, the better. Joomla has built-in support for SEO, so it’s no wonder that Joomla is chosen by Website Developers over WordPress. WordPress can be built up to do everything Joomla does, but it’s so much easier to have it built-in and there are more options than you can shake a stick at.

Joomla Template Creation is somewhat different than developing a WordPress Theme for the most par, but on the other hand it’s still not too awful difficult. Directory structure is different, yet we are still working with PHP, HTML, CSS, JavaScript to create the new template.

XML files are what makes up the configuration for  templates. What I have done in my tutorial is use the Beez Theme as a demo.

Airstream MTV Lobby

Experience As a Freelance Web Coding Developer

Frank Thoeny, Website Developing, WordPress
Airstream MTV Lobby

Provided by MTV Lobby

Frank Thoeny completes website services at reasonable rate. As an experienced website developer, Frank Thoeny has developed over dozens of websites and maintained even more. I am Frank Thoeny a troubleshooter, problem solver and a website developer.

Frank Thoeny understands his profession! Frank has devoted 15 years of his life to web development. Frank Thoeny started developing in Y2K. His first app was a Century 21 listing board. Since then Frank Thoeny has gained more experience and skills as technology advanced. Frank Thoeny excels in experiences with Web Developing, Web Designing and Web Programming. Here are his safeguard guidelines as follows.

Create A Policy – Before you start having comments available whether it’s through a blog or a Twitter conversation, make sure you clearly outline the organization’s policy on commenting. I know it sounds excessive, but having some guidelines in place will ensure that you won’t be caught off guard.

Make sure it’s not libel – In the United States and in many countries around the world, truthful statements about another person are safe to publish. However, publishing outright lies with the intent to defame or injure the reputation of others is illegal.

Don’t Lash Out – It’s easy to respond quickly when someone makes you mad. The best thing to do however is keep your cool, no matter what the situation. You will come off as the better person for it.
Respond Publicly – If someone makes a negative comment, respond publicly to let others know how you’ve handled the situation. Maybe others were wondering the same thing, but didn’t want to ask. Being able to handle the situation shows that you (and the organization) are in control.

Respond Privately – This may seem the opposite to the point above, but let me explain. While some situations require a public response, others do not. If you are being harassed, you may not want the situation to play out over the blog. Also, if a negative situation is going back and forth many times, you should move that to a private conversation as to not interfere with your other posts/comments.

Respond in a Timely Manner – If you take too long to reply, people may think that silence is your answer. Try to respond as quickly as you can, even if just to say that you will be able to provide an answer/opinion shortly. That way people know that you are involved.

Be Clear and Concise – Nobody’s going to read a response that’s many paragraphs long. Keep your answers clear and concise and you will get your point across.

Contact to hire Frank Thoeny for web development.
https://frankthoeny.wordpress.com/frank-thoeny-contact/

mailboxes

Forms are Fantastic with “Ziptastic CSS and JQuery “

Frank Thoeny, jQuery, Website Developing, WordPress
mailboxes

provided by the USPS

Here’s my thoughts. This API is a great addition to any form on a website. I was reviewing the code and suggested to the author a code change in a recent email message. I think Chris Coyier is a fantastic demo creator and the author Andru Skoicescu followed through with a great idea. I downloaded the demo and can hardly wait to implement this on a website.

ATTENTION: AFTER BRINGING THIS TO THE AUTHORS ATTENTION HE FIXED IT AS I SUGGESTED.

download it from github. http://daspecster.github.io/ziptastic/index.html

You will see the line that says Ghetto. I don’t know about you, but I don’t like the word Ghetto in my code. Now my fix is below the commented out code.

if (firstReveal) {

    // Ghetto but without this timeout the field doesn't
    // take focus for some reason.
    //setTimeout(function() { $("#address-line-1").focus(); }, 400);

My Fix:

    $("#zip").blur();
    $("#address-line-1").show().focus();

}

If you had it hidden it from the previous step in the code then you need to show it before you can put the focus on the form field. This worked for me in Chrome. Let me know if this didn’t work.

Contact Form 7 Multi-Step Slider Form

How to create a WordPress multi-step slider with Contact Form 7

CSS, Frank Thoeny, PHP, Website Developing, WordPress
Contact Forms

Contact Forms

DEMO: NOT AVAILABLE

WordPress sliding form plugin is near impossible to find. I am Frank Thoeny, and I require a multipage/multi-step WordPress plugin and not only that one that will slide to the next form after submitting. I tried to use Breezing Forms, cForms, and a couple different content slider plugins that had potential. Well come to find out, they did not work in their current state for my needs. I would have to redevelop or reinvent the entire plugin from PHP and I don’t have time to do that. I starting to slam my fists and cussing like a sailor at my work, until I discovered that Contact Form 7 was my ideal plugin for exactly what need to be done. I have to give my thanks to a guy, coreyt808, that took time to develop an additional multi-step plugin that intermingles with CF7. https://bitbucket.org/coreyt808/contact-form-7-multi-step-module I was able to use jQuery to slide the form. I will give you the steps to develop a successful sliding form. It’s not as hard as you might think.

Download and Install all these Plugins.

Module Modifications

Now comes the tricky  part, but still not as hard as you might think. This includes additional modifications to the multi step multipage module, but only if you want the multi form sliding form. I’ll give you the line numbers to alter for the multipage multi step module.

  1. Open contact-form-multi-step-module.php file with your favorite editor.
  2. Go to line 64, where add_action is and comment it out with //. We are removing this action to suit our jQuery slider AJAX form.
  3. Go to line 59, where add_filter is and copy it.
  4.  Paste it at line 65 after you make a line return at line 64.
  5. What you just did was stop the multi step of step2 message filter and added the success filter which removes that unwanted success message on submit. We don’t want the success message on every form we submit, so we stopped it with a filter.

Now we have your Contact Form 7 plugins ready to go, but wait there is more to do.  Did you think it was that easy? Well it’s still not hard. There are just a few more thing to do. If you think you can handle it then let’s move forward. Open the wp-admin control panel and navigate your way to Contact Form 7. If you are not familiar with Contact Form 7 then you need to research online.

Create Forms with these names.

screenshot-1

  • Slide-1
  • Slide-2
  • Slide-3
  • Etc..

For a Multi-Step form:

screenshot-2

Add this to your first form [hidden step 1-5] if you have 5 forms in the series

  • [hidden step 2-5]
  • [hidden step 3-5]
  • [hidden step 4-5]
  • [hidden step 5-5]

Additional Settings

Scroll down to the bottom where you’ll find Additional Settings. In the textarea type in the following code snippet. This is jQuery script that does the slide animation. Simple, right?

 on_sent_ok: "(".slideForm").animate({scrollLeft: "+=960"},800, "swing")"

HTML Markup

The following HTML Markup need to be put on the page or header.

<div class="slideForm">

<div class="slides">

<?php echo do_shortcode("[contact-form-7 id=\"14\" title=\"Slide-1\"]"); ?>


<?php echo do_shortcode("[contact-form-7 id=\"16\" title=\"Slide-2\"]"); ?>


<?php echo do_shortcode("[contact-form-7 id=\"17\" title=\"Slide-3\"]"); ?>

  </div>

</div>

Do you want this on every page? In a widget or header? That is completely your decision. What I’m showing is my simplest sliding form that you might already have knowledge of.

CSS STYLES

Opps! almost forgot the CSS styles.

* Styles for slide form *
.slideForm {
    overflow: hidden;
    height: 340px;
    width: 100%;
}

.slideForm .slides {
    overflow: hidden;
    width: 4000px;
    height: 300px;
    list-style: none;
    margin:0;
    padding:0;
}
.wpcf7 {
    float: left;
    width: 960px;
    height: 290px;
    background: #33cccc;
    margin:0;
    padding:0;
    display: block;
}
span.wpcf7-not-valid-tip {
    top: 30px !important;
    left: 0;
    z-index: 100;
    background: #ccc;
    border: 1px solid #ff0000;
    font-size: 10pt;
    width: 280px;
    padding: 2px;
}

div.wpcf7-validation-errors {
    border: 2px solid #f7e700;
}

.wpcf7 label {width: 200px;}
.zipcode {width: 120px;}
.city {width: 120px;}
.state {width: 40px;}

Feel free to contact me frankthoeny@yahoo.com

PERL or Moodle Development for Pebber Brown

Frank Thoeny, Moodle, PERL, PHP, Website Developing, WordPress
Photo of Pebber Brown

Photo of Pebber Brown

Pebber Brown my guitar teacher appoched me, Frank Thoeny, about developing an educational LMS website. I was unsure of what platform we could use. Thinking about what I can do and how I can show some of my talents, I decided to use PERL as the foundation to develop the website. The first challenge was to come up with a module for logging in to the secure area of the site. This first hurdle was over come by going to CPAN and finding a module.

After such a long deliberation and I discovered the amount of work  that was involved we both opted for an existing LMS technology. Moodle was chosen based on it’s popularity at the University of La Verne. However I kept the PERL Modules that I started developing as possibly something I could use in the future.