/** * template switching * @param $template: current template file */ public function _hw_redirect_page_template($template) { $item = APF_Page_Templates::get_current_context_template(); if (empty($item)) { return $template; } //default template //get corespond template if ($item['found'] == 'taxonomy' && file_exists($item['template'])) { $template = $item['template']; } if ($item['found'] == 'single' && file_exists($item['single_template'])) { $template = $item['single_template']; } /* if(is_category('khach-san') ){ $new_template = locate_template( array( 'category-hotel.php' ) ); if ( '' != $new_template && file_exists($new_template)) { return $new_template ; } }*/ return $template; }
/** * loop template * @param $loop_file */ public static function the_loop($loop_file = 'content') { APF_Page_Templates::getInstance()->hw_the_loop($loop_file); }
/** * loop template, don't mask as static because in skin file maybe using $this variable * @param $loop_file */ public function hw_loop_template($loop_file = 'content') { if (empty($loop_file)) { $loop_file = locate_template('content.php'); } //default loop template $item = APF_Page_Templates::get_current_context_template(); //get template from skin if ($item && !empty($item['loop_template']) && !empty($item['skin'])) { //extend skin from plugin HW_Taxonomy_post_list_widget if (isset($item['loop_template']['hash_skin'])) { $skin = $item['skin']; $file = $skin->get_skin_file($item['loop_template']['hash_skin']); $theme_setting = $skin->get_file_skin_setting(); // (new HW_SKIN)->get_file_skin_setting(); if (file_exists($theme_setting)) { include $theme_setting; } if (file_exists($file)) { //enhanced from plugin hw-yarpp/includes/hwrp-website.php $loop_file = $file; extract($skin->get_migrate()); /* Start the Loop */ do_action('hoangweb_before_loop'); include $loop_file; do_action('hoangweb_after_loop'); //load skin resource //valid if (!isset($theme['scripts'])) { $theme['scripts'] = array(); } if (!isset($theme['styles'])) { $theme['styles'] = array(); } if (count($theme['styles']) || count($theme['scripts'])) { $skin->enqueue_files_from_skin($theme['styles'], $theme['scripts']); //enqueue stuff from skin } return true; } } } return false; }