If you give a look to get_template_part it says that <?php get_template_part( 'loop', 'index' ); ?>
will do a PHP require() for the first file that exists among these, in this priority:
- wp-content/themes/twentytenchild/loop-index.php
- wp-content/themes/twentyten/loop-index.php
- wp-content/themes/twentytenchild/loop.php
- wp-content/themes/twentyten/loop.php
so your code would default to content.php, not page.php.
<?php get_template_part('page') ?>
should just load a partial named page.php and shouldn’t be slow at all.
But the point is that if you are not using a custom template for the “basic” pages you shouldn’t be using get_template_part inside the page.php at all. That page.php get’s called when it’s any single page that you haven’t assigned a template to.
So try making your page.php like this
<?php get_header() ?>
<?php
// Start the loop.
while ( have_posts() ) : the_post();
// Include the page content.
the_content();
// End the loop.
endwhile;
?>
<?php get_footer() ?>