I recently set up a Mijireh-slurped checkout page for a client that looked pretty good, but had a few pretty serious problems:
- Certain assets were still being loaded on the page from my client's unsecured server, which was throwing up security warnings in Google Chrome and possibly other browsers. This is a serious problem. A peek at the source code revealed that the offending objects were being pulled into the <head> element and were fairly unimportant things like a shortcut icon, an Apple touch icon, and so forth.
- The Typekit-served fonts embedded on the site were not being loaded, which is not a problem in itself, but which broke the layout for this page because the fallback fonts were too large. The navigation menu links were wrapping outside their containing block.
- Certain other things I wanted on the page were missing, such as an explicit link to make it easy to cancel the order and return to the cart.
I could not find any direct way in to access the code for the slurped page, but I did find a way to control it that isn't very difficult. Here's how I resolved this situation:
I created a page template in my Wordpress theme specifically for the Mijireh checkout page, and in it I made sure that any includes from other theme files were replaced with the code directly from each theme file. This just means that I put all the code for generating the page into this page template, instead of pulling in the various theme files, so that I could surgically edit the whole thing directly.
I removed the objects from the <head> element, added an embedded stylesheet to override the default styles, and added a Cancel this order link to the sidebar. I also removed a couple of other things that are fine on the rest of the site but that seemed distracting on the checkout page.
Then, I re-slurped the page from within the Edit Page screen in the Wordpress admin, and now the security warnings are gone and the page looks exactly as I wanted.
I hope this is helpful to anyone else who might run into this issue. I could not find instructions or documentation on this anywhere, so maybe this post will come in handy.