Back to Blog
Compile all codekit7/6/2023 ![]() ![]() Genesis is still a great fit for the simpler sites I build. If that’s the case, it makes sense to keep the codebase simpler and start with a custom theme. On some very custom projects I find that I don’t really use any of the Genesis functionality other than the hooks – we end up removing everything and building it custom anyway. Genesis child theme as network theme, core functionality network plugin, site-specific plugin as “grandchild theme”… WordPress doesn’t support grandchild themes, and I’ve gone down that path with Genesis and it isn’t pretty. Any updates to the main theme get deployed to all sites using it. It only took us a few hours to create a child theme that changes out the logo, base colors, and a custom homepage. For instance, we built a large site for a law firm a year ago and now they want to build practice area specific websites that leverage the existing theme. You’d be surprised how often this happens. The main reason I suggest not using Genesis is if there might be a need to create a child theme for a separate site in the future. It now supports using block.json, which aligns with WordPress core’s preferred method for block registration. Building ACF blocks with block.jsonĪCF 6.0 includes a major improvement to the way blocks are built. ACF lets you build Gutenberg blocks fast, efficiently, and with PHP. Typically it’s because I built a custom block… Building a block with Advanced Custom FieldsĬustom blocks make the new WordPress block editor even more powerful. While I try to support all the core blocks in the themes I build, sometimes it makes sense to remove a few. WPForms‘ simple drag-and-drop form builder allows… How to remove core WordPress blocks Integrate ConvertKit and WPForms easily connects forms on your website to your ConvertKit email marketing account, enabling you to capture more leads and manage campaigns more effectively. Let's Talk Other articles in this series How to Setup ConvertKit with a WordPress Form I build custom WordPress websites that look great and are easy to manage. See my post Load Media from Production for more information. I drop that plugin file in mu-plugins, then create another mu-plugin called local-settings.php where I specify the production URL. On my local install I can just have the themes and plugins installed, but all the images still display correctly. It updates all (or some) media URLs to use the production URL. In these cases I’ll often install BE Media from Production. When working with large sites, moving media back and forth can be difficult. If they are hosted elsewhere, we use WP Pusher to push code changes to the production site. If the client is hosted at WPEngine, then we can use git to push code changes to staging and production environments ( more information). Create a new profile, same settings but for “Pull”.On local environment, go to Tools > Migrate DB Pro, select “push”, paste in the connection info, check “Media Files”, and save profile (I name it “WPE Push”). ![]() Make sure WP Migrate DB Pro is installed in both environments and configured to allow push and pull.Create a transferrable install on WPEngine (ex: ).Create a local WP environment (ex: clientname.local ).Since the cli command only accepts profile IDs, I need to make sure I create the profiles in the right order. Pushes database & media using WP Migrate DB Pro ( wp migratedb profile 1).Pushes code to correct WPEngine remote branch (production or staging), as defined by BE_PUSH_TO in wp-config.php.I use a bash script to trigger push/pulls. I use WP Migrate DB Pro to push/pull database and media. For more information, see my post Git Push with WPEngine. I use WPEngine as my development environment. I’ve also been learning webpack and babel in my Gutenberg block development. I have been learning to use gulp through my Shared Counts plugin – a collaboration with Jared Atchison. But as a solo developer it works great for me. For projects where you are collaborating with other developers, keeping environments and build processes in sync is more important, and CodeKit might not be a good fit. I like to use CodeKit for SASS compiling, JS concatenation and minification, and live refreshing. I use a Core Functionality plugin on all projects, and have a simple mu-plugin on my local install for quick links in the admin bar. I’d say about half my projects are Genesis-based, and the other half are custom WordPress themes. EA Starter uses hooks from Theme Hook Alliance to make it more Genesis-like. I have two starter themes: EA Starter, a heavily-modified, underscores-based theme and EA Genesis Child, a Genesis child theme. We discuss all things code, from templates and automation to my perspective on time management. ![]()
0 Comments
Read More
Leave a Reply. |