Hey all, we’ve got a great release on the horizon with lots to go over. The poll results gave a resounding #1 to updating the Query Builder and Loopers, with #2 Font Awesome 6 and smaller frontend footprints a solid second. As result, this is Cornerstone 7.4.
We are looking for your feedback in all areas as always, but for the Beta especially in the areas of the Query Builder, External API, and Loopers in general. The areas where we need more sites tested is with the Font Awesome changes, Dropdowns, Modals, Off-canvas’, and making sure the new features are working for you. I will be posting a change log under this.
Another idea we are starting this cycle is the Cornerstone Beta
plugin. Download here once you click the Beta checkbox and save. This plugin will update the themes and plugins based on the current beta. Hopefully no more manually updating the Beta on your test sites. If there is no beta running it will download the normal packages, however you should deactivate if you are not testing anyway. More notes here https://theme.co/docs/test-the-beta
Pressed for time? Try out most of the new features here.
Font Awesome 6 + Font Awesome SVGs
Our latest release now ships with Font Awesome (FA) 6. This also includes a new FA loading mode “SVG”. Prior to this release all FA icons loaded through the “Webfont” method. This option is still available and will actually be the default if you upgrade a site with a version prior to Pro 6.4 / CS 7.4 / CS 10.4. SVG loading is what we intend on using as the new default as it actively loads less resources on the page, provided you are not displaying hundreds of icons on your page. This is all managed in Theme Options. We also have support for the “Sharp” icons. We have also changed how FA loading is managed, further limiting RAM provided you only enable the Icon types you intend on using.
This project ended up taking longer then expected, as we ended up going through every X template to make sure we weren’t leaving any of the codebase behind.
Super Duper Loopers
This release quite frankly pushes the boundaries of looping technology. With the new Looper Provider API, not only will you see more Loopers from us (as you’ll see in this release), but with this addition hopefully we’ll encourage other developers to integrate to everybody’s favorite builder. There are also a number of small improvements that added together mark the start of the Looper Renaissance.
Meta Query Builder Support
Finally, a way to search by Meta Fields. This update also includes a way to sort by those fields either in this section you see here or in the “Order By” section. This as well as the “External API” Theme Options section, demonstrate the new control type “list” which was available to Parameters already, but now supported by the Element Control API.
External API
New to the Cornerstone world, The External API “Advanced” feature. Loop or display data from an external endpoint API like an RSS Feed, OpenAI, or even Pokemon. There is a new template added when this feature is enabled called “API Tester”. We will have videos covering this, but you want to start here to make sure you actually sending the request correctly. In the Theme Options this also adds a “Global Endpoints” editor. Easily manage request that use similar structures (API Keys in the header etc…) and extend from that creating quick integrations to any External API.
This is not enabled on the Beta. Currently GraphQL does not have syntax highlighting, but we are leaving Beta with that feature complete. OAuth and more advanced authentication methods are a down the line thing, but we’ll prioritize based on our next Poll.
Read the Docs here! There are security guidelines there as well as some other goodies.
Be the very best… with a sample Pokemon Page. Gotta loop them all (Standard JSON External API). If you are lost use “Ignore Conditions” in the preview manager.
https://theme.co/app/uploads/share/external-api/pokemon.tco
NASA Image of the Day. (XML RSS Feed integration). This is also in the Element Library under “Advanced”.
Note, since I started NASA has been updating their system and this feed might be down. Long term we’ll setup our blog to have an RSS so we can guarantee you a working example. Word has it they are converting ther Space Shuttles UI to use Cornerstone.
https://theme.co/app/uploads/share/external-api/nasa-image-of-the-day.tco
CSV Looper
A welcomed addition to Cornerstone and especially Cornerstone Charts. CSV files are actually accepted by WordPress by default so this ended up being a quick one. We also have a new Element Control API type file
. After a full release we will be releasing Presets for Cornerstone Charts, that will get you started with CSV based data quick and easy.
Linked Product Loopers
Upsells and Crossells Loopers join the movement. CS Element Prefabs that share parity with the WooCommerce templates for each are in the works.
Inner Dynamic Content
Support for {{dc:post:title post=”{{dc:looper:field key=’post_id’}}”}}
. This will expand Dynamic Content functionality significantly by allowing you to reference dynamic data with dynamic data. Great addition and something you will see in our future templates.
In Search of Mobile Superiority
Internally we used a library called “Perfect Scrollbar”. This library ended up causing issues with Off canvas elements that needed a scrollbar, forcing you to tap twice on an iOS device as well as having a different looking Scrollbar compared to the rest of the page. The result of this removal is less JS, more consistent behavior, and less issues.
“Disable Body Scroll” has also been redone. A proper implementation of this needs to actively prevent all overflow on the Body/HTML tag to completely the lock page on mobile. Our new version of this is based loosely on Redfin’s and AirBNB’s modal elements.
Dropdowns now use “display none” to have proper lazy loading of images inside a dropdown, and to prevent the dropdown from changing the page size when it is closed. This system will eventually be brought to all toggleables as the issue with lazy loading occurs on all those elements.
Misc Bigger Changes
- A large number of PHP 8.2 deprecation removals
- Our shortcodes store the Post ID, a number of plugins like Yoast failed to work correctly without knowledge of the post ID
- sliders, google maps, text typing have been separated to their own files to lessen frontend builds
- Element scrolling when you clicked and added was very slow to the point of slowing down the entire App. You should have a noticeably improved App performance experience
Have fun! Thanks a bunch!