A few months ago, I announced the upcoming change to the Dev4Press Network website redesign (based on GeneratePress theme and plugins), and very soon, that project will be completed, and the new Dev4Press website unveiled.
I could not dedicate a lot of time to the work on the website redesign, and honestly, the whole project has been much larger than I expected. My main goal is to try and keep big chunks of the existing templates used for the current website and theme because many were customized and tied to the Dev4Press products and shop system.
Here is the overview of the work done so far.
- The core of the new website is the GeneratePress theme. Since Dev4Press is the WordPress Multisite installation, each website has own child theme for GeneratePress.
- But, because a lot of the code and styling are shared accross the network, and each child theme has to use it, the child theme for the main networks website (called ‘Blog’) includes shared code and styling, loaded by all other child themes.
- All the custom styling is written as SASS.
- GeneratePress Pro plugin is used to create various Elements that were reused, including Footer. Some of the sites have a lot more reusable Elements to build plugin pages and more. This aspect of GeneratePress Pro has proven critical to the overall work on this redesign.
- GenerateBlocks Pro plugin was essential to create layouts for most of the pages on the website, with blocks like Container, Buttons and Headine used a lot. And, feature for creating Templates for reuse was often used, especially on the Plugins website to create plugin landing pages and more.
Now, I had to create a new plugin for adding more Block Editor Blocks:
- FAQ: new block with customizable title and content that can be open and closed.
- Featured: server side rendering block to display one or more featured plugins.
- Product: server side rendering block to show single plugin. It has options to change the rendered block layout, image size and more.
- Testimonials: another server side rendering block to pull from database, and render one or more testimonials, with options to limit number of displayed testimonials and select how many columns to use to render the block content.
- Template: this is the ultimate server side rendering block that only loads the template from the active child theme, and it has option to specify the template name, and option to include additional arguments to pass into template. The current post ID is also passed to the included template. This block was crucial to reuse old website code that had to remain templates based.
Once the Dev4Press redesign is launched, I plan to release some of these blocks. Other developers and users might find them useful (FAQ and Templates).
Blocks plugin also includes a portion of the shared styling, including the Flex-based grid system. I needed such a system to make the old templates transition easier and have a modern grid model that uses flex, not floats.
Right now, the plan is to finish the work and deploy a new website by the end of this month (most likely the last week of July).