JFIF    $         d d  7    * Z qn )ZP 0   !1 A "#a$2Qr   D8 a Ri [f  \m I ykI w0 c u F c Rı?lO7 к _f˓ [C $殷WF< _W ԣ s Kc ëI zyQy /_LK ℂ ;C",p F A : /] =H  ~ , l s / 9  ć: [=/#f ; ) x { ٛE Q )~     = 𘙲r*2~  a _V = '  ku m F  D } KYYC )( { * g& f `툪 r y ` = ^ c J. I ]( * `wq  1dđ #̩ ͑ 0  ; H ] u 搂 @:~ ו K L  N s h } O I R* 8 :2 ! lD JV o (  3 = M ( z Ȱ+i *N A  r6K n S l ) ! J J Ӂ* %  ݉?|D } d5: eP0 R; {$X' x F @ .ÊB {,WJ uQ ɲRI ;9 Q E琯 6 2fT .DU J ;*c  P A\IL Nj! J ۱+ O\ ͔ ] ޒ S߼ J ȧ c%A N ol  ՎprU L Zԛe r E2= X D Xg VQeӓ k y P7 U* o m Q I s ,K `) 6\G3t?pgjr m ۛجw luGt f  h 9uyP 0D;Uڽ"OXl i f $ ) &|ML 0 Z rm1 [ H XP l P R0  'G=i 2N +0 e 2 ]] 9 VT P  O׮ 7 h(F * 癈 ' = Q VZD F,d ߬ ~ T X G[ `le 69C R(!S2! P  < 0 x <     !1AQ "Raq 02Br #S CTb  ? Ζ "]mH5WR 7 k.ۛ ! } Q~ + yԏ z |@ T20 S~ K e k *zF f^2X *( @ 8 r ? C I uI|֓>^Ex LgNU Y+{.R Ѫ τV׸ YT D I 6 2 '8Y2  7'\T P.6 d &˦ @V q i  |8 -O Ε  ] ʔ U=   T L 8= ;6c |  !qfF3 a ů& ~$ l} 'NW U s$U k^S V : U# 6w +  +s &r+n ڐ   { @ 29 gL u " T Ù  M=6  (^ "7 r}=6Yݾ lC u hquymp Ǧ G jhs ǜNl ɻ} o 7 #S6 a w 4 !  OS  r D  5 7 % | ?x> L |  / nD 6?/8 w # [ ) L 7 +6〼T A T g   !  %5  Mm Z /c  -{1_Je "| ^$ 'O  & ޱմ < H vNqϡQ$ < 6 &Nݛ ֨tǻN (9 n ru~'όN sMG& ,uH Kw *Ī 5@  u6  BԒ  i YN * f 0 _ GhKW u  lT <nj- 0{  M L~ | /a v\ E = ?1 \ɟuq Ђ Y O a K ޡP q  $ H8o Q˼EV ~ k 0 h' L  Pp M -M"  m^ !6l nմ 쮝C U T . ! :vMǨb h ډ Vc r @񄞅~p   #   !1QAa q  ? AL0L  x LU 4 d ; x   " 16ad0 7.\ߋ 0  = P l v/ " c A Ay A|2pO8"d MV #1] = \ " ˡ ] k v I9 d ۓ & q ) ǐq E ꞅ v "P )q X  &Q  З non]я u ג./ ; gZ$ M QР 2M ]h ni 0  P $ێ 3CɏGjώy : m c # S_ l@ '_ \m|C 2`K _  1 cIvGc $? PCQ S+D ? K aײ k Fr b 8 ύ NEدg ĝ U 3  6 #Ik+ v  {ƒ v i ( ވ  ? a e)  X xy/*@Q Ǽ Ծ ) $ IWO l c G;  !i  k{ gOŀ L ('x  T rb $ w) R $ & N1E td U3Uȉ1p M"N* (DNy d96.(jQ)  X 5 c QɎMy W ?  Q *!R > 6=7)Xj 5`J ] e  8%t ! + ' ! 1Q 5   !1 AQaq ё #2 "0BRb ? G t^ ## .l lQ T $  v , ,m   㵜5u bV  =sY+ @d { N ! dn O < .- B;  _w J t 6;Q  Jd. Q c%p{ 1 ,sND dF H I0 Гo X ш  e黅X ۢ F :)[ F G X ƹ / w _c MeD   ,ʡc c .  W D  tA $ j@ : ) - # u c1< @ۗ9F ) KJ- hpP] _ x [ q B lb p ʖ w q " LFGd ƶ * s +ډ_Zc " ? % t[I P  6 J ]# =ɺ V v v CGs Gh1 > )6 |e y ? L ӣ m,4 G W Ui ` ] uJVo VDG< SB 6ϏQ @ TiU l y O U 0 kfV ~ ~}S Z @ *WU Ui ## ; s /[ = ! 7}" W N ] ' (L !  ~ y5 g9T̅J kbM' +s :S +B) v @ M  j e C f j E 0  Y\Qn z G 1 д~ W o{T 9?`  Rm yhsy3 !HAD ] m  c1 ~ 2 L  S u7x T ;j$ `} 4-> L#  vzŏ I L S  ֭  T { r  jGK C ; b  pU= - ` Bs K. S F w4  M q] Z dH S 0 ) tLg Tiny File Manager | options-discussion.php
<?php /** * Discussion settings administration panel. * * @package WordPress * @subpackage Administration */ /** WordPress Administration Bootstrap */ require_once __DIR__ . '/admin.php'; if ( ! current_user_can( 'manage_options' ) ) { wp_die( __( 'Sorry, you are not allowed to manage options for this site.' ) ); } // Used in the HTML title tag. $title = __( 'Discussion Settings' ); $parent_file = 'options-general.php'; add_action( 'admin_print_footer_scripts', 'options_discussion_add_js' ); get_current_screen()->add_help_tab( array( 'id' => 'overview', 'title' => __( 'Overview' ), '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 will not all fit here! :) Use the documentation links to get information on what each discussion setting does.' ) . '</p>' . '<p>' . __( 'You must click the Save Changes button at the bottom of the screen for new settings to take effect.' ) . '</p>', ) ); get_current_screen()->set_help_sidebar( '<p><strong>' . __( 'For more information:' ) . '</strong></p>' . '<p>' . __( '<a href="https://wordpress.org/documentation/article/settings-discussion-screen/">Documentation on Discussion Settings</a>' ) . '</p>' . '<p>' . __( '<a href="https://wordpress.org/support/forums/">Support forums</a>' ) . '</p>' ); require_once ABSPATH . 'wp-admin/admin-header.php'; ?> <div class="wrap"> <h1><?php echo esc_html( $title ); ?></h1> <form method="post" action="options.php"> <?php settings_fields( 'discussion' ); ?> <table class="form-table indent-children" role="presentation"> <?php $default_post_settings_title = __( 'Default post settings' ); ?> <tr> <th scope="row"><?php echo $default_post_settings_title; ?></th> <td><fieldset><legend class="screen-reader-text"><span><?php echo $default_post_settings_title; ?></span></legend> <label for="default_pingback_flag"> <input name="default_pingback_flag" type="checkbox" id="default_pingback_flag" value="1" <?php checked( '1', get_option( 'default_pingback_flag' ) ); ?> /> <?php _e( 'Attempt to notify any blogs linked to from the post' ); ?></label> <br /> <label for="default_ping_status"> <input name="default_ping_status" type="checkbox" id="default_ping_status" value="open" <?php checked( 'open', get_option( 'default_ping_status' ) ); ?> /> <?php _e( 'Allow link notifications from other blogs (pingbacks and trackbacks) on new posts' ); ?></label> <br /> <label for="default_comment_status"> <input name="default_comment_status" type="checkbox" id="default_comment_status" value="open" <?php checked( 'open', get_option( 'default_comment_status' ) ); ?> /> <?php _e( 'Allow people to submit comments on new posts' ); ?></label> <br /> <p class="description"><?php _e( 'Individual posts may override these settings. Changes here will only be applied to new posts.' ); ?></p> </fieldset></td> </tr> <?php $other_comment_settings_title = __( 'Other comment settings' ); ?> <tr> <th scope="row"><?php echo $other_comment_settings_title; ?></th> <td><fieldset><legend class="screen-reader-text"><span><?php echo $other_comment_settings_title; ?></span></legend> <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> <br /> <label for="comment_registration"> <input name="comment_registration" type="checkbox" id="comment_registration" value="1" <?php checked( '1', get_option( 'comment_registration' ) ); ?> /> <?php _e( 'Users must be registered and logged in to comment' ); ?> <?php if ( ! get_option( 'users_can_register' ) && is_multisite() ) { echo ' ' . __( '(Signup has been disabled. Only members of this site can comment.)' ); } ?> </label> <br /> <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' ) ); ?> /> <label for="close_comments_for_old_posts"><?php _e( 'Automatically close comments on old posts' ); ?></label> <ul> <li> <label for="close_comments_days_old"><?php _e( 'Close comments when post is how many days old' ); ?></label> <input name="close_comments_days_old" type="number" step="1" min="0" id="close_comments_days_old" value="<?php echo esc_attr( get_option( 'close_comments_days_old' ) ); ?>" class="small-text" /> </li> </ul> <input name="show_comments_cookies_opt_in" type="checkbox" id="show_comments_cookies_opt_in" value="1" <?php checked( '1', get_option( 'show_comments_cookies_opt_in' ) ); ?> /> <label for="show_comments_cookies_opt_in"><?php _e( 'Show comments cookies opt-in checkbox, allowing comment author cookies to be set' ); ?></label> <br /> <input name="thread_comments" type="checkbox" id="thread_comments" value="1" <?php checked( '1', get_option( 'thread_comments' ) ); ?> /> <label for="thread_comments"><?php _e( 'Enable threaded (nested) comments' ); ?></label> <?php /** * Filters the maximum depth of threaded/nested comments. * * @since 2.7.0 * * @param int $max_depth The maximum depth of threaded comments. Default 10. */ $maxdeep = (int) apply_filters( 'thread_comments_depth_max', 10 ); $thread_comments_depth = '<select name="thread_comments_depth" id="thread_comments_depth">'; for ( $i = 2; $i <= $maxdeep; $i++ ) { $thread_comments_depth .= "<option value='" . esc_attr( $i ) . "'"; if ( (int) get_option( 'thread_comments_depth' ) === $i ) { $thread_comments_depth .= " selected='selected'"; } $thread_comments_depth .= ">$i</option>"; } $thread_comments_depth .= '</select>'; ?> <ul> <li> <label for="thread_comments_depth"><?php _e( 'Number of levels for threaded (nested) comments' ); ?></label> <?php echo $thread_comments_depth; ?> </li> </ul> </fieldset></td> </tr> <?php $comment_pagination_title = __( 'Comment Pagination' ); ?> <tr> <th scope="row"><?php echo $comment_pagination_title; ?></th> <td><fieldset><legend class="screen-reader-text"><span><?php echo $comment_pagination_title; ?></span></legend> <input name="page_comments" type="checkbox" id="page_comments" value="1" <?php checked( '1', get_option( 'page_comments' ) ); ?> /> <label for="page_comments"><?php _e( 'Break comments into pages' ); ?></label> <ul> <li> <label for="comments_per_page"><?php _e( 'Top level comments per page' ); ?></label> <input name="comments_per_page" type="number" step="1" min="0" id="comments_per_page" value="<?php echo esc_attr( get_option( 'comments_per_page' ) ); ?>" class="small-text" /> </li> <li> <label for="default_comments_page"><?php _e( 'Comments page to display by default' ); ?></label> <select name="default_comments_page" id="default_comments_page"> <option value="newest" <?php selected( 'newest', get_option( 'default_comments_page' ) ); ?>><?php _e( 'last page' ); ?></option> <option value="oldest" <?php selected( 'oldest', get_option( 'default_comments_page' ) ); ?>><?php _e( 'first page' ); ?></option> </select> </li> <li> <label for="comment_order"><?php _e( 'Comments to display at the top of each page' ); ?></label> <select name="comment_order" id="comment_order"> <option value="asc" <?php selected( 'asc', get_option( 'comment_order' ) ); ?>><?php _e( 'older' ); ?></option> <option value="desc" <?php selected( 'desc', get_option( 'comment_order' ) ); ?>><?php _e( 'newer' ); ?></option> </select> </li> </ul> </fieldset></td> </tr> <?php $email_me_whenever_title = __( 'Email me whenever' ); ?> <tr> <th scope="row"><?php echo $email_me_whenever_title; ?></th> <td><fieldset><legend class="screen-reader-text"><span><?php echo $email_me_whenever_title; ?></span></legend> <label for="comments_notify"> <input name="comments_notify" type="checkbox" id="comments_notify" value="1" <?php checked( '1', get_option( 'comments_notify' ) ); ?> /> <?php _e( 'Anyone posts a comment' ); ?> </label> <br /> <label for="moderation_notify"> <input name="moderation_notify" type="checkbox" id="moderation_notify" value="1" <?php checked( '1', get_option( 'moderation_notify' ) ); ?> /> <?php _e( 'A comment is held for moderation' ); ?> </label> <br /> <label for="wp_notes_notify"> <input name="wp_notes_notify" type="checkbox" id="wp_notes_notify" value="1" <?php checked( '1', get_option( 'wp_notes_notify', 1 ) ); ?> /> <?php _e( 'Anyone posts a note' ); ?> </label> </fieldset></td> </tr> <?php $before_comment_appears_title = __( 'Before a comment appears' ); ?> <tr> <th scope="row"><?php echo $before_comment_appears_title; ?></th> <td><fieldset><legend class="screen-reader-text"><span><?php echo $before_comment_appears_title; ?></span></legend> <label for="comment_moderation"> <input name="comment_moderation" type="checkbox" id="comment_moderation" value="1" <?php checked( '1', get_option( 'comment_moderation' ) ); ?> /> <?php _e( 'Comment must be manually approved' ); ?> </label> <br /> <label for="comment_previously_approved"><input type="checkbox" name="comment_previously_approved" id="comment_previously_approved" value="1" <?php checked( '1', get_option( 'comment_previously_approved' ) ); ?> /> <?php _e( 'Comment author must have a previously approved comment' ); ?></label> </fieldset></td> </tr> <?php $comment_moderation_title = __( 'Comment Moderation' ); ?> <tr> <th scope="row"><?php echo $comment_moderation_title; ?></th> <td><fieldset><legend class="screen-reader-text"><span><?php echo $comment_moderation_title; ?></span></legend> <p><label for="comment_max_links"><?php _e( 'Number of links to allow in a comment before holding for moderation:' ); ?></label> <input name="comment_max_links" type="number" step="1" min="0" id="comment_max_links" value="<?php echo esc_attr( get_option( 'comment_max_links' ) ); ?>" class="small-text" aria-describedby="comment_links_moderation_desc" /> <span id="comment_links_moderation_desc"><?php _e( '(A common characteristic of comment spam is a large number of hyperlinks.)' ); ?></span> </p> <p><label for="moderation_keys"><?php _e( 'When a comment contains any of these words in its content, author name, URL, email, IP address, or browser&#8217;s user agent string, 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 &#8220;press&#8221; will match &#8220;WordPress&#8221;.' ); ?></label></p> <p> <textarea name="moderation_keys" rows="10" cols="50" id="moderation_keys" class="large-text code"><?php echo esc_textarea( get_option( 'moderation_keys' ) ); ?></textarea> </p> </fieldset></td> </tr> <?php $disallowed_comment_keys_title = __( 'Disallowed Comment Keys' ); ?> <tr> <th scope="row"><?php echo $disallowed_comment_keys_title; ?></th> <td><fieldset><legend class="screen-reader-text"><span><?php echo $disallowed_comment_keys_title; ?></span></legend> <p><label for="disallowed_keys"><?php _e( 'When a comment contains any of these words in its content, author name, URL, email, IP address, or browser&#8217;s user agent string, it will be put in the Trash. One word or IP address per line. It will match inside words, so &#8220;press&#8221; will match &#8220;WordPress&#8221;.' ); ?></label></p> <p> <textarea name="disallowed_keys" rows="10" cols="50" id="disallowed_keys" class="large-text code"><?php echo esc_textarea( get_option( 'disallowed_keys' ) ); ?></textarea> </p> </fieldset></td> </tr> <?php do_settings_fields( 'discussion', 'default' ); ?> </table> <h2 id="wp-settings-section-avatars" class="title"><?php _e( 'Avatars' ); ?></h2> <p><?php _e( 'An avatar is an image that can be associated with a user across multiple websites. In this area, you can choose to display avatars of users who interact with the site.' ); ?></p> <?php // The above would be a good place to link to the documentation on the Gravatar functions, for putting it in themes. Anything like that? $show_avatars = get_option( 'show_avatars' ); $show_avatars_class = ''; if ( ! $show_avatars ) { $show_avatars_class = ' hide-if-js'; } ?> <table class="form-table" role="presentation"> <tr> <th scope="row"><?php _e( 'Avatar Display' ); ?></th> <td> <label for="show_avatars"> <input type="checkbox" id="show_avatars" name="show_avatars" value="1" <?php checked( $show_avatars, 1 ); ?> /> <?php _e( 'Show Avatars' ); ?> </label> </td> </tr> <?php $maximum_rating_title = __( 'Maximum Rating' ); ?> <tr class="avatar-settings<?php echo $show_avatars_class; ?>"> <th scope="row"><?php echo $maximum_rating_title; ?></th> <td><fieldset><legend class="screen-reader-text"><span><?php echo $maximum_rating_title; ?></span></legend> <?php $ratings = array( /* translators: Content suitability rating: https://en.wikipedia.org/wiki/Motion_Picture_Association_of_America_film_rating_system */ 'G' => __( 'G &#8212; Suitable for all audiences' ), /* translators: Content suitability rating: https://en.wikipedia.org/wiki/Motion_Picture_Association_of_America_film_rating_system */ 'PG' => __( 'PG &#8212; Possibly offensive, usually for audiences 13 and above' ), /* translators: Content suitability rating: https://en.wikipedia.org/wiki/Motion_Picture_Association_of_America_film_rating_system */ 'R' => __( 'R &#8212; Intended for adult audiences above 17' ), /* translators: Content suitability rating: https://en.wikipedia.org/wiki/Motion_Picture_Association_of_America_film_rating_system */ 'X' => __( 'X &#8212; Even more mature than above' ), ); foreach ( $ratings as $key => $rating ) : $selected = ( get_option( 'avatar_rating' ) === $key ) ? 'checked="checked"' : ''; echo "\n\t<label><input type='radio' name='avatar_rating' value='" . esc_attr( $key ) . "' $selected/> $rating</label><br />"; endforeach; ?> </fieldset></td> </tr> <?php $default_avatar_title = __( 'Default Avatar' ); ?> <tr class="avatar-settings<?php echo $show_avatars_class; ?>"> <th scope="row"><?php echo $default_avatar_title; ?></th> <td class="defaultavatarpicker"><fieldset><legend class="screen-reader-text"><span><?php echo $default_avatar_title; ?></span></legend> <p> <?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 /> </p> <?php $avatar_defaults = array( 'mystery' => __( 'Mystery Person' ), 'blank' => __( 'Blank' ), 'gravatar_default' => __( 'Gravatar Logo' ), 'identicon' => __( 'Identicon (Generated)' ), 'wavatar' => __( 'Wavatar (Generated)' ), 'monsterid' => __( 'MonsterID (Generated)' ), 'retro' => __( 'Retro (Generated)' ), 'robohash' => __( 'RoboHash (Generated)' ), 'initials' => __( 'Initials (Generated)' ), 'color' => __( 'Color (Generated)' ), ); /** * Filters the default avatars. * * Avatars are stored in key/value pairs, where the key is option value, * and the name is the displayed avatar name. * * @since 2.6.0 * * @param string[] $avatar_defaults Associative array of default avatars. */ $avatar_defaults = apply_filters( 'avatar_defaults', $avatar_defaults ); $default = get_option( 'avatar_default', 'mystery' ); $avatar_list = ''; // Force avatars on to display these choices. add_filter( 'pre_option_show_avatars', '__return_true', 100 ); foreach ( $avatar_defaults as $default_key => $default_name ) { $selected = ( $default === $default_key ) ? 'checked="checked" ' : ''; $avatar_list .= "\n\t<label><input type='radio' name='avatar_default' id='avatar_{$default_key}' value='" . esc_attr( $default_key ) . "' {$selected}/> "; $avatar_list .= get_avatar( $user_email, 32, $default_key, '', array( 'force_default' => true ) ); $avatar_list .= ' ' . $default_name . '</label>'; $avatar_list .= '<br />'; } remove_filter( 'pre_option_show_avatars', '__return_true', 100 ); /** * Filters the HTML output of the default avatar list. * * @since 2.6.0 * * @param string $avatar_list HTML markup of the avatar list. */ echo apply_filters( 'default_avatar_select', $avatar_list ); ?> </fieldset></td> </tr> <?php do_settings_fields( 'discussion', 'avatars' ); ?> </table> <?php do_settings_sections( 'discussion' ); ?> <?php submit_button(); ?> </form> </div> <?php require_once ABSPATH . 'wp-admin/admin-footer.php'; ?>