count(); if ($count <= 0) { return; } $bar->add_node([ 'id' => 'espinstanda-failures', 'title' => sprintf('INSTANDA: %d need attention', $count), 'href' => admin_url('admin.php?page=espinstanda-transactions&status=failed'), 'meta' => ['class' => 'espinstanda-failure-badge'], ]); } public function unresolved_notice(): void { $count = $this->count(); if ($count <= 0) { return; } $url = admin_url('admin.php?page=espinstanda-transactions&status=failed'); printf( '

ESP INSTANDA: %d submission(s) need attention. Review

', $count, esc_url($url) ); } public function count(): int { $cached = get_transient(self::CACHE_KEY); if ($cached !== false) { return (int) $cached; } $count = (new Transaction_Store())->unresolved_count(); set_transient(self::CACHE_KEY, $count, self::CACHE_TTL); return $count; } /** Invalidate the cached count after any status write. */ public static function bump(): void { delete_transient(self::CACHE_KEY); } }