An addon or theme that works beautifully and obviously for the developer may not be robust, easy or user-proof enough for the marketplace. Here are some of the common technical issues.
With each redevelopment of the concrete5.org site, some old favourite pages get relegated to places that are hard to find or even excluded from the navigation. Here are a few of them.
Now that you know how to prepare your add-on's backend code for 5.7, let's delve into the user facing stuff.
Enough is changing in Concrete CMS 5.7 that add-on developers will have to go through a little bit of work to make their add-ons work with the new code. It'll be worth it, and this guide will help you get started.
Depending on your screen size, you may want to hide links. Adding links to a mobile navigation drop down can be helpful, especially if you have more links in the header.
Create a copy of the Elemental theme as a new theme called Test.
How to add custom styles to Redactor.
A breakdown of Project Topics in the Elemental theme.
A quick rundown on how to use the color picker widget in Concrete CMS 5.7 forms.
In this tutorial for Concrete CMS 5.7 we will programmatically add a PageBlock to a Concrete Page. We find this useful for packages where we have a SinglePage and we want to load an Area with a PageList block. The page can also be a regular Concrete Page based on a PageTy
How to create tabbed panels in forms in Concrete CMS.
How to generate Global Areas for every locale
How to add orders programmatically to your C5.7 Razor Commerce store.
Occasionally you may need to add some attributes to an External link in your sitemap.
Use the date time widget to create a date only picker or a date and time picker.
Change the default photo of the day login page background image to a custom background image of your choice.
Change the default values for the block and block area custom style sliders.
Use Composer to declare your dependencies and download a third party library for use in your package. This example will use Stripe PHP.
In 5.6 we always had the possibility to override any class in the core. How can we do this in 5.7?
Although Concrete CMS features an auto-updater, there is also the option to manually upgrade a site to a new version through some simple steps. The video in this how-to demonstrates how to perform a manual upgrade on a typical server.
The default theme delivered with Concrete CMS 5.7.x has a nice image slider, but on smaller screens it's title and description font sizes are not scaled down and thus cut off. Here you can see my approach to solve this.
How to use \Concrete\Core\Html\Image class / How to get thumbnail of the image
How to add a menu item (when viewing a page)
How to add options to the pagination / How to bind a new pagination view manager
Recreate the blog and blog entry page types that come with the Elemental theme content.
How to use the form widget and new input types available in 5.7.
Looking how to setup a simple blog for Concrete CMS
Examples of common use including basic client side validation.
In 5.6, we could use $_SESSION but in 5.7, there is a built-in session class from Symphony.
When clicking on "Add link" in the "Social Links" Dashboard page there is a dropdown with possible social link entries like Facebook, Twitter, Instagram and so on. Here I'll show how to add other links with the example of StackExchange.