title: Add page template to a custom page using custom plugin wordpress
body: <p>I am new to developing the wordpress plugin. I am developing a plugin and I have succeeded in creating a new page whenever the plugin is activated but I want to add a custom php template file to that page. Thats means on activation I want to create a custom page with a custom template. Is it possible to do?</p>
  
  <p>To create a new page I have used this code but could not find anything on adding the template thing:</p>
  
  <pre><code>register_activation_hook(__FILE__,'my_plugin_install'); 
  function my_plugin_install() {
      global $wpdb;
      $the_page_title = 'Custom Cart';
      $the_page_name = 'cart';
      delete_option("Custom Cart");
      add_option("Custom Cart", $the_page_title, '', 'yes');
      delete_option("cart");
      add_option("cart", $the_page_name, '', 'yes');
      delete_option("my_plugin_page_id");
      add_option("my_plugin_page_id", '0', '', 'yes');
      $the_page = get_page_by_title( $the_page_title );
      if ( ! $the_page ) {
          $_p = array();
          $_p['post_title'] = $the_page_title;
          $_p['post_content'] = "This text may be overridden by the plugin. You shouldn't edit it.";
          $_p['post_status'] = 'publish';
          $_p['post_type'] = 'page';
          $_p['comment_status'] = 'closed';
          $_p['ping_status'] = 'closed';
          $_p['post_category'] = array(1);
          $the_page_id = wp_insert_post( $_p );
      }
      else {
          $the_page_id = $the_page-&gt;ID;
          $the_page-&gt;post_status = 'publish';
          $the_page_id = wp_update_post( $the_page );
      }
      delete_option( 'my_plugin_page_id' );
      add_option( 'my_plugin_page_id', $the_page_id );
  }
  </code></pre>