Вы можете получить все заголовки узлов с помощью SQL-запроса, например:
$row = db_query('SELECT nid FROM {node} WHERE title = :mytitle', array(':mytitle' => $myNewTitle))->fetchField();
if(!isset($row['nid'])) {
//safe to continue
} else {
//that title is already there and its in node with node id "nid"
}
И если не будет возвращено никаких результатов, вы можете предположить, что у вас все получится.
ИлиВ качестве альтернативы вы можете отредактировать таблицу узлов, чтобы сделать поле заголовка УНИКАЛЬНЫМ и обработать ошибку, выданную MySQL.Правда, не знаю, насколько это возможно.