[wp-cvs] wordpress/wp-includes functions.php,1.243,1.244

Ryan Boren rboren at users.sourceforge.net
Tue Feb 1 03:44:34 GMT 2005


Update of /cvsroot/cafelog/wordpress/wp-includes
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31723/wp-includes

Modified Files:
	functions.php 
Log Message:
get_*_template() functions and filters.

Index: functions.php
===================================================================
RCS file: /cvsroot/cafelog/wordpress/wp-includes/functions.php,v
retrieving revision 1.243
retrieving revision 1.244
diff -C2 -d -r1.243 -r1.244
*** functions.php	31 Jan 2005 18:46:17 -0000	1.243
--- functions.php	1 Feb 2005 03:44:32 -0000	1.244
***************
*** 1453,1474 ****
  }
  
  function get_page_template() {
  	global $wp_query;
  
  	$id = $wp_query->post->ID;	
- 	$template_dir = get_template_directory();
- 	$default = "$template_dir/page.php";
- 
  	$template = get_post_meta($id, '_wp_page_template', true);
  
! 	if (empty($template) || ($template == 'default')) {
! 		return $default;
! 	}
  
! 	if (file_exists("$template_dir/$template")) {
! 		return "$template_dir/$template";
! 	}
  
! 	return $default;
  }
  
--- 1453,1527 ----
  }
  
+ function get_query_template($type) {
+ 	$template = '';
+ 	if ( file_exists(TEMPLATEPATH . "/{$type}.php") )
+ 		$template = TEMPLATEPATH . "/{$type}.php";
+ 
+ 	return apply_filters("{$type}_template", $template);
+ }
+ 
+ function get_404_template() {
+ 	return get_query_template('404');
+ }
+ 
+ function get_archive_template() {
+ 	return get_query_template('archive');
+ }
+ 
+ function get_author_template() {
+ 	return get_query_template('author');
+ }
+ 
+ function get_category_template() {
+ 	$template = '';
+ 	if ( file_exists(TEMPLATEPATH . "/category-" . get_query_var('cat') . '.php') )
+ 		$template = TEMPLATEPATH . "/category-" . get_query_var('cat') . '.php';
+ 	else if ( file_exists(TEMPLATEPATH . "/category.php") )
+ 		$template = TEMPLATEPATH . "/category.php";
+ 
+ 	return apply_filters('category_template', $template);
+ }
+ 
+ function get_date_template() {
+ 	return get_query_template('date');
+ }
+ 
+ function get_home_template() {
+ 	$template = '';
+ 	if ( file_exists(TEMPLATEPATH . "/index.php") )
+ 		$template = TEMPLATEPATH . "/index.php";
+ 
+ 	return apply_filters('home_template', $template);
+ }
+ 
  function get_page_template() {
  	global $wp_query;
  
  	$id = $wp_query->post->ID;	
  	$template = get_post_meta($id, '_wp_page_template', true);
  
! 	if ( 'default' == $template )
! 		$template = '';
  
! 	if ( ! empty($template) && file_exists(TEMPLATEPATH . "/$template") )
! 		$template = TEMPLATEPATH . "/$template";
! 	else if ( file_exists(TEMPLATEPATH .  "/page.php") )
! 		$template = TEMPLATEPATH .  "/page.php";
! 	else
! 		$template = '';
  
! 	return apply_filters('page_template', $template);
! }
! 
! function get_paged_template() {
! 	return get_query_template('paged');
! }
! 
! function get_search_template() {
! 	return get_query_template('search');
! }
! 
! function get_single_template() {
! 	return get_query_template('single');
  }
  



More information about the cvs mailing list