We have now had our third client complaint that public CiviCRM pages don’t work — no data appears on the page. We investigated and could not find a cause. Two clients said that Event pages didn’t work and one said that a Contribution page didn’t work.
The solution we can offer for such cases is to use a regular WordPress “Page” for the Event Info page and include there a link to another regular WordPress “Page” which will be the Event Registration page.
The trick is that in this Event Registration page we put in a shortcode like this:
[civicrm component="event" action="register" id="16"]
This is valid to do as CiviCRM provides this shortcode. It may not be precisely the ideal solution, but it works.
For all the shortcodes available, and the options, see the Integrating with WordPress page of the CiviCRM Documentation site.