Custom Post List View: Page or something else?

For the main view of items in a custom post type you don’t need to use a page template at all.

Create a file called archive-post_type_name.php containing the loop for that post type. When you register the post type set the has_archive value to the URL slug you want the posts to appear on eg. ‘menu’ then browse to http://yoursite.com/menu/ to see the post type archive.

If you don’t want people going to the post type page on its own the simplest way is to just leave out the permalinks in your template.