numPosts(); // returns integer * numPosts = $page->numPosts(true); // returns string like "5 posts" * ~~~~~ * */ $wire->addHook('Page(template=category)::numPosts', function($event) { /** @var Page $page */ $page = $event->object; // only category pages have numPosts if($page->template != 'category') return; // find number of posts $numPosts = $event->pages->count("template=blog-post, categories=$page"); if($event->arguments(0) === true) { // if true argument was specified, format it as a "5 posts" type string $numPosts = sprintf(_n('%d post', '%d posts', $numPosts), $numPosts); } $event->return = $numPosts; });