views:

109

answers:

1

From another forum I found the following example:

"I was looking for a way to pull node data via ajax and came up with the following solution for Drupal 6. After implementing the changes below, if you add ajax=1 in the URL (e.g. mysite.com/node/1?ajax=1), you'll get just the content and no page layout.

in the template.php file for your theme:

function phptemplate_preprocess_page(&$vars) {

  if ( isset($_GET['ajax']) && $_GET['ajax'] == 1 ) {
        $vars['template_file'] = 'page-ajax';
  }

}

then create page-ajax.tpl.php in your theme directory with this content:

<?php print $content; ?>

"

This seems like the logical way to do it and I did this, but the phptemplate_preprocess_page function is never called ... any suggestions?

A: 

I figured it out for myself from a Drupal Support Theme Development page:

"Maybe this helps leahcim.2707 - May 29, 2008 - 05:40

I was trying to get the same thing done and for me this works, but I'm not sure if it is the correct way as I'm still new to Drupal:

in "template.php" I added the following function: function phptemplate_preprocess_page(&$vars) { $css = $vars['css']; unset($css['all']['module']['modules/system/system.css']); unset($css['all']['module']['modules/system/defaults.css']); $vars['styles'] = drupal_get_css($css); }

I think after adding the function you need to go to /admin/build/themes so that Drupal recognises the function."

The part in bold is what did the trick ... you have to re-save the configuration so it recognizes that you've added a new function to the template.

Brian T Hannan