XPressME Integration Kit

Trac


Ignore:
Timestamp:
Mar 20, 2009, 12:47:52 PM (16 years ago)
Author:
toemon
Message:

サイドバーの追加 と アーカイブブロックの修正 #74 bump Ver0.11

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-content/themes/xpress_default/blocks/archives_block_theme.php

    r120 r125  
    44        $mydirname = empty( $options[0] ) ? 'xpress' : $options[0] ; 
    55        $this_template = empty( $options[1] ) ? 'db:'.$mydirname.'_archives_block.html' : trim( $options[1] ); 
    6         $type = empty( $options[2] ) ? false : true ; 
    7         $limit = empty( $options[3] ) ? '10' : $options[3] ; 
     6        $type = empty( $options[2] ) ? 'monthly' : $options[2] ; 
     7        $limit  = !is_numeric( $options[3] ) ? 0 : $options[3] ; 
    88        $show_post_count = empty( $options[4] ) ? false : true ;                 
    99        $drop_down = empty( $options[5] ) ? false : true ;       
    1010         
    11         if ($type) { 
    12                 $type_name = 'monthly'; 
     11        switch($type){ 
     12                case 'yearly': 
     13                        $select_str = __('Select Yearly', 'xpress'); 
     14                        break; 
     15                case 'monthly': 
     16                        $select_str = __('Select Monthly', 'xpress'); 
     17                        break; 
     18                case 'weekly': 
     19                        $select_str = __('Select Weekly', 'xpress'); 
     20                        break; 
     21                case 'daily': 
     22                        $select_str = __('Select Daily', 'xpress'); 
     23                        break; 
     24                case 'postbypost': 
     25                        $select_str = __('Select Post', 'xpress'); 
     26                        break; 
     27                default: 
     28                        $select_str = __('Select Monthly', 'xpress'); 
     29        } 
     30         
     31        if ($drop_down) $format = 'option'; else $format = 'html'; 
     32        if ($limit == 0 ) $limit_str = ''; else $limit_str = $limit; 
     33         
     34        $param = array( 
     35                'type' => $type,  
     36                'limit' => $limit_str,  
     37                'format' => $format,  
     38                'before' => '',  
     39                'after' => '', 
     40                'show_post_count' => $show_post_count 
     41        ); 
     42         
     43        ob_start(); 
     44                wp_get_archives($param); 
     45                $get_archives_output = ob_get_contents(); 
     46        ob_end_clean(); 
     47         
     48 
     49        if($drop_down){ 
     50                 
     51 
     52                $output = '<form id="archiveform" action="">'; 
     53                $output .= '<select name="archive_chrono" onchange="window.location = (document.forms.archiveform.archive_chrono[document.forms.archiveform.archive_chrono.selectedIndex].value);">'; 
     54                $output .= "<option value=''>" . $select_str . "</option>\n"; 
     55                $output .=  $get_archives_output; 
     56                $output .= '</select>'; 
     57                $output .= '</form>'; 
     58                 
     59                $output  = '<select name="archive-dropdown"' . "onChange='document.location.href=this.options[this.selectedIndex].value;'>\n"; 
     60                $output .= '<option value="">'.attribute_escape($select_str) . "</option>\n"; 
     61                $output .=      $get_archives_output; 
     62                $output .=      "</select>\n"; 
     63                 
    1364        } else { 
    14                 $type_name = 'weekly'; 
    15         }                        
    16  
    17         $drop_down_list = '<form id="archiveform" action="">'; 
    18         $drop_down_list .= '<select name="archive_chrono" onchange="window.location = (document.forms.archiveform.archive_chrono[document.forms.archiveform.archive_chrono.selectedIndex].value);">'; 
    19         $drop_down_list .= "<option value=''>"; 
    20         if ($type) { 
    21                 $drop_down_list .= __('Select Monthly', 'xpress'); 
    22         } else { 
    23                 $drop_down_list .= __('Select Weekly', 'xpress'); 
     65                $output  = "<ul>\n"; 
     66                $output .=  $get_archives_output; 
     67                $output  .= "</ul>\n"; 
    2468        } 
    25         $drop_down_list .=  '</option>'; 
    26         ob_start(); 
    27                 get_archives($type_name,$limit,'option','','',$show_post_count); 
    28                 $drop_down_list .= ob_get_contents(); 
    29         ob_end_clean(); 
    30         $drop_down_list .= '</select>'; 
    31         $drop_down_list .= '</form>';                            
    32  
    33         ob_start(); 
    34                 get_archives($type_name,$limit,'custom','','|',$show_post_count); 
    35                 $output = ob_get_contents(); 
    36         ob_end_clean(); 
    37         $output = preg_replace('/\|$/', '' ,$output); // "|" at the end of line is deleted.  
    38         $archives = explode('|',$output); 
    39         $item_no = 0; 
    40         foreach ($archives as $archive){ 
    41                 $row_data = array( 
    42                         'archive'               => $archive 
    43                 ); 
    44                 $block['contents']['item'.$item_no] = $row_data; 
    45                 $item_no++; 
    46         } 
    47         $block['data_count'] = $item_no; 
    48         $block['config']['is_archive_doropdown'] = $drop_down; 
    49         $block['archive_dropdown'] = $drop_down_list; 
     69        $block['archive'] = $output; 
    5070        return $block ;  
    5171} 
Note: See TracChangeset for help on using the changeset viewer.