Часто разработчики WordPress используют объявление глобальной переменной $post для доступа к данным текущего поста. Но разработчики ядра уже давно отказались от этой идеи и почти везде заменили ее на $post = get_post();

Ссылка на обсуждение https://core.trac.wordpress.org/changeset/21735

Возьмем пример…

Было

global $post, $id;

Стало

$post = get_post();
$id = $post->ID;

Вроде бы две строки вместо одной. Но суть не в эффективности или краткости, а в безопасности и читаемости.

Другими словами, не будь у нас причин, то подобное усложнение было бы большим грехом 🙂
Но у нас есть причины. Повышение безопасности и читаемости. По этим причинам подобное усложнение оправданно и потому допустимо.
Принцип бритвы Оккама в данном случае соблюден.