sitecrafting / groot

:seedling: The official SiteCrafting WordPress starter theme, built on Timber and Conifer
MIT License
3 stars 1 forks source link

Implement/test high-level integration/compatibility with key plugins #20

Open sdunham opened 5 years ago

sdunham commented 5 years ago

i.e. WooCommerce, The Events Calendar, etc...

Commonly used plugins which provide large pieces of functionality (e.g. eCommerce, event management) can sometimes have a few hoops to jump through to be compatible with a timber-based theme. WooCommerce is a good example, seeing as there's an entire guide to integrating it with Timber in their docs. We should do some work up front to ensure these plugins can be dropped into a WP site using a Groot-based theme with as little up-front effort as possible.

acobster commented 5 years ago

@sdunham agreed. Do you think this would be addressed by having our own guides/cookbooks for integrating with such plugins? Or, is the scope even wider than that, like having a kitchen-sink type theme for WooCommerce? How do you envision "testing" this stuff?

sdunham commented 5 years ago

I think the approach might depend on which plugins we want to target for integration, and how involved they are to implement. For the two I had in mind to start (WooCommerce and The Events Calendar), I think it would be sufficient to include the appropriate code/templates in Groot to make them function out-of-the-box and provide some minimal documentation to explain what you get for free w/ Groot and (if applicable) point devs to documentation on how to do more fine grained integration. If we decide to expand the scope to other plugins that require more work on the part of theme developers, there might be the need for more robust documentation (i.e. guides/cookbooks).

Examples:

This would allow us to do some minimal testing to ensure that these plugins can be dropped into a WP instance running a Groot-based theme and have those plugins function as intended without additional effort for theme developers.

sdunham commented 5 years ago

(BTW, I'm happy to take this one on. Just wanted to get it documented before it fell out of my head)

acobster commented 5 years ago

Sounds good, thanks! Although in my experience {header,footer}.php is not strictly necessary for TEC - check out the way we're overriding PHP templates but still letting Twig views do most of the work in Metro Parks. Much cleaner than header/footer code IMHO.

sdunham commented 5 years ago

Yeah, that's definitely a lot more flexible than the header/footer approach, but it sorta falls into the "more fine-grained integration" category (at least in my head). Which is totally legit, but I think at that point we need to decide if it's worth including by default in the theme, or just writing up a guide/cookbook to show people how they could go about setting up that integration.

I was kinda imagining any code we'd include in the theme to start as the MVP for allowing the plugins to work out of the box, with additional documentation on how to do more fine-grained integrations (if applicable).