Make WordPress Core

Ticket #3945: 3945e.diff

File 3945e.diff, 25.3 KB (added by mdawaffe, 17 years ago)

posts, pages, h2 from query, i18n

  • wp-includes/query.php

     
    995995                }
    996996
    997997                if ( $this->is_attachment ) {
    998                         $where .= " AND (post_type = 'attachment')";
     998                        $where .= " AND post_type = 'attachment'";
    999999                } elseif ($this->is_page) {
    1000                         $where .= " AND (post_type = 'page')";
     1000                        $where .= " AND post_type = 'page'";
    10011001                } elseif ($this->is_single) {
    1002                         $where .= " AND (post_type = 'post')";
     1002                        $where .= " AND post_type = 'post'";
    10031003                } else {
    1004                         $where .= " AND (post_type = '$post_type' AND (post_status = 'publish'";
     1004                        $where .= " AND post_type = '$post_type'";
     1005                }
    10051006
     1007                if ( isset($q['post_status']) && '' != $q['post_status'] ) {
     1008                        $q_status = explode(',', $q['post_status']);
     1009                        $r_status = array();
     1010                        if ( in_array( 'draft'  , $q_status ) )
     1011                                $r_status[] = "post_status = 'draft'";
     1012                        if ( in_array( 'future' , $q_status ) )
     1013                                $r_status[] = "post_status = 'future'";
     1014                        if ( in_array( 'inherit' , $q_status ) )
     1015                                $r_status[] = "post_status = 'inherit'";
     1016                        if ( in_array( 'private', $q_status ) )
     1017                                $r_status[] = "post_status = 'private'";
     1018                        if ( in_array( 'publish', $q_status ) )
     1019                                $r_status[] = "post_status = 'publish'";
     1020                        if ( !empty($r_status) )
     1021                                $where .= " AND (" . join( ' OR ', $r_status ) . ")";
     1022                } elseif ( !$this->is_singular ) {
     1023                        $where .= " AND (post_status = 'publish'";
     1024
    10061025                        if ( is_admin() )
    10071026                                $where .= " OR post_status = 'future' OR post_status = 'draft'";
    10081027
    1009                         if ( is_user_logged_in() ) {
    1010                                 if ( 'post' == $post_type )
    1011                                         $cap = 'read_private_posts';
    1012                                 else
    1013                                         $cap = 'read_private_pages';
     1028                        $where .= current_user_can( "read_private_{$post_type}s" ) ? " OR post_status = 'private'" : " OR post_author = $user_ID AND post_status = 'private'";
    10141029
    1015                                 if ( current_user_can($cap) )
    1016                                         $where .= " OR post_status = 'private'";
    1017                                 else
    1018                                 $where .= " OR post_author = $user_ID AND post_status = 'private'";
    1019                         }
    1020 
    1021                         $where .= '))';
     1030                        $where .= ')';
    10221031                }
    10231032
    10241033                // Apply filters on where and join prior to paging so that any
  • wp-includes/link-template.php

     
    476476        $request = preg_replace('|^'. $home_root . '|', '', $request);
    477477        $request = preg_replace('|^/+|', '', $request);
    478478       
    479         if ( !$wp_rewrite->using_permalinks() ) {
     479        if ( !$wp_rewrite->using_permalinks() || is_admin() ) {
    480480                $base = trailingslashit( get_bloginfo( 'home' ) );
    481                
     481
    482482                if ( $pagenum > 1 ) {
    483483                        $result = add_query_arg( 'paged', $pagenum, $base . $request );
    484484                } else {
  • wp-includes/capabilities.php

     
    445445function current_user_can($capability) {
    446446        $current_user = wp_get_current_user();
    447447
     448        if ( empty($current_user) )
     449                return false;
     450
    448451        $args = array_slice(func_get_args(), 1);
    449452        $args = array_merge(array($capability), $args);
    450453
    451         if ( empty($current_user) )
    452                 return false;
    453 
    454454        return call_user_func_array(array(&$current_user, 'has_cap'), $args);
    455455}
    456456
  • wp-includes/classes.php

     
    33class WP {
    44        var $public_query_vars = array('m', 'p', 'posts', 'w', 'cat', 'withcomments', 'withoutcomments', 's', 'search', 'exact', 'sentence', 'debug', 'calendar', 'page', 'paged', 'more', 'tb', 'pb', 'author', 'order', 'orderby', 'year', 'monthnum', 'day', 'hour', 'minute', 'second', 'name', 'category_name', 'tag', 'feed', 'author_name', 'static', 'pagename', 'page_id', 'error', 'comments_popup', 'attachment', 'attachment_id', 'subpost', 'subpost_id', 'preview', 'robots');
    55
    6         var $private_query_vars = array('offset', 'posts_per_page', 'posts_per_archive_page', 'what_to_show', 'showposts', 'nopaging', 'post_type');
     6        var $private_query_vars = array('offset', 'posts_per_page', 'posts_per_archive_page', 'what_to_show', 'showposts', 'nopaging', 'post_type', 'post_status');
    77        var $extra_query_vars = array();
    88
    99        var $query_vars;
  • wp-admin/wp-admin.css

     
    790790        width: 320px;
    791791}
    792792
    793 #searchform {
     793#searchform fieldset {
    794794        float: left;
    795         margin-right: 1em;
    796         width: 18em;
     795        margin: 0 1.5ex 1em 0;
     796        padding: 0;
    797797}
    798798
    799 #viewarc {
    800         float: left;
    801         width: 23em;
    802         margin-bottom: 1em;
     799#searchform fieldset legend {
     800        padding: 0 0 .2em 1px;
    803801}
     802       
     803#searchform #s {
     804        padding: 4px 3px;
     805}
    804806
    805 #viewcat {
     807#searchform #post-query-submit {
    806808        float: left;
    807         width: 30em;
    808         margin-bottom: 1em;
     809        margin: 14px 0 1em;
     810        position: relative;
     811        top: .35em;
    809812}
    810813
    811814#postcustom .updatemeta, #postcustom .deletemeta {
  • wp-admin/edit-post-rows.php

     
     1<table class="widefat">
     2        <thead>
     3        <tr>
     4
     5<?php foreach($posts_columns as $column_display_name) { ?>
     6        <th scope="col"><?php echo $column_display_name; ?></th>
     7<?php } ?>
     8
     9        </tr>
     10        </thead>
     11        <tbody id="the-list">
     12<?php
     13if ($posts) {
     14$bgcolor = '';
     15while (have_posts()) : the_post();
     16add_filter('the_title','wp_specialchars');
     17$class = ('alternate' == $class) ? '' : 'alternate';
     18?>
     19        <tr id='post-<?php echo $id; ?>' class='<?php echo $class; ?>'>
     20
     21<?php
     22
     23foreach($posts_columns as $column_name=>$column_display_name) {
     24
     25        switch($column_name) {
     26
     27        case 'id':
     28                ?>
     29                <th scope="row" style="text-align: center"><?php echo $id ?></th>
     30                <?php
     31                break;
     32
     33        case 'date':
     34                ?>
     35                <td><?php if ( '0000-00-00 00:00:00' ==$post->post_modified ) _e('Unpublished'); else the_time(__('Y-m-d \<\b\r \/\> g:i:s a')); ?></td>
     36                <?php
     37                break;
     38        case 'title':
     39                ?>
     40                <td><?php the_title() ?>
     41                <?php if ('private' == $post->post_status) _e(' - <strong>Private</strong>'); ?></td>
     42                <?php
     43                break;
     44
     45        case 'categories':
     46                ?>
     47                <td><?php the_category(','); ?></td>
     48                <?php
     49                break;
     50
     51        case 'comments':
     52                ?>
     53                <td style="text-align: center">
     54                        <?php comments_number("<a href='edit.php?p=$id&amp;c=1'>" . __('0') . '</a>', "<a href='edit.php?p=$id&amp;c=1'>" . __('1') . '</a>', "<a href='edit.php?p=$id&amp;c=1'>" . __('%') . '</a>') ?>
     55                        </td>
     56                <?php
     57                break;
     58
     59        case 'author':
     60                ?>
     61                <td><?php the_author() ?></td>
     62                <?php
     63                break;
     64
     65        case 'control_view':
     66                ?>
     67                <td><a href="<?php the_permalink(); ?>" rel="permalink" class="edit"><?php _e('View'); ?></a></td>
     68                <?php
     69                break;
     70
     71        case 'control_edit':
     72                ?>
     73                <td><?php if ( current_user_can('edit_post',$post->ID) ) { echo "<a href='post.php?action=edit&amp;post=$id' class='edit'>" . __('Edit') . "</a>"; } ?></td>
     74                <?php
     75                break;
     76
     77        case 'control_delete':
     78                ?>
     79                <td><?php if ( current_user_can('delete_post',$post->ID) ) { echo "<a href='" . wp_nonce_url("post.php?action=delete&amp;post=$id", 'delete-post_' . $post->ID) . "' class='delete' onclick=\"return deleteSomething( 'post', " . $id . ", '" . js_escape(sprintf(__("You are about to delete this post '%s'.\n'OK' to delete, 'Cancel' to stop."), get_the_title())) . "' );\">" . __('Delete') . "</a>"; } ?></td>
     80                <?php
     81                break;
     82
     83        default:
     84                ?>
     85                <td><?php do_action('manage_posts_custom_column', $column_name, $id); ?></td>
     86                <?php
     87                break;
     88        }
     89}
     90?>
     91        </tr>
     92<?php
     93endwhile;
     94} else {
     95?>
     96  <tr style='background-color: <?php echo $bgcolor; ?>'>
     97    <td colspan="8"><?php _e('No posts found.') ?></td>
     98  </tr>
     99<?php
     100} // end if ($posts)
     101?>
     102        </tbody>
     103</table>
  • wp-admin/edit.php

     
    66wp_enqueue_script( 1 == $_GET['c'] ? 'admin-comments' : 'listman' );
    77require_once('admin-header.php');
    88
    9 $_GET['m'] = (int) $_GET['m'];
     9$_GET['m']   = (int) $_GET['m'];
     10$_GET['cat'] = (int) $_GET['cat'];
     11$post_stati  = array(   //      array( adj, noun )
     12                        'draft' => array(__('Draft'), _c('Drafts|manage posts header')),
     13                        'future' => array(__('Future dated'), __('Future dated posts')),
     14                        'private' => array(__('Private'), __('Private posts')),
     15                        'publish' => array(__('Published'), __('Published posts'))
     16                );
    1017
    11 $drafts = get_users_drafts( $user_ID );
    12 $other_drafts = get_others_drafts( $user_ID);
    13 
    14 if ($drafts || $other_drafts) {
     18$post_status_q = '';
     19$author_q = '';
     20$post_status_label = _c('Posts|manage posts header');
     21$post_listing_pageable = true;
     22if ( isset($_GET['post_status']) && in_array( $_GET['post_status'], array_keys($post_stati) ) ) {
     23        $post_status_label = $post_stati[$_GET['post_status']][1];
     24        $post_listing_pageable = false;
     25        $post_status_q = '&post_status=' . $_GET['post_status'];
     26        if ( in_array( $_GET['post_status'], array('draft', 'private') ) )
     27                $author_q = "&author=$user_ID";
     28        elseif ( 'publish' == $_GET['post_status'] );
     29                $post_listing_pageable = true;
     30}
    1531?>
    16 <div class="wrap">
    17 <?php if ($drafts) { ?>
    18         <p><strong><?php _e('Your Drafts:') ?></strong>
    19         <?php
    20         $i = 0;
    21         foreach ($drafts as $draft) {
    22                 if (0 != $i)
    23                         echo ', ';
    24                 $draft->post_title = apply_filters('the_title', stripslashes($draft->post_title));
    25                 if ($draft->post_title == '')
    26                         $draft->post_title = sprintf(__('Post #%s'), $draft->ID);
    27                 echo "<a href='post.php?action=edit&amp;post=$draft->ID' title='" . __('Edit this draft') . "'>$draft->post_title</a>";
    28                 ++$i;
    29                 }
    30         ?>
    31 .</p>
    32 <?php } ?>
    3332
    34 <?php if ($other_drafts) { ?>
    35         <p><strong><?php _e('Other&#8217;s Drafts:') ?></strong>
    36         <?php
    37         $i = 0;
    38         foreach ($other_drafts as $draft) {
    39                 if (0 != $i)
    40                         echo ', ';
    41                 $draft->post_title = apply_filters('the_title', stripslashes($draft->post_title));
    42                 if ($draft->post_title == '')
    43                         $draft->post_title = sprintf(__('Post #%s'), $draft->ID);
    44                 echo "<a href='post.php?action=edit&amp;post=$draft->ID' title='" . __('Edit this draft') . "'>$draft->post_title</a>";
    45                 ++$i;
    46                 }
    47         ?>
    48         .</p>
    49 
    50 <?php } ?>
    51 
    52 </div>
    53 <?php } ?>
    54 
    5533<div class="wrap">
    56 <h2>
     34
    5735<?php
    5836
    59 wp('what_to_show=posts&posts_per_page=15&posts_per_archive_page=-1');
     37wp("what_to_show=posts$author_q$post_status_q&posts_per_page=15&posts_per_archive_page=-1");
    6038
    61 if ( is_month() ) {
    62         single_month_title(' ');
    63 } elseif ( is_search() ) {
    64         printf(__('Search for &#8220;%s&#8221;'), wp_specialchars($_GET['s']) );
    65 } else {
    66         if ( is_single() )
    67                 printf(__('Comments on %s'), apply_filters( "the_title", $post->post_title));
    68         elseif ( ! is_paged() || get_query_var('paged') == 1 )
    69                 _e('Last 15 Posts');
    70         else
    71                 _e('Previous Posts');
    72 }
    73 ?>
    74 </h2>
     39do_action('restrict_manage_posts');
    7540
    76 <form name="searchform" id="searchform" action="" method="get">
    77   <fieldset>
    78   <legend><?php _e('Search Posts&hellip;') ?></legend>
    79   <input type="text" name="s" id="s" value="<?php if (isset($s)) echo attribute_escape($s); ?>" size="17" />
    80   <input type="submit" name="submit" value="<?php _e('Search') ?>" class="button" />
    81   </fieldset>
    82 </form>
    83 
    84 <?php $arc_result = $wpdb->get_results("SELECT DISTINCT YEAR(post_date) AS yyear, MONTH(post_date) AS mmonth FROM $wpdb->posts WHERE post_type = 'post' ORDER BY post_date DESC");
    85 
    86 if ( count($arc_result) ) { ?>
    87 
    88 <form name="viewarc" id="viewarc" action="" method="get">
    89         <fieldset>
    90         <legend><?php _e('Browse Month&hellip;') ?></legend>
    91         <select name='m'>
    92         <?php
    93                 foreach ($arc_result as $arc_row) {
    94                         if ( $arc_row->yyear == 0 )
    95                                 continue;
    96                         $arc_row->mmonth = zeroise($arc_row->mmonth, 2);
    97 
    98                         if( isset($_GET['m']) && $arc_row->yyear . $arc_row->mmonth == (int) $_GET['m'] )
    99                                 $default = 'selected="selected"';
    100                         else
    101                                 $default = null;
    102 
    103                         echo "<option $default value='$arc_row->yyear$arc_row->mmonth'>";
    104                         echo $wp_locale->get_month($arc_row->mmonth) . " $arc_row->yyear";
    105                         echo "</option>\n";
    106                 }
    107         ?>
    108         </select>
    109                 <input type="submit" name="submit" value="<?php _e('Show Month') ?>" class="button" />
    110         </fieldset>
    111 </form>
    112 
    113 <?php } ?>
    114 
    115 <form name="viewcat" id="viewcat" action="" method="get">
    116         <fieldset>
    117         <legend><?php _e('Browse Category&hellip;') ?></legend>
    118         <?php wp_dropdown_categories('show_option_all='.__('All').'&hide_empty=1&hierarchical=1&show_count=1&selected='.$cat);?>
    119         <input type="submit" name="submit" value="<?php _e('Show Category') ?>" class="button" />
    120         </fieldset>
    121 </form>
    122 
    123 <?php do_action('restrict_manage_posts'); ?>
    124 
    125 <br style="clear:both;" />
    126 
    127 <?php
    12841// define the columns to display, the syntax is 'internal name' => 'display name'
    12942$posts_columns = array(
    13043        'id'         => '<div style="text-align: center">' . __('ID') . '</div>',
     
    14356
    14457?>
    14558
    146 <table class="widefat">
    147         <thead>
    148         <tr>
     59<h2><?php
     60if ( is_single() ) {
     61        printf(__('Comments on %s'), apply_filters( "the_title", $post->post_title));
     62} else {
     63        if ( $post_listing_pageable && !is_archive() && !is_search() )
     64                $h2_noun = is_paged() ? sprintf(__( 'Previous %s' ), $post_status_label) : sprintf(__('Latest %s'), $post_status_label);
     65        else
     66                $h2_noun = $post_status_label;
     67        // Use $_GET instead of is_ since they can override each other
     68        $h2_search = isset($_GET['s'])   && $_GET['s']   ? ' ' . sprintf(__('matching &#8220;%s&#8221;'), wp_specialchars( get_search_query() ) ) : '';
     69        $h2_cat    = isset($_GET['cat']) && $_GET['cat'] ? ' ' . sprintf( __('in &#8220;%s&#8221;'), single_cat_title('', false) ) : '';
     70        $h2_month  = isset($_GET['m'])   && $_GET['m']   ? ' ' . sprintf( __('during %s'), single_month_title(' ', false) ) : '';
     71        printf( _c( '%1$s%2$s%3$s%4$s|manage posts header' ), $h2_noun, $h2_search, $h2_cat, $h2_month );
     72}
     73?></h2>
    14974
    150 <?php foreach($posts_columns as $column_display_name) { ?>
    151         <th scope="col"><?php echo $column_display_name; ?></th>
    152 <?php } ?>
     75<form name="searchform" id="searchform" action="" method="get">
     76        <fieldset><legend><?php _e('Search terms&hellip;'); ?></legend>
     77                <input type="text" name="s" id="s" value="<?php the_search_query(); ?>" size="17" />
     78        </fieldset>
    15379
    154         </tr>
    155         </thead>
    156         <tbody id="the-list">
    157 <?php
    158 if ($posts) {
    159 $bgcolor = '';
    160 while (have_posts()) : the_post();
    161 add_filter('the_title','wp_specialchars');
    162 $class = ('alternate' == $class) ? '' : 'alternate';
    163 ?>
    164         <tr id='post-<?php echo $id; ?>' class='<?php echo $class; ?>'>
     80        <fieldset><legend><?php _e('Post Type&hellip;'); ?></legend>
     81                <select name='post_status'>
     82                        <option<?php selected( @$_GET['post_status'], 0 ); ?> value='0'><?php _e('Any'); ?></option>
     83<?php   foreach ( $post_stati as $status => $label ) : ?>
     84                        <option<?php selected( @$_GET['post_status'], $status ); ?> value='<?php echo $status; ?>'><?php echo $label[0]; ?></option>
     85<?php   endforeach; ?>
     86                </select>
     87        </fieldset>
    16588
    16689<?php
    16790
    168 foreach($posts_columns as $column_name=>$column_display_name) {
    16991
    170         switch($column_name) {
     92$arc_query = "SELECT DISTINCT YEAR(post_date) AS yyear, MONTH(post_date) AS mmonth FROM $wpdb->posts WHERE post_type = 'post' ORDER BY post_date DESC";
    17193
    172         case 'id':
    173                 ?>
    174                 <th scope="row" style="text-align: center"><?php echo $id ?></th>
    175                 <?php
    176                 break;
     94$arc_result = $wpdb->get_results( $arc_query );
    17795
    178         case 'date':
    179                 ?>
    180                 <td><?php if ( '0000-00-00 00:00:00' ==$post->post_modified ) _e('Unpublished'); else the_time(__('Y-m-d \<\b\r \/\> g:i:s a')); ?></td>
    181                 <?php
    182                 break;
    183         case 'title':
    184                 ?>
    185                 <td><?php the_title() ?>
    186                 <?php if ('private' == $post->post_status) _e(' - <strong>Private</strong>'); ?></td>
    187                 <?php
    188                 break;
     96$month_count = count($arc_result);
    18997
    190         case 'categories':
    191                 ?>
    192                 <td><?php the_category(','); ?></td>
    193                 <?php
    194                 break;
     98if ( $month_count && !( 1 == $month_count && 0 == $arc_result[0]->mmonth ) ) { ?>
    19599
    196         case 'comments':
    197                 ?>
    198                 <td style="text-align: center">
    199                         <?php comments_number("<a href='edit.php?p=$id&amp;c=1'>" . __('0') . '</a>', "<a href='edit.php?p=$id&amp;c=1'>" . __('1') . '</a>', "<a href='edit.php?p=$id&amp;c=1'>" . __('%') . '</a>') ?>
    200                         </td>
     100        <fieldset><legend><?php _e('Month&hellip;') ?></legend>
     101                <select name='m'>
     102                        <option<?php selected( @$_GET['m'], 0 ); ?> value='0'><?php _e('Any'); ?></option>
    201103                <?php
    202                 break;
     104                foreach ($arc_result as $arc_row) {
     105                        if ( $arc_row->yyear == 0 )
     106                                continue;
     107                        $arc_row->mmonth = zeroise($arc_row->mmonth, 2);
    203108
    204         case 'author':
    205                 ?>
    206                 <td><?php the_author() ?></td>
    207                 <?php
    208                 break;
     109                        if ( $arc_row->yyear . $arc_row->mmonth == $_GET['m'] )
     110                                $default = ' selected="selected"';
     111                        else
     112                                $default = '';
    209113
    210         case 'control_view':
     114                        echo "<option$default value='$arc_row->yyear$arc_row->mmonth'>";
     115                        echo $wp_locale->get_month($arc_row->mmonth) . " $arc_row->yyear";
     116                        echo "</option>\n";
     117                }
    211118                ?>
    212                 <td><a href="<?php the_permalink(); ?>" rel="permalink" class="edit"><?php _e('View'); ?></a></td>
    213                 <?php
    214                 break;
     119                </select>
     120        </fieldset>
    215121
    216         case 'control_edit':
    217                 ?>
    218                 <td><?php if ( current_user_can('edit_post',$post->ID) ) { echo "<a href='post.php?action=edit&amp;post=$id' class='edit'>" . __('Edit') . "</a>"; } ?></td>
    219                 <?php
    220                 break;
     122<?php } ?>
    221123
    222         case 'control_delete':
    223                 ?>
    224                 <td><?php if ( current_user_can('delete_post',$post->ID) ) { echo "<a href='" . wp_nonce_url("post.php?action=delete&amp;post=$id", 'delete-post_' . $post->ID) . "' class='delete' onclick=\"return deleteSomething( 'post', " . $id . ", '" . js_escape(sprintf(__("You are about to delete this post '%s'.\n'OK' to delete, 'Cancel' to stop."), get_the_title())) . "' );\">" . __('Delete') . "</a>"; } ?></td>
    225                 <?php
    226                 break;
     124        <fieldset><legend><?php _e('Category&hellip;') ?></legend>
     125                <?php wp_dropdown_categories('show_option_all='.__('All').'&hide_empty=1&hierarchical=1&show_count=1&selected='.$cat);?>
     126        </fieldset>
     127        <input type="submit" id="post-query-submit" value="<?php _e('Go &#187;'); ?>" class="button" />
     128</form>
    227129
    228         default:
    229                 ?>
    230                 <td><?php do_action('manage_posts_custom_column', $column_name, $id); ?></td>
    231                 <?php
    232                 break;
     130<br style="clear:both;" />
     131
     132<?php
     133if ( $post_status_q && ( false !== strpos($post_status_q, 'draft') || false !== strpos($post_status_q, 'private') ) ) {
     134        echo '<h3>' . __('Your Posts') . "</h3>\n";
     135        include( 'edit-post-rows.php' );
     136
     137        $editable_ids = get_editable_user_ids( $user_ID );
     138
     139        if ( $editable_ids && count($editable_ids) > 1 ) {
     140                $_editable_ids = join(',', array_diff($editable_ids, array($user_ID)));
     141
     142                $post_status_q = "&post_status=" . $_GET['post_status'];
     143
     144                unset($GLOBALS['day']); // setup_postdata does this
     145                wp("what_to_show=posts&author=$_editable_ids$post_status_q&posts_per_page=-1&posts_per_archive_page=-1");
     146
     147                if ( have_posts() ) {
     148                        echo '<h3>' . __("Others' Posts") . "</h3>\n";
     149                        include( 'edit-post-rows.php' );
     150                }
    233151        }
     152
     153} else {
     154        include( 'edit-post-rows.php' );
    234155}
    235156?>
    236         </tr>
    237 <?php
    238 endwhile;
    239 } else {
    240 ?>
    241   <tr style='background-color: <?php echo $bgcolor; ?>'>
    242     <td colspan="8"><?php _e('No posts found.') ?></td>
    243   </tr>
    244 <?php
    245 } // end if ($posts)
    246 ?>
    247         </tbody>
    248 </table>
    249157
    250158<div id="ajax-response"></div>
    251159
     
    255163</div>
    256164
    257165<?php
     166
    258167if ( 1 == count($posts) ) {
    259168
    260169        $comments = $wpdb->get_results("SELECT * FROM $wpdb->comments WHERE comment_post_ID = $id AND comment_approved != 'spam' ORDER BY comment_date");
     
    279188
    280189<?php comment_text() ?>
    281190
    282 <p><?php comment_date(__('M j, g:i A'));  ?> &#8212; [
     191<p><?php comment_date(__('M j, g:i A')); ?> &#8212; [
    283192<?php
    284193if ( current_user_can('edit_post', $comment->comment_post_ID) ) {
    285         echo " <a href='comment.php?action=editcomment&amp;c=".$comment->comment_ID."'>" .  __('Edit') . '</a>';
     194        echo " <a href='comment.php?action=editcomment&amp;c=".$comment->comment_ID."'>" . __('Edit') . '</a>';
    286195        echo ' | <a href="' . wp_nonce_url('comment.php?action=deletecomment&amp;p=' . $comment->comment_post_ID . '&amp;c=' . $comment->comment_ID, 'delete-comment_' . $comment->comment_ID) . '" onclick="return deleteSomething( \'comment\', ' . $comment->comment_ID . ', \'' . js_escape(sprintf(__("You are about to delete this comment by '%s'.\n'Cancel' to stop, 'OK' to delete."), $comment->comment_author)) . "', theCommentList );\">" . __('Delete') . '</a> ';
    287196        if ( ('none' != $comment_status) && ( current_user_can('moderate_comments') ) ) {
    288197                echo '<span class="unapprove"> | <a href="' . wp_nonce_url('comment.php?action=unapprovecomment&amp;p=' . $comment->comment_post_ID . '&amp;c=' . $comment->comment_ID, 'unapprove-comment_' . $comment->comment_ID) . '" onclick="return dimSomething( \'comment\', ' . $comment->comment_ID . ', \'unapproved\', theCommentList );">' . __('Unapprove') . '</a> </span>';
    289198                echo '<span class="approve"> | <a href="' . wp_nonce_url('comment.php?action=approvecomment&amp;p=' . $comment->comment_post_ID . '&amp;c=' . $comment->comment_ID, 'approve-comment_' . $comment->comment_ID) . '" onclick="return dimSomething( \'comment\', ' . $comment->comment_ID . ', \'unapproved\', theCommentList );">' . __('Approve') . '</a> </span>';
    290199        }
    291         echo " | <a href=\"" . wp_nonce_url("comment.php?action=deletecomment&amp;dt=spam&amp;p=" . $comment->comment_post_ID . "&amp;c=" . $comment->comment_ID, 'delete-comment_' . $comment->comment_ID) . "\" onclick=\"return deleteSomething( 'comment-as-spam', $comment->comment_ID, '" . js_escape(sprintf(__("You are about to mark as spam this comment by '%s'.\n'Cancel' to stop, 'OK' to mark as spam."), $comment->comment_author))  . "', theCommentList );\">" . __('Spam') . "</a> ";
     200        echo " | <a href=\"" . wp_nonce_url("comment.php?action=deletecomment&amp;dt=spam&amp;p=" . $comment->comment_post_ID . "&amp;c=" . $comment->comment_ID, 'delete-comment_' . $comment->comment_ID) . "\" onclick=\"return deleteSomething( 'comment-as-spam', $comment->comment_ID, '" . js_escape(sprintf(__("You are about to mark as spam this comment by '%s'.\n'Cancel' to stop, 'OK' to mark as spam."), $comment->comment_author)) . "', theCommentList );\">" . __('Spam') . "</a> ";
    292201}
    293202?>
    294203</p>
     
    301210        ?>
    302211<?php } ?>
    303212</div>
    304 <?php
    305  include('admin-footer.php');
    306 ?>
     213
     214<?php include('admin-footer.php'); ?>
  • wp-admin/edit-pages.php

     
    44$parent_file = 'edit.php';
    55wp_enqueue_script( 'listman' );
    66require_once('admin-header.php');
     7
     8$post_stati  = array(   //      array( adj, noun )
     9                        'draft'   => array(__('Draft'), __('Draft pages')),
     10                        'future'  => array(__('Future dated'), __('Future dated pages')),
     11                        'private' => array(__('Private'), __('Private pages')),
     12                        'publish' => array(__('Published'), __('Published pages'))
     13                );
     14
     15
     16$post_status_label = _c('Pages|manage pages header');
     17$post_listing_pageable = true;
     18if ( isset($_GET['post_status']) && in_array( $_GET['post_status'], array_keys($post_stati) ) ) {
     19        $post_status_label = $post_stati[$_GET['post_status']][1];
     20        $post_listing_pageable = false;
     21        $post_status_q = '&post_status=' . $_GET['post_status'];
     22        if ( 'publish' == $_GET['post_status'] );
     23                $post_listing_pageable = true;
     24}
     25
    726?>
    827
    928<div class="wrap">
    10 <h2><?php _e('Page Management'); ?></h2>
     29
     30<h2><?php
     31// Use $_GET instead of is_ since they can override each other
     32$h2_search = isset($_GET['s']) && $_GET['s'] ? ' ' . sprintf(__('matching &#8220;%s&#8221;'), wp_specialchars( stripslashes( $_GET['s'] ) ) ) : '';
     33printf( _c( '%1$s%2$s|manage pages header' ), $post_status_label, $h2_search );
     34?></h2>
     35
    1136<p><?php _e('Pages are like posts except they live outside of the normal blog chronology and can be hierarchical. You can use pages to organize and manage any amount of content.'); ?> <a href="page-new.php"><?php _e('Create a new page &raquo;'); ?></a></p>
    1237
    1338<form name="searchform" id="searchform" action="" method="get">
    14         <fieldset>
    15         <legend><?php _e('Search Pages&hellip;') ?></legend>
    16         <input type="text" name="s" id="s" value="<?php if (isset($_GET['s'])) echo attribute_escape($_GET['s']); ?>" size="17" />
    17         <input type="submit" name="submit" value="<?php _e('Search') ?>"  />
     39        <fieldset><legend><?php _e('Search Terms&hellip;') ?></legend>
     40                <input type="text" name="s" id="s" value="<?php echo attribute_escape( stripslashes( $_GET['s'] ) ); ?>" size="17" />
    1841        </fieldset>
     42
     43       
     44        <fieldset><legend><?php _e('Page Type&hellip;'); ?></legend>
     45                <select name='post_status'>
     46                        <option<?php selected( @$_GET['post_status'], 0 ); ?> value='0'><?php _e('Any'); ?></option>
     47<?php   foreach ( $post_stati as $status => $label ) : ?>
     48                        <option<?php selected( @$_GET['post_status'], $status ); ?> value='<?php echo $status; ?>'><?php echo $label[0]; ?></option>
     49<?php   endforeach; ?>
     50                </select>
     51        </fieldset>
     52
     53        <input type="submit" id="post-query-submit" value="<?php _e('Go &#187;'); ?>" class="button" />
    1954</form>
    2055
    2156<br style="clear:both;" />
    2257
    2358<?php
    24 wp('post_type=page&orderby=menu_order&what_to_show=posts&posts_per_page=-1&posts_per_archive_page=-1&order=asc');
     59wp("post_type=page&orderby=menu_order&what_to_show=posts$post_status_q&posts_per_page=-1&posts_per_archive_page=-1&order=asc");
    2560
    2661if ( $_GET['s'] )
    2762        $all = false;
     
    4176  </tr>
    4277  </thead>
    4378  <tbody id="the-list">
    44 <?php
    45 page_rows(0, 0, $posts, $all);
    46 ?>
     79<?php page_rows(0, 0, $posts, $all); ?>
    4780  </tbody>
    4881</table>
    4982
     
    5285<?php
    5386} else {
    5487?>
    55 <p><?php _e('No pages yet.') ?></p>
     88<p><?php _e('No pages found.') ?></p>
    5689<?php
    5790} // end if ($posts)
    5891?>