Pro form item description not showing if signed out, but shows if signed in

The description in my pro forms in s2member are not showing up to people who are not signed in, making it impossible to use them for new customers, but it shows up for anyone signed in. All of the other signup fields are there, but not the description

The top of the image shows what it looks like when the user is signed in - it looks fine:
The bottom is the same page, but the user is not signed in - you cannot tell what you are buying:

On firebug it shows this error in the console:
“NetworkError: 403 Forbidden - https://pitview.com/wp-content/plugins/s2member/s2member-o.php?ws_plugin__s2member_js_w_globals=1&qcABC=1&ver=170221-170221-3196390050

I have had to use the Paypal buttons until I get this fixed, but I am out of ideas on what is going on.

Thanks in advance for any help.

It looks to me as though you have customized the form, so I suggest re-doing it.

I’d start by using a Pro-Form that has not been customized just to verify that your customization is the problem, but I agree with Tim that it probably is.

1 Like

There is no customization on this signup form and the shortcode is exactly as generated by s2member, including the removal of the “Success” redirect.

I am curious as to why the image above looks like it is customized? (I did recreate the short code again with the same result.)

Thank you.

Because the Profile headings differ from one image to the other.

Honestly, if you want help, you need to point us towards a live form. As you have just discovered, we can’t do much with just screenshots.

They differ because s2member “knows” that if you are not signed in you need to create a profile but if you are already signed in, you have a profile,

Here is a link to a page I just created as basic as possible. The s2m2mber shortcode is at the bottom.

Thank you,

I ran the s2-server-scan and everything was fine except this:

[ERROR] cURL Extension / Or fopen() URL
One or more HTTP connection tests failed against localhost.
Cannot connect to self over HTTP — possible DNS resolution issue.
Can’t connect to: http://pitview.com

In order to run s2Member, your installation of PHP needs one of the following…
• Either the cURL extension for remote communication via PHP (plus the OpenSSL extension for PHP).
• Or, set: allow_url_fopen = on in your php.ini file (and enable the OpenSSL extension for PHP).
Please consult with your web hosting company about this message. See also: WordPress recommended hosting platforms.

I checked both php.inis (cli and apache2) and they both have ;
; Whether to allow the treatment of URLs (like http:// or ftp://) as files
; http://php.net/allow-url-fopen
allow_url_fopen = On

(I have also tried enabling curl and disabling allow_url-fopen and both enabled, but no luck)

And checking the OpenSSL extension for PHP returns the following:

Registered Stream Socket Transports => tcp, udp, unix, udg, ssl, sslv3, tls
SSL => Yes
SSL Version => OpenSSL/1.0.1f
SSL Support => enabled
openssl
OpenSSL support => enabled
OpenSSL Library Version => OpenSSL 1.0.2g 1 Mar 2016
OpenSSL Header Version => OpenSSL 1.0.2g 1 Mar 2016
OpenSSL support => enabled

I also disabled ufw and ossec during this process, but the issue remains…

You have the CSS set to display: none

You need it to be display: inline or display: block

Can you share what element you are referring to? From what I can see, it is the same for both logged in and logged out viewers, and is set to display: block.

div id=“s2member-pro-paypal-checkout-form-description-div” class=“s2member-pro-paypal-form-div s2member-pro-paypal-checkout-form-div s2member-pro-paypal-form-description-div s2member-pro-paypal-checkout-form-description-div”>
$9.97 USD / Monthly (recurring charge, for ongoing access)
</div

is using:

div {
display: block;
}

But for logged in viewers, the font height is 70px and for logged out viewers it is auto…

I will happily do that when I’m back at a laptop or desktop. I’ve been traveling and am currently waiting to board a flight.

But you should be able to check for yourself by right-clicking in your browser and selecting Inspect Element.

I did check the css from my browser on the page both when I was signed into my site and when I was not, as mentioned above.
The css was the same for both instances except for the font height being set to auto. And using firebug and plain chrome, in all instances it was showing display: block. So since I am missing something, it would help to see what you saw.

Thank you,

OK – back behind a desk now!

This is your offending CSS:

div.s2member-pro-paypal-form-options-section, div.s2member-pro-paypal-registration-form-description-section, div.s2member-pro-paypal-checkout-form-description-section, div.s2member-pro-paypal-sp-checkout-form-description-section, div.s2member-pro-paypal-form-coupon-section {
    display: none;
}

The specific selector causing this problem for you is this one:

div.s2member-pro-paypal-checkout-form-description-section

Thanks for the help, but the offender was iThemes security. The latest update to it broke it. I am going through the settings and .htaccess to find the specific offender.

If you look through these forums, you will see that iThemes security is a serial offender when it comes to plugin conflicts, though this particular manifestation is a new one on me.