www.Schema.org has definitely come a long way. A community of semantic markups is now setting up the foundation for what concerns both SEO and UX within the front-end realm. Analysing your site's current semantic situation is, in 2019, a top priority, and I've recently discovered a couple of tips and tricks that I hope will help you in guaranteeing a rich snippet for your desired keyword (and much more).
The beauty of Schema.org markups is the fact that most of them are pretty easy to code and this, in 2019, is a massive pro. Semantic separation is a process that establishes which attributes are installed on a particular page: for example, on your homepage, it's very likely that you want both a @website attribute and an @organization one, in order to better tell the crawlers about your site's content. Semantic separation is a priority when it comes to Schema markups, as it actively helps the crawling process (currently on Googlebot 41)
The Wordpress Problem
I recently set up www.redcowmedia.co.uk site's complete semantic content, which, given the fact that they're Wordpress-based, wasn't that fluid. In order to overcome this minor (but major at the same time), I've simply edited the .php file and, by creating a custom page, I was able to install both the organization markup and a general blog one.
Although more marketing related, semantic markups are definitely crossing the world of front-end development and, more specifically, web and cms development. Although this could have been done by relying on a small plugin, the "code it by yourself" avenue has always fascinated me and, given the fact that SEO is fastly moving towards this route, it was something which had to be done.