晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
|
Server : Apache System : Linux srv.rainic.com 4.18.0-553.47.1.el8_10.x86_64 #1 SMP Wed Apr 2 05:45:37 EDT 2025 x86_64 User : rainic ( 1014) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/rainic/public_html/oldTZh/wp-content/plugins/wp-rocket/inc/admin/ui/ |
Upload File : |
<?php
defined( 'ABSPATH' ) || exit;
/**
* Add a link "Purge cache" in the post submit area
*
* @since 1.0
*/
function rocket_post_submitbox_start() {
if ( ! rocket_can_display_options() ) {
return;
}
if ( current_user_can( 'rocket_purge_posts' ) ) {
global $post;
$cpts = get_post_types(
[
'public' => true,
],
'objects'
);
/**
* Filters the post type on submitbox.
*
* @since 3.12.1
*
* @param array $cpts Post Types.
*/
$cpts = apply_filters( 'rocket_submitbox_options_post_types', $cpts );
if ( isset( $cpts[ $post->post_type ] ) ) {
$url = wp_nonce_url( admin_url( 'admin-post.php?action=purge_cache&type=post-' . $post->ID ), 'purge_cache_post-' . $post->ID );
printf( '<div id="purge-action"><a class="button-secondary" href="%s">%s</a></div>', esc_url( $url ), esc_html__( 'Clear cache', 'rocket' ) );
}
}
}
add_action( 'post_submitbox_start', 'rocket_post_submitbox_start' );
/**
* Add "Cache options" metabox
*
* @since 2.5
*/
function rocket_cache_options_meta_boxes() {
if ( ! rocket_can_display_options() ) {
return;
}
if ( current_user_can( 'rocket_manage_options' ) ) {
$cpts = get_post_types(
[
'public' => true,
],
'objects'
);
unset( $cpts['attachment'] );
$cpts = apply_filters( 'rocket_metabox_options_post_types', $cpts );
foreach ( $cpts as $cpt => $cpt_object ) {
$label = $cpt_object->labels->singular_name;
add_meta_box( 'rocket_post_exclude', sprintf( __( 'WP Rocket Options', 'rocket' ), $label ), 'rocket_display_cache_options_meta_boxes', $cpt, 'side', 'core' );
}
}
}
add_action( 'add_meta_boxes', 'rocket_cache_options_meta_boxes' );
/**
* Displays some checkbox to de/activate some cache options
*
* @since 2.5
*/
function rocket_display_cache_options_meta_boxes() {
if ( current_user_can( 'rocket_manage_options' ) ) {
global $post, $pagenow;
wp_nonce_field( 'rocket_box_option', '_rocketnonce', false, true );
?>
<div class="misc-pub-section">
<?php
$reject_current_uri = false;
if ( 'post-new.php' !== $pagenow ) {
$rejected_uris = array_flip( get_rocket_option( 'cache_reject_uri', [] ) );
$path = rocket_clean_exclude_file( get_permalink( $post->ID ) );
if ( isset( $rejected_uris[ $path ] ) ) {
$reject_current_uri = true;
}
}
?>
<input name="rocket_post_nocache" id="rocket_post_nocache" type="checkbox" title="<?php esc_html_e( 'Never cache this page', 'rocket' ); ?>" <?php checked( $reject_current_uri, true ); ?>><label for="rocket_post_nocache"><?php esc_html_e( 'Never cache this page', 'rocket' ); ?></label>
</div>
<div class="misc-pub-section">
<p><?php esc_html_e( 'Activate these options on this post:', 'rocket' ); ?></p>
<?php
$fields = [
'lazyload' => __( 'LazyLoad for images', 'rocket' ),
'lazyload_iframes' => __( 'LazyLoad for iframes/videos', 'rocket' ),
'minify_css' => __( 'Minify CSS', 'rocket' ),
'remove_unused_css' => __( 'Remove Unused CSS', 'rocket' ),
'minify_js' => __( 'Minify/combine JS', 'rocket' ),
'cdn' => __( 'CDN', 'rocket' ),
'async_css' => __( 'Load CSS asynchronously', 'rocket' ),
'defer_all_js' => __( 'Defer JS', 'rocket' ),
'delay_js' => __( 'Delay JavaScript execution', 'rocket' ),
];
$old_fields = $fields;
/**
* Metaboxes fields.
*
* @param string[] $fields Metaboxes fields.
*/
$fields = apply_filters( 'rocket_meta_boxes_fields', $fields );
if ( ! is_array( $fields ) ) {
$fields = $old_fields;
}
foreach ( $fields as $field => $label ) {
$disabled = disabled( ! get_rocket_option( $field ), true, false );
// translators: %s is the name of the option.
$title = $disabled ? ' title="' . esc_attr( sprintf( __( 'Activate first the %s option.', 'rocket' ), $label ) ) . '"' : '';
$class = $disabled ? ' class="rkt-disabled"' : '';
$checked = ! $disabled ? checked( ! get_post_meta( $post->ID, '_rocket_exclude_' . $field, true ), true, false ) : '';
?>
<input name="rocket_post_exclude_hidden[<?php echo esc_attr( $field ); ?>]" type="hidden" value="on">
<input name="rocket_post_exclude[<?php echo esc_attr( $field ); ?>]" id="rocket_post_exclude_<?php echo esc_attr( $field ); ?>" type="checkbox"<?php echo $title; ?><?php echo $checked; ?><?php echo $disabled; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Dynamic content is properly escaped in the view. ?>>
<label for="rocket_post_exclude_<?php echo esc_attr( $field ); ?>"<?php echo $title; ?><?php echo $class; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Dynamic content is properly escaped in the view. ?>><?php echo esc_html( $label ); ?></label><br>
<?php
}
?>
<p class="rkt-note">
<?php
// translators: %1$s = opening strong tag, %2$s = closing strong tag.
printf( esc_html__( '%1$sNote:%2$s None of these options will be applied if this post has been excluded from cache in the global cache settings.', 'rocket' ), '<strong>', '</strong>' );
?>
</p>
</div>
<?php
/**
* Fires after WP Rocket’s metabox.
*
* @since 3.6
*/
do_action( 'rocket_after_options_metabox' );
}
}
/**
* Manage the cache options from the metabox.
*
* @since 2.5
*/
function rocket_save_metabox_options() {
if ( current_user_can( 'rocket_manage_options' ) &&
isset( $_POST['post_ID'], $_POST['rocket_post_exclude_hidden'], $_POST['_rocketnonce'] ) ) {
check_admin_referer( 'rocket_box_option', '_rocketnonce' );
// No cache field.
if ( isset( $_POST['post_status'] ) && 'publish' === $_POST['post_status'] ) {
$new_cache_reject_uri = $cache_reject_uri = get_rocket_option( 'cache_reject_uri', [] ); // phpcs:ignore Squiz.PHP.DisallowMultipleAssignments.Found
$rejected_uris = array_flip( $cache_reject_uri );
$path = rocket_clean_exclude_file( get_permalink( (int) $_POST['post_ID'] ) );
if ( isset( $_POST['rocket_post_nocache'] ) ) {
if ( ! isset( $rejected_uris[ $path ] ) ) {
array_push( $new_cache_reject_uri, $path );
}
} else {
if ( isset( $rejected_uris[ $path ] ) ) {
unset( $new_cache_reject_uri[ $rejected_uris[ $path ] ] );
}
}
if ( $new_cache_reject_uri !== $cache_reject_uri ) {
// Update the "Never cache the following pages" option.
update_rocket_option( 'cache_reject_uri', $new_cache_reject_uri );
// Update config file.
rocket_generate_config_file();
}
}
// Options fields.
// Options fields.
$fields = [
'lazyload' => '',
'lazyload_iframes' => '',
'minify_css' => '',
'minify_js' => '',
'cdn' => '',
'async_css' => '',
'defer_all_js' => '',
'delay_js' => '',
'remove_unused_css' => '',
];
$old_fields = $fields;
/**
* Metaboxes fields.
*
* @param string[] $fields Metaboxes fields.
*/
$fields = apply_filters( 'rocket_meta_boxes_fields', $fields );
if ( ! is_array( $old_fields ) ) {
$fields = $old_fields;
}
$fields = array_keys( $fields );
foreach ( $fields as $field ) {
if ( isset( $_POST['rocket_post_exclude_hidden'][ $field ] ) ) {
if ( isset( $_POST['rocket_post_exclude'][ $field ] ) ) {
delete_post_meta( (int) $_POST['post_ID'], '_rocket_exclude_' . $field );
} else {
if ( get_rocket_option( $field ) ) {
update_post_meta( (int) $_POST['post_ID'], '_rocket_exclude_' . $field, true );
}
}
}
}
}
}
add_action( 'save_post', 'rocket_save_metabox_options' );