晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
|
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/stando/public_html/wp-content/plugins/uwac/adminframework/classes/ |
Upload File : |
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access pages directly.
/**
*
* Customize Class
*
* @since 1.0.0
* @version 1.0.0
*
*/
class CSSFramework_Customize extends CSSFramework_Abstract {
/**
*
* sections
* @access public
* @var array
*
*/
public $options = array();
/**
*
* panel priority
* @access public
* @var bool
*
*/
public $priority = 1;
/**
*
* instance
* @access private
* @var class
*
*/
private static $instance = null;
// run customize construct
public function __construct( $options ) {
$this->options = apply_filters( 'cs_customize_options', $options );
if( ! empty( $this->options ) ) {
$this->addAction( 'customize_register', 'customize_register' );
}
}
// instance
public static function instance( $options = array() ){
if ( is_null( self::$instance ) && CS_ACTIVE_CUSTOMIZE ) {
self::$instance = new self( $options );
}
return self::$instance;
}
// customize register
public function customize_register( $wp_customize ) {
// load extra WP_Customize_Control
cs_locate_template( 'functions/customize.php' );
do_action( 'cs_customize_register' );
$panel_priority = 1;
foreach ( $this->options as $value ) {
$this->priority = $panel_priority;
if( isset( $value['sections'] ) ) {
$wp_customize->add_panel( $value['name'], array(
'title' => $value['title'],
'priority' => ( isset( $value['priority'] ) ) ? $value['priority'] : $panel_priority,
'description' => ( isset( $value['description'] ) ) ? $value['description'] : '',
));
$this->add_section( $wp_customize, $value, $value['name'] );
} else {
$this->add_section( $wp_customize, $value );
}
$panel_priority++;
}
}
// add customize section
public function add_section( $wp_customize, $value, $panel = false ) {
$section_priority = ( $panel ) ? 1 : $this->priority;
$sections = ( $panel ) ? $value['sections'] : array( 'sections' => $value );
foreach ( $sections as $section ) {
// add_section
$wp_customize->add_section( $section['name'], array(
'title' => $section['title'],
'priority' => ( isset( $section['priority'] ) ) ? $section['priority'] : $section_priority,
'description' => ( isset( $section['description'] ) ) ? $section['description'] : '',
'panel' => ( $panel ) ? $panel : '',
) );
$setting_priority = 1;
foreach ( $section['settings'] as $setting ) {
$setting_name = CS_CUSTOMIZE . '[' . $setting['name'] .']';
// add_setting
$wp_customize->add_setting( $setting_name,
wp_parse_args( $setting, array(
'type' => 'option',
'capability' => 'edit_theme_options',
'sanitize_callback' => 'cs_sanitize_clean',
)
)
);
// add_control
$control_args = wp_parse_args( $setting['control'], array(
'unique' => CS_CUSTOMIZE,
'section' => $section['name'],
'settings' => $setting_name,
'priority' => $setting_priority,
));
if( $control_args['type'] == 'cs_field' ) {
$call_class = 'WP_Customize_'. $control_args['type'] .'_Control';
$wp_customize->add_control( new $call_class( $wp_customize, $setting['name'], $control_args ) );
} else {
$wp_controls = array( 'color', 'upload', 'image', 'media' );
$call_class = 'WP_Customize_'. ucfirst( $control_args['type'] ) .'_Control';
if( in_array( $control_args['type'], $wp_controls ) && class_exists( $call_class ) ) {
$wp_customize->add_control( new $call_class( $wp_customize, $setting['name'], $control_args ) );
} else {
$wp_customize->add_control( $setting['name'], $control_args );
}
}
$setting_priority++;
}
$section_priority++;
}
}
}