Thread Starter
Anonymous User 10021759
(@anonymized-10021759)
I solved my problem by using wp_enqueue_script() and wp_enqueue_style() instead of <script> and <link> tags in my functions.php for those interested.
But my question is still valid, is there a rule that says that functons.php should not output code directly?
Out of curiosity, what theme are you using Bartoli?
I am having this exact problem, it just spins but I receive the mail. For now i’ve replace the ajax-loader.gif with a tick so people know that their message has been sent. I am using the theme Volume by Themezill, any help in Lehmans terms would be great as I’m a newb myself although I am ok at changing code.
Thanks in advance
PS my contact form won’t work unless I have Configure SMTP plug in activated.
Thread Starter
Anonymous User 10021759
(@anonymized-10021759)
Eve (or is your firstname Alexander?), I’m using a custom child theme of Twenty Eleven on WP3.4.1
Steve, if your problem has the same cause than mine, you can see it by watching the content of the result page when you submit the form.
CF7 sends the form to the same page address than your contact form with aditionnal arguments (the mail info), and gets the result of the operation in the content of that second page.
You can see it in the network tab of firebug/chrome debugger. if you only get something like {“mailSent”:true,”into”:”#wpcf7-f215-p33-o1″,”captcha”:null,”message”:”Votre message a bien \u00e9t\u00e9 envoy\u00e9. Merci.”}, you are not in the case of my problem. If you have some additional HTML there (I had <script> and <link> tags that i wanted to add to my wordpress pages from functions.php), then your problem is caused by the same thing as me. You will have to find where that additional code is loaded from, an modify the problematic theme/plugin.
For other causes of this problem, there are plenty of other threads on the web on this problem, i’m not export enough
Just for anyone having the issue ( i think its very similar to bartoli) except I have SMTP configure plugin and Contact Form 7 together and there was a js clash. I removed the gmail bit in configure-smtp.php as im using Rackspace with send mail for my mail relay:
/**
* Outputs JavaScript
*
* @return void (Text is echoed.)
*/
public function add_js() {
$alert = __( ‘Be sure to specify your full GMail email address (including the “@gmail.com”) as the SMTP username, and your GMail password as the SMTP password.’, $this->textdomain );
$checked = $this->gmail_config[‘smtp_auth’] ? ‘1’ : ”;
echo <<<JS
<script type=”text/javascript”>
function configure_gmail() {
// The .attr(‘checked’) == true is only for pre-WP3.2
if (jQuery(‘#use_gmail’).attr(‘checked’) == ‘checked’ || jQuery(‘#use_gmail’).attr(‘checked’) == true) {
jQuery(‘#host’).val(‘{$this->gmail_config[‘host’]}’);
jQuery(‘#port’).val(‘{$this->gmail_config[‘port’]}’);
if (jQuery(‘#use_gmail’).attr(‘checked’) == ‘checked’)
jQuery(‘#smtp_auth’).prop(‘checked’, $checked);
else // pre WP-3.2 only
jQuery(‘#smtp_auth’).attr(‘checked’, {$this->gmail_config[‘smtp_auth’]});
jQuery(‘#smtp_secure’).val(‘{$this->gmail_config[‘smtp_secure’]}’);
if (!jQuery(‘#smtp_user’).val().match(/[email protected]$/) ) {
jQuery(‘#smtp_user’).val(‘[email protected]’).focus().get(0).setSelectionRange(0,8);
}
alert(‘{$alert}’);
return true;
}
}
</script>
JS;
}
/**
* If the ‘Use GMail’ option is checked, the GMail settings will override whatever the user may have provided
*
* @param array $options The options array prior to saving
* @return array The options array with GMail settings taking precedence, if relevant
*/
public function maybe_gmail_override( $options ) {
// If GMail is to be used, those settings take precendence
if ( $options[‘use_gmail’] )
$options = wp_parse_args( $this->gmail_config, $options );
return $options;
}
This was causing the clash with the AJAX code, causing the infinite spinning arrows.
Thread Starter
Anonymous User 10021759
(@anonymized-10021759)
I just found back the file where i had written the solution in my case :
When you submit a contact form, the plugin makes a POST form submit to the same page, with the info about the mail to send. It apparently only expects to have the result of the operation in the HTML content, but i had modified my functions.php to output some HTML code (so that it is displayed on every page), so the result was badly interpreted and i got the infinite spinning wheel