Сорри за долгий ответ. Скорее всего проблема в выборе кавычек. Одинарный кавычки - это значение. То есть условно проверяется '100' = '0'. Это не будет истина. Проверяется в данном случае не значение колонки, а просто значение. Название колонки - это в обратных кавычках, то есть `. Должно работать так:
$id = $_SESSION['nomer'];
$notReadNews = $modx->query("SELECT COUNT(*) as count FROM read_news WHERE `$id` = '0' and published = '1'")->fetchColumn();
echo $notReadNews;