This is confusing you’re mixing up the terminology of WordPress. A custom post type acts like a post and not a page. If you have a custom post type called “portfolio” and use the proper template hierarchy, you don’t have to do anything special. But you will need to name it single-portfolio.php
and not page-portfolio.php
.
http://codex.wordpress.org/images/1/18/Template_Hierarchy.png
http://codex.wordpress.org/Post_Types
If on the other hand, if you simply want to use “page” templates ( I think that is what you mean) you will need to write a conditional to display the post meta for only the page-portfolio.php
.
The logic is along the lines of:
if (is_page_template('page-portfolio.php'))
the_meta();
Your default page most likely already has the_meta();
though so you will most likely want to use get_post_meta
or get_post_custom
so you can have fields specific to your “portfolio”.
ps. It’s much easier to just use a custom post type (not a page template) for this sort of thing .
http://codex.wordpress.org/Custom_Fields#Function_Reference
http://codex.wordpress.org/Function_Reference/is_page_template