| 1 | <?php
 | 
|---|
| 2 | // $Id: xpress.php
 | 
|---|
| 3 | // FILE         ::      xpress.php
 | 
|---|
| 4 | // AUTHOR       ::      toemon
 | 
|---|
| 5 | //
 | 
|---|
| 6 | // WordPress 2.0+
 | 
|---|
| 7 | 
 | 
|---|
| 8 | if( ! defined( 'XOOPS_ROOT_PATH' ) ) exit ;
 | 
|---|
| 9 | $mydirname = basename( dirname( dirname( __FILE__ ) ) ) ;
 | 
|---|
| 10 | 
 | 
|---|
| 11 | eval( '
 | 
|---|
| 12 | function b_sitemap_' . $mydirname . '(){        
 | 
|---|
| 13 |         return _sitemap_xpress("'.$mydirname.'");
 | 
|---|
| 14 | }
 | 
|---|
| 15 | ') ;
 | 
|---|
| 16 | 
 | 
|---|
| 17 | if(!function_exists('_sitemap_xpress')){
 | 
|---|
| 18 |         function _sitemap_xpress($mydirname){
 | 
|---|
| 19 |                 global $sitemap_configs;
 | 
|---|
| 20 |                 
 | 
|---|
| 21 |                 $xpress_sitemap =array();       
 | 
|---|
| 22 |                 $disp_sub =@$sitemap_configs["show_subcategoris"];              
 | 
|---|
| 23 |                 get_sitemap_category_list($mydirname,&$xpress_sitemap, 0, 0, $disp_sub,1);              
 | 
|---|
| 24 |                 return $xpress_sitemap;
 | 
|---|
| 25 |         }
 | 
|---|
| 26 | }
 | 
|---|
| 27 | 
 | 
|---|
| 28 | if(!function_exists('get_sitemap_category_list')){
 | 
|---|
| 29 |         function get_sitemap_category_list($mydirname,$xpress_sitemap,$parent = 0, $parent_index ,$disp_sub,$depth) 
 | 
|---|
| 30 |         {
 | 
|---|
| 31 |                 global $xoopsModule, $wp_db_version;
 | 
|---|
| 32 | 
 | 
|---|
| 33 |                 if (!file_exists(XOOPS_ROOT_PATH . '/modules/' . $mydirname . '/wp-includes/version.php')){
 | 
|---|
| 34 |                         return '';
 | 
|---|
| 35 |                 }
 | 
|---|
| 36 |                 
 | 
|---|
| 37 |                 include_once (XOOPS_ROOT_PATH . '/modules/' . $mydirname . '/wp-includes/version.php');
 | 
|---|
| 38 |                 $db_version = $wp_db_version;
 | 
|---|
| 39 |                 $xoopsDB =& Database::getInstance();
 | 
|---|
| 40 |                 $myts =& MyTextSanitizer::getInstance();
 | 
|---|
| 41 |                 
 | 
|---|
| 42 |                 $prefix = $mydirname;
 | 
|---|
| 43 |                 if ($prefix == 'wordpress') $prefix ='wp';
 | 
|---|
| 44 |                 $wp_prefix = $xoopsDB->prefix($prefix);
 | 
|---|
| 45 |                 
 | 
|---|
| 46 |                 switch($db_version){
 | 
|---|
| 47 |                         case ($db_version>= 6000):
 | 
|---|
| 48 |                                 $id_name = "term_taxonomy_id";
 | 
|---|
| 49 |                                 $pid_name = "parent";
 | 
|---|
| 50 |                                 $title_name = "name";
 | 
|---|
| 51 |                                 $term_taxonomy_db = $wp_prefix . '_term_taxonomy';
 | 
|---|
| 52 |                                 $terms_db = $wp_prefix . '_terms';
 | 
|---|
| 53 |                                 $sql  = "SELECT $term_taxonomy_db.$id_name,$terms_db.$title_name ";
 | 
|---|
| 54 |                                 $sql .= "FROM $term_taxonomy_db INNER JOIN $terms_db ON $term_taxonomy_db.term_id = $terms_db.term_id ";
 | 
|---|
| 55 |                                 $sql .= "WHERE $term_taxonomy_db.parent = $parent AND $term_taxonomy_db.taxonomy = 'category'";
 | 
|---|
| 56 |                                 break;
 | 
|---|
| 57 |                         default:
 | 
|---|
| 58 |                                 $id_name = "cat_ID";
 | 
|---|
| 59 |                                 $pid_name = "category_parent";
 | 
|---|
| 60 |                                 $title_name = "cat_name";
 | 
|---|
| 61 |                                 $cat_db = $wp_prefix . '_categories';
 | 
|---|
| 62 |                                 $sql  = "SELECT $id_name , $title_name ";
 | 
|---|
| 63 |                                 $sql .= "FROM  $cat_db ";
 | 
|---|
| 64 |                                 $sql .= "WHERE $pid_name = $parent";                            
 | 
|---|
| 65 |                                 break;
 | 
|---|
| 66 |                 }
 | 
|---|
| 67 |                                                 
 | 
|---|
| 68 |                 $res =  $xoopsDB->query($sql, 0, 0);
 | 
|---|
| 69 |             if ($res === false){
 | 
|---|
| 70 |                 return ;
 | 
|---|
| 71 |                 } else {
 | 
|---|
| 72 |                         $index = 0;
 | 
|---|
| 73 |                         while($row = $xoopsDB->fetchArray($res)){
 | 
|---|
| 74 |                                 if ($depth == 1){
 | 
|---|
| 75 |                                         $xpress_sitemap['parent'][$index]['id'] = $row[$id_name];
 | 
|---|
| 76 |                                         $xpress_sitemap['parent'][$index]['title'] = $myts->makeTboxData4Show( $row[$title_name] ) ;
 | 
|---|
| 77 |                                         $url = "index.php?cat=";
 | 
|---|
| 78 |                                         $xpress_sitemap['parent'][$index]['url'] = $url.$row[$id_name];
 | 
|---|
| 79 |                                         if ($disp_sub){
 | 
|---|
| 80 |                                                 get_sitemap_category_list($mydirname,&$xpress_sitemap,$row[$id_name] , $index, $disp_sub,$depth + 1);   
 | 
|---|
| 81 |                                         }
 | 
|---|
| 82 |                                 } else {
 | 
|---|
| 83 |                                         $xpress_sitemap['parent'][$parent_index]['child'][$index]['id'] = $row[$id_name];
 | 
|---|
| 84 |                                         $xpress_sitemap['parent'][$parent_index]['child'][$index]['title'] = $myts->makeTboxData4Show( $row[$title_name] ) ;
 | 
|---|
| 85 |                                         $url = "index.php?cat=";
 | 
|---|
| 86 |                                         $xpress_sitemap['parent'][$parent_index]['child'][$index]['url'] = $url.$row[$id_name];
 | 
|---|
| 87 |                                         $xpress_sitemap['parent'][$parent_index]['child'][$index]['image'] = (($depth > 3) ? 4 : $depth);;
 | 
|---|
| 88 | //                                      get_sitemap_category_list($mydirname,&$xpress_sitemap,$row[$id_name] , $index, $disp_sub,$depth +1);
 | 
|---|
| 89 |                                 }
 | 
|---|
| 90 |                                 $index++;
 | 
|---|
| 91 |                         }
 | 
|---|
| 92 |             }
 | 
|---|
| 93 |         }
 | 
|---|
| 94 | }
 | 
|---|
| 95 | 
 | 
|---|
| 96 | ?> | 
|---|