Changeset 42343 for trunk/src/wp-admin/options-discussion.php
- Timestamp:
- 11/30/2017 11:09:33 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/wp-admin/options-discussion.php
r42217 r42343 9 9 require_once( dirname( __FILE__ ) . '/admin.php' ); 10 10 11 if ( ! current_user_can( 'manage_options' ) ) 11 if ( ! current_user_can( 'manage_options' ) ) { 12 12 wp_die( __( 'Sorry, you are not allowed to manage options for this site.' ) ); 13 14 $title = __('Discussion Settings'); 13 } 14 15 $title = __( 'Discussion Settings' ); 15 16 $parent_file = 'options-general.php'; 16 17 17 18 add_action( 'admin_print_footer_scripts', 'options_discussion_add_js' ); 18 19 19 get_current_screen()->add_help_tab( array( 20 'id' => 'overview', 21 'title' => __('Overview'), 22 'content' => '<p>' . __('This screen provides many options for controlling the management and display of comments and links to your posts/pages. So many, in fact, they won’t all fit here! :) Use the documentation links to get information on what each discussion setting does.') . '</p>' . 23 '<p>' . __('You must click the Save Changes button at the bottom of the screen for new settings to take effect.') . '</p>', 24 ) ); 20 get_current_screen()->add_help_tab( 21 array( 22 'id' => 'overview', 23 'title' => __( 'Overview' ), 24 'content' => '<p>' . __( 'This screen provides many options for controlling the management and display of comments and links to your posts/pages. So many, in fact, they won’t all fit here! :) Use the documentation links to get information on what each discussion setting does.' ) . '</p>' . 25 '<p>' . __( 'You must click the Save Changes button at the bottom of the screen for new settings to take effect.' ) . '</p>', 26 ) 27 ); 25 28 26 29 get_current_screen()->set_help_sidebar( 27 '<p><strong>' . __( 'For more information:') . '</strong></p>' .28 '<p>' . __( '<a href="https://codex.wordpress.org/Settings_Discussion_Screen">Documentation on Discussion Settings</a>') . '</p>' .29 '<p>' . __( '<a href="https://wordpress.org/support/">Support Forums</a>') . '</p>'30 '<p><strong>' . __( 'For more information:' ) . '</strong></p>' . 31 '<p>' . __( '<a href="https://codex.wordpress.org/Settings_Discussion_Screen">Documentation on Discussion Settings</a>' ) . '</p>' . 32 '<p>' . __( '<a href="https://wordpress.org/support/">Support Forums</a>' ) . '</p>' 30 33 ); 31 34 … … 37 40 38 41 <form method="post" action="options.php"> 39 <?php settings_fields( 'discussion'); ?>42 <?php settings_fields( 'discussion' ); ?> 40 43 41 44 <table class="form-table"> 42 45 <tr> 43 <th scope="row"><?php _e( 'Default article settings'); ?></th>44 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Default article settings'); ?></span></legend>46 <th scope="row"><?php _e( 'Default article settings' ); ?></th> 47 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Default article settings' ); ?></span></legend> 45 48 <label for="default_pingback_flag"> 46 <input name="default_pingback_flag" type="checkbox" id="default_pingback_flag" value="1" <?php checked( '1', get_option('default_pingback_flag')); ?> />47 <?php _e( 'Attempt to notify any blogs linked to from the article'); ?></label>49 <input name="default_pingback_flag" type="checkbox" id="default_pingback_flag" value="1" <?php checked( '1', get_option( 'default_pingback_flag' ) ); ?> /> 50 <?php _e( 'Attempt to notify any blogs linked to from the article' ); ?></label> 48 51 <br /> 49 52 <label for="default_ping_status"> 50 <input name="default_ping_status" type="checkbox" id="default_ping_status" value="open" <?php checked( 'open', get_option('default_ping_status')); ?> />51 <?php _e( 'Allow link notifications from other blogs (pingbacks and trackbacks) on new articles'); ?></label>53 <input name="default_ping_status" type="checkbox" id="default_ping_status" value="open" <?php checked( 'open', get_option( 'default_ping_status' ) ); ?> /> 54 <?php _e( 'Allow link notifications from other blogs (pingbacks and trackbacks) on new articles' ); ?></label> 52 55 <br /> 53 56 <label for="default_comment_status"> 54 <input name="default_comment_status" type="checkbox" id="default_comment_status" value="open" <?php checked( 'open', get_option('default_comment_status')); ?> />55 <?php _e( 'Allow people to post comments on new articles'); ?></label>57 <input name="default_comment_status" type="checkbox" id="default_comment_status" value="open" <?php checked( 'open', get_option( 'default_comment_status' ) ); ?> /> 58 <?php _e( 'Allow people to post comments on new articles' ); ?></label> 56 59 <br /> 57 60 <p class="description"><?php echo '(' . __( 'These settings may be overridden for individual articles.' ) . ')'; ?></p> … … 59 62 </tr> 60 63 <tr> 61 <th scope="row"><?php _e( 'Other comment settings'); ?></th>62 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Other comment settings'); ?></span></legend>63 <label for="require_name_email"><input type="checkbox" name="require_name_email" id="require_name_email" value="1" <?php checked( '1', get_option('require_name_email')); ?> /> <?php _e('Comment author must fill out name and email'); ?></label>64 <th scope="row"><?php _e( 'Other comment settings' ); ?></th> 65 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Other comment settings' ); ?></span></legend> 66 <label for="require_name_email"><input type="checkbox" name="require_name_email" id="require_name_email" value="1" <?php checked( '1', get_option( 'require_name_email' ) ); ?> /> <?php _e( 'Comment author must fill out name and email' ); ?></label> 64 67 <br /> 65 68 <label for="comment_registration"> 66 <input name="comment_registration" type="checkbox" id="comment_registration" value="1" <?php checked('1', get_option('comment_registration')); ?> /> 67 <?php _e('Users must be registered and logged in to comment'); ?> 68 <?php if ( !get_option( 'users_can_register' ) && is_multisite() ) echo ' ' . __( '(Signup has been disabled. Only members of this site can comment.)' ); ?> 69 <input name="comment_registration" type="checkbox" id="comment_registration" value="1" <?php checked( '1', get_option( 'comment_registration' ) ); ?> /> 70 <?php _e( 'Users must be registered and logged in to comment' ); ?> 71 <?php 72 if ( ! get_option( 'users_can_register' ) && is_multisite() ) { 73 echo ' ' . __( '(Signup has been disabled. Only members of this site can comment.)' );} 74 ?> 69 75 </label> 70 76 <br /> 71 77 72 78 <label for="close_comments_for_old_posts"> 73 <input name="close_comments_for_old_posts" type="checkbox" id="close_comments_for_old_posts" value="1" <?php checked('1', get_option('close_comments_for_old_posts')); ?> /> 74 <?php printf( 79 <input name="close_comments_for_old_posts" type="checkbox" id="close_comments_for_old_posts" value="1" <?php checked( '1', get_option( 'close_comments_for_old_posts' ) ); ?> /> 80 <?php 81 printf( 75 82 __( 'Automatically close comments on articles older than %s days' ), 76 83 '</label> <label for="close_comments_days_old"><input name="close_comments_days_old" type="number" min="0" step="1" id="close_comments_days_old" value="' . esc_attr( get_option( 'close_comments_days_old' ) ) . '" class="small-text" />' 77 ); ?> 84 ); 85 ?> 78 86 </label> 79 87 <br /> 80 88 <label for="thread_comments"> 81 <input name="thread_comments" type="checkbox" id="thread_comments" value="1" <?php checked( '1', get_option('thread_comments')); ?> />89 <input name="thread_comments" type="checkbox" id="thread_comments" value="1" <?php checked( '1', get_option( 'thread_comments' ) ); ?> /> 82 90 <?php 83 91 /** … … 92 100 $thread_comments_depth = '</label> <label for="thread_comments_depth"><select name="thread_comments_depth" id="thread_comments_depth">'; 93 101 for ( $i = 2; $i <= $maxdeep; $i++ ) { 94 $thread_comments_depth .= "<option value='" . esc_attr($i) . "'"; 95 if ( get_option('thread_comments_depth') == $i ) $thread_comments_depth .= " selected='selected'"; 102 $thread_comments_depth .= "<option value='" . esc_attr( $i ) . "'"; 103 if ( get_option( 'thread_comments_depth' ) == $i ) { 104 $thread_comments_depth .= " selected='selected'"; 105 } 96 106 $thread_comments_depth .= ">$i</option>"; 97 107 } 98 108 $thread_comments_depth .= '</select>'; 99 109 100 printf( __('Enable threaded (nested) comments %s levels deep'), $thread_comments_depth ); 101 102 ?></label> 110 printf( __( 'Enable threaded (nested) comments %s levels deep' ), $thread_comments_depth ); 111 112 ?> 113 </label> 103 114 <br /> 104 115 <label for="page_comments"> … … 106 117 <?php 107 118 $default_comments_page = '</label> <label for="default_comments_page"><select name="default_comments_page" id="default_comments_page"><option value="newest"'; 108 if ( 'newest' == get_option('default_comments_page') ) $default_comments_page .= ' selected="selected"'; 109 $default_comments_page .= '>' . __('last') . '</option><option value="oldest"'; 110 if ( 'oldest' == get_option('default_comments_page') ) $default_comments_page .= ' selected="selected"'; 111 $default_comments_page .= '>' . __('first') . '</option></select>'; 119 if ( 'newest' == get_option( 'default_comments_page' ) ) { 120 $default_comments_page .= ' selected="selected"'; 121 } 122 $default_comments_page .= '>' . __( 'last' ) . '</option><option value="oldest"'; 123 if ( 'oldest' == get_option( 'default_comments_page' ) ) { 124 $default_comments_page .= ' selected="selected"'; 125 } 126 $default_comments_page .= '>' . __( 'first' ) . '</option></select>'; 112 127 printf( 113 128 /* translators: 1: Form field control for number of top level comments per page, 2: Form field control for the 'first' or 'last' page */ … … 116 131 $default_comments_page 117 132 ); 118 ?></label> 119 <br /> 120 <label for="comment_order"><?php 133 ?> 134 </label> 135 <br /> 136 <label for="comment_order"> 137 <?php 121 138 122 139 $comment_order = '<select name="comment_order" id="comment_order"><option value="asc"'; 123 if ( 'asc' == get_option('comment_order') ) $comment_order .= ' selected="selected"'; 124 $comment_order .= '>' . __('older') . '</option><option value="desc"'; 125 if ( 'desc' == get_option('comment_order') ) $comment_order .= ' selected="selected"'; 126 $comment_order .= '>' . __('newer') . '</option></select>'; 127 128 printf( __('Comments should be displayed with the %s comments at the top of each page'), $comment_order ); 129 130 ?></label> 131 </fieldset></td> 132 </tr> 133 <tr> 134 <th scope="row"><?php _e('Email me whenever'); ?></th> 135 <td><fieldset><legend class="screen-reader-text"><span><?php _e('Email me whenever'); ?></span></legend> 140 if ( 'asc' == get_option( 'comment_order' ) ) { 141 $comment_order .= ' selected="selected"'; 142 } 143 $comment_order .= '>' . __( 'older' ) . '</option><option value="desc"'; 144 if ( 'desc' == get_option( 'comment_order' ) ) { 145 $comment_order .= ' selected="selected"'; 146 } 147 $comment_order .= '>' . __( 'newer' ) . '</option></select>'; 148 149 printf( __( 'Comments should be displayed with the %s comments at the top of each page' ), $comment_order ); 150 151 ?> 152 </label> 153 </fieldset></td> 154 </tr> 155 <tr> 156 <th scope="row"><?php _e( 'Email me whenever' ); ?></th> 157 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Email me whenever' ); ?></span></legend> 136 158 <label for="comments_notify"> 137 <input name="comments_notify" type="checkbox" id="comments_notify" value="1" <?php checked( '1', get_option('comments_notify')); ?> />138 <?php _e( 'Anyone posts a comment'); ?> </label>159 <input name="comments_notify" type="checkbox" id="comments_notify" value="1" <?php checked( '1', get_option( 'comments_notify' ) ); ?> /> 160 <?php _e( 'Anyone posts a comment' ); ?> </label> 139 161 <br /> 140 162 <label for="moderation_notify"> 141 <input name="moderation_notify" type="checkbox" id="moderation_notify" value="1" <?php checked( '1', get_option('moderation_notify')); ?> />142 <?php _e( 'A comment is held for moderation'); ?> </label>143 </fieldset></td> 144 </tr> 145 <tr> 146 <th scope="row"><?php _e( 'Before a comment appears'); ?></th>147 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Before a comment appears'); ?></span></legend>163 <input name="moderation_notify" type="checkbox" id="moderation_notify" value="1" <?php checked( '1', get_option( 'moderation_notify' ) ); ?> /> 164 <?php _e( 'A comment is held for moderation' ); ?> </label> 165 </fieldset></td> 166 </tr> 167 <tr> 168 <th scope="row"><?php _e( 'Before a comment appears' ); ?></th> 169 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Before a comment appears' ); ?></span></legend> 148 170 <label for="comment_moderation"> 149 <input name="comment_moderation" type="checkbox" id="comment_moderation" value="1" <?php checked( '1', get_option('comment_moderation')); ?> />150 <?php _e( 'Comment must be manually approved'); ?> </label>151 <br /> 152 <label for="comment_whitelist"><input type="checkbox" name="comment_whitelist" id="comment_whitelist" value="1" <?php checked( '1', get_option('comment_whitelist')); ?> /> <?php _e('Comment author must have a previously approved comment'); ?></label>153 </fieldset></td> 154 </tr> 155 <tr> 156 <th scope="row"><?php _e( 'Comment Moderation'); ?></th>157 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Comment Moderation'); ?></span></legend>158 <p><label for="comment_max_links"><?php printf( __('Hold a comment in the queue if it contains %s or more links. (A common characteristic of comment spam is a large number of hyperlinks.)'), '<input name="comment_max_links" type="number" step="1" min="0" id="comment_max_links" value="' . esc_attr(get_option('comment_max_links')) . '" class="small-text" />' ); ?></label></p>159 160 <p><label for="moderation_keys"><?php _e( 'When a comment contains any of these words in its content, name, URL, email, or IP address, it will be held in the <a href="edit-comments.php?comment_status=moderated">moderation queue</a>. One word or IP address per line. It will match inside words, so “press” will match “WordPress”.'); ?></label></p>171 <input name="comment_moderation" type="checkbox" id="comment_moderation" value="1" <?php checked( '1', get_option( 'comment_moderation' ) ); ?> /> 172 <?php _e( 'Comment must be manually approved' ); ?> </label> 173 <br /> 174 <label for="comment_whitelist"><input type="checkbox" name="comment_whitelist" id="comment_whitelist" value="1" <?php checked( '1', get_option( 'comment_whitelist' ) ); ?> /> <?php _e( 'Comment author must have a previously approved comment' ); ?></label> 175 </fieldset></td> 176 </tr> 177 <tr> 178 <th scope="row"><?php _e( 'Comment Moderation' ); ?></th> 179 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Comment Moderation' ); ?></span></legend> 180 <p><label for="comment_max_links"><?php printf( __( 'Hold a comment in the queue if it contains %s or more links. (A common characteristic of comment spam is a large number of hyperlinks.)' ), '<input name="comment_max_links" type="number" step="1" min="0" id="comment_max_links" value="' . esc_attr( get_option( 'comment_max_links' ) ) . '" class="small-text" />' ); ?></label></p> 181 182 <p><label for="moderation_keys"><?php _e( 'When a comment contains any of these words in its content, name, URL, email, or IP address, it will be held in the <a href="edit-comments.php?comment_status=moderated">moderation queue</a>. One word or IP address per line. It will match inside words, so “press” will match “WordPress”.' ); ?></label></p> 161 183 <p> 162 184 <textarea name="moderation_keys" rows="10" cols="50" id="moderation_keys" class="large-text code"><?php echo esc_textarea( get_option( 'moderation_keys' ) ); ?></textarea> … … 165 187 </tr> 166 188 <tr> 167 <th scope="row"><?php _e( 'Comment Blacklist'); ?></th>168 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Comment Blacklist'); ?></span></legend>169 <p><label for="blacklist_keys"><?php _e( 'When a comment contains any of these words in its content, name, URL, email, or IP address, it will be put in the trash. One word or IP address per line. It will match inside words, so “press” will match “WordPress”.'); ?></label></p>189 <th scope="row"><?php _e( 'Comment Blacklist' ); ?></th> 190 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Comment Blacklist' ); ?></span></legend> 191 <p><label for="blacklist_keys"><?php _e( 'When a comment contains any of these words in its content, name, URL, email, or IP address, it will be put in the trash. One word or IP address per line. It will match inside words, so “press” will match “WordPress”.' ); ?></label></p> 170 192 <p> 171 193 <textarea name="blacklist_keys" rows="10" cols="50" id="blacklist_keys" class="large-text code"><?php echo esc_textarea( get_option( 'blacklist_keys' ) ); ?></textarea> … … 173 195 </fieldset></td> 174 196 </tr> 175 <?php do_settings_fields( 'discussion', 'default'); ?>197 <?php do_settings_fields( 'discussion', 'default' ); ?> 176 198 </table> 177 199 178 <h2 class="title"><?php _e( 'Avatars'); ?></h2>179 180 <p><?php _e( 'An avatar is an image that follows you from weblog to weblog appearing beside your name when you comment on avatar enabled sites. Here you can enable the display of avatars for people who comment on your site.'); ?></p>200 <h2 class="title"><?php _e( 'Avatars' ); ?></h2> 201 202 <p><?php _e( 'An avatar is an image that follows you from weblog to weblog appearing beside your name when you comment on avatar enabled sites. Here you can enable the display of avatars for people who comment on your site.' ); ?></p> 181 203 182 204 <?php 183 205 // the above would be a good place to link to codex documentation on the gravatar functions, for putting it in themes. anything like that? 184 206 185 $show_avatars = get_option( 'show_avatars' );207 $show_avatars = get_option( 'show_avatars' ); 186 208 $show_avatars_class = ''; 187 209 if ( ! $show_avatars ) { … … 192 214 <table class="form-table"> 193 215 <tr> 194 <th scope="row"><?php _e( 'Avatar Display'); ?></th>195 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Avatar Display'); ?></span></legend>216 <th scope="row"><?php _e( 'Avatar Display' ); ?></th> 217 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Avatar Display' ); ?></span></legend> 196 218 <label for="show_avatars"> 197 219 <input type="checkbox" id="show_avatars" name="show_avatars" value="1" <?php checked( $show_avatars, 1 ); ?> /> … … 201 223 </tr> 202 224 <tr class="avatar-settings<?php echo $show_avatars_class; ?>"> 203 <th scope="row"><?php _e( 'Maximum Rating'); ?></th>204 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Maximum Rating'); ?></span></legend>225 <th scope="row"><?php _e( 'Maximum Rating' ); ?></th> 226 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Maximum Rating' ); ?></span></legend> 205 227 206 228 <?php 207 229 $ratings = array( 208 230 /* translators: Content suitability rating: https://en.wikipedia.org/wiki/Motion_Picture_Association_of_America_film_rating_system */ 209 'G' => __('G — Suitable for all audiences'),231 'G' => __( 'G — Suitable for all audiences' ), 210 232 /* translators: Content suitability rating: https://en.wikipedia.org/wiki/Motion_Picture_Association_of_America_film_rating_system */ 211 'PG' => __( 'PG — Possibly offensive, usually for audiences 13 and above'),233 'PG' => __( 'PG — Possibly offensive, usually for audiences 13 and above' ), 212 234 /* translators: Content suitability rating: https://en.wikipedia.org/wiki/Motion_Picture_Association_of_America_film_rating_system */ 213 'R' => __('R — Intended for adult audiences above 17'),235 'R' => __( 'R — Intended for adult audiences above 17' ), 214 236 /* translators: Content suitability rating: https://en.wikipedia.org/wiki/Motion_Picture_Association_of_America_film_rating_system */ 215 'X' => __('X — Even more mature than above')216 ); 217 foreach ( $ratings as $key => $rating) :218 $selected = ( get_option('avatar_rating') == $key) ? 'checked="checked"' : '';219 echo "\n\t<label><input type='radio' name='avatar_rating' value='" . esc_attr( $key) . "' $selected/> $rating</label><br />";237 'X' => __( 'X — Even more mature than above' ), 238 ); 239 foreach ( $ratings as $key => $rating ) : 240 $selected = ( get_option( 'avatar_rating' ) == $key ) ? 'checked="checked"' : ''; 241 echo "\n\t<label><input type='radio' name='avatar_rating' value='" . esc_attr( $key ) . "' $selected/> $rating</label><br />"; 220 242 endforeach; 221 243 ?> … … 224 246 </tr> 225 247 <tr class="avatar-settings<?php echo $show_avatars_class; ?>"> 226 <th scope="row"><?php _e( 'Default Avatar'); ?></th>227 <td class="defaultavatarpicker"><fieldset><legend class="screen-reader-text"><span><?php _e( 'Default Avatar'); ?></span></legend>228 229 <?php _e( 'For users without a custom avatar of their own, you can either display a generic logo or a generated one based on their email address.'); ?><br />248 <th scope="row"><?php _e( 'Default Avatar' ); ?></th> 249 <td class="defaultavatarpicker"><fieldset><legend class="screen-reader-text"><span><?php _e( 'Default Avatar' ); ?></span></legend> 250 251 <?php _e( 'For users without a custom avatar of their own, you can either display a generic logo or a generated one based on their email address.' ); ?><br /> 230 252 231 253 <?php 232 254 $avatar_defaults = array( 233 'mystery' => __('Mystery Person'),234 'blank' => __('Blank'),235 'gravatar_default' => __( 'Gravatar Logo'),236 'identicon' => __('Identicon (Generated)'),237 'wavatar' => __('Wavatar (Generated)'),238 'monsterid' => __('MonsterID (Generated)'),239 'retro' => __('Retro (Generated)')255 'mystery' => __( 'Mystery Person' ), 256 'blank' => __( 'Blank' ), 257 'gravatar_default' => __( 'Gravatar Logo' ), 258 'identicon' => __( 'Identicon (Generated)' ), 259 'wavatar' => __( 'Wavatar (Generated)' ), 260 'monsterid' => __( 'MonsterID (Generated)' ), 261 'retro' => __( 'Retro (Generated)' ), 240 262 ); 241 263 /** … … 250 272 */ 251 273 $avatar_defaults = apply_filters( 'avatar_defaults', $avatar_defaults ); 252 $default = get_option( 'avatar_default', 'mystery' );253 $avatar_list = '';274 $default = get_option( 'avatar_default', 'mystery' ); 275 $avatar_list = ''; 254 276 255 277 // Force avatars on to display these choices … … 257 279 258 280 foreach ( $avatar_defaults as $default_key => $default_name ) { 259 $selected = ($default == $default_key) ? 'checked="checked" ' : '';260 $avatar_list .= "\n\t<label><input type='radio' name='avatar_default' id='avatar_{$default_key}' value='" . esc_attr( $default_key) . "' {$selected}/> ";281 $selected = ( $default == $default_key ) ? 'checked="checked" ' : ''; 282 $avatar_list .= "\n\t<label><input type='radio' name='avatar_default' id='avatar_{$default_key}' value='" . esc_attr( $default_key ) . "' {$selected}/> "; 261 283 $avatar_list .= get_avatar( $user_email, 32, $default_key, '', array( 'force_default' => true ) ); 262 284 $avatar_list .= ' ' . $default_name . '</label>'; … … 278 300 </fieldset></td> 279 301 </tr> 280 <?php do_settings_fields( 'discussion', 'avatars'); ?>302 <?php do_settings_fields( 'discussion', 'avatars' ); ?> 281 303 </table> 282 304 283 <?php do_settings_sections( 'discussion'); ?>305 <?php do_settings_sections( 'discussion' ); ?> 284 306 285 307 <?php submit_button(); ?>
Note: See TracChangeset
for help on using the changeset viewer.