page-node-nid.tpl.php is not used as template file I am using the following code.

function chgakitheme_preprocess_page(&amp;$vars, $hook) {
  if ($vars['user']-&gt;uid == 0 &amp;&amp; arg(0) == 'user' &amp;&amp; (arg(1) == '' || arg(1) == 'login')) {
    array_unshift($vars['template_files'], 'page-login');
    $vars['body_classes'] .= ' userlogin';
  }

  if (isset($vars['node'])) {
   $vars['template_files'][] = 'page-'. str_replace('_', '-', $vars['node']-&gt;type);
  }
}


Now I can use page-nodetype.tpl.php, but I can't use page-node-nid.tpl.php because Drupal doesn't see it.

I need all types of template files. I want a template specific for a content type. 

What can I do? Can I do this in Drupal 6?
Have a look at the Drupal 6 Template suggestions, The list of suggested template files is in order of specificity based on internal paths. One suggestion is made for every element of the current path, though numeric elements are not carried to subsequent suggestion, order of execution is as below:


page-node-edit.tpl.php
page-node-[node_id].tpl.php
page-node.tpl.php
page.tpl.php



  So basically you don't need to use the "TEMPLATE_preprocess_page" for using "page-node-[node_id].tpl.php" for template suggestion as it is provided by default. May be the problem is of "clearing the cache", try once after clearing the cache.


In Drupal6,  page-node-[node_type].tpl.php is not available by default, to make it work we customize the suggestions in the TEMPLATE_preprocess_page as done by you.

If you want more specific templates than you can customize the template suggestions as your requirement in TEMPLATE_preprocess_page. Example as below:

// Implement TEMPLATE_preprocess_page.
function TEMPLATE_preprocess_page(&amp;$variables) {
  if ($variables['node']-&gt;type !== '') {
    // For using "page-node-[node_type].tpl.php" for template suggestion.
    $variables['template_files'][] = "page-node-" . $variables['node']-&gt;type;

    // For using "page-node-[node_type]-[node_id].tpl.php" for template suggestion.
    $variables['template_files'][] = "page-node-" . $variables['node']-&gt;type . "-" . $variables['node']-&gt;nid;
  }
}


After using the above code you can use the additional template suggestion as below:


page-node-[node_type]-[node_id].tpl.php
page-node-[node_type].tpl.php


NOTE: Don't forget to clear the cache after making changes to template files otherwise the changes won't reflect back.