What version of PHP are you running on the site? It might be that 'constants' are not supported if running an older version.
https://www.php.net/manual/en/language.constants.php
discuss.answer
Hi Andy
Thanks for your suggestion. I think it's PHP 5.4.
However, since I posted, I turned off friendly urls and found the sub-pages showed up. When I re-enabled friendly urls, everything was back to normal!
So the problem has disappeared.
I think you could have solved it with Manage -> Clear Cache -> Refresh URIs.
Turning FURLs back on would probably have triggered the URL update.
Thanks Bob - I wasn't aware of that option. It's one to bear in mind. I had cleared the cache manually by deleting the files.