晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
|
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/wordpress-seo-premium/src/models/ |
Upload File : |
<?php
/**
* Model for the Indexable table.
*
* @package Yoast\YoastSEO\Models
*/
namespace Yoast\WP\SEO\Models;
use Yoast\WP\Lib\Model;
/**
* Indexable table definition.
*
* @property int $id
* @property int $object_id
* @property string $object_type
* @property string $object_sub_type
*
* @property int $author_id
* @property int $post_parent
*
* @property string $created_at
* @property string $updated_at
*
* @property string $permalink
* @property string $permalink_hash
* @property string $canonical
*
* @property boolean $is_robots_noindex
* @property boolean $is_robots_nofollow
* @property boolean $is_robots_noarchive
* @property boolean $is_robots_noimageindex
* @property boolean $is_robots_nosnippet
*
* @property string $title
* @property string $description
* @property string $breadcrumb_title
*
* @property boolean $is_cornerstone
*
* @property string $primary_focus_keyword
* @property int $primary_focus_keyword_score
*
* @property int $readability_score
*
* @property int $link_count
* @property int $incoming_link_count
* @property int $number_of_pages
*
* @property string $open_graph_title
* @property string $open_graph_description
* @property string $open_graph_image
* @property string $open_graph_image_id
* @property string $open_graph_image_source
* @property string $open_graph_image_meta
*
* @property string $twitter_title
* @property string $twitter_description
* @property string $twitter_image
* @property string $twitter_image_id
* @property string $twitter_image_source
* @property string $twitter_card
*
* @property int $prominent_words_version
*
* @property boolean $is_public
* @property boolean $is_protected
* @property string $post_status
* @property boolean $has_public_posts
*
* @property int $blog_id
*
* @property string $language
* @property string $region
*
* @property string $schema_page_type
* @property string $schema_article_type
*
* @property bool $has_ancestors
*/
class Indexable extends Model {
/**
* Holds the ancestors.
*
* @var Indexable[]
*/
public $ancestors;
/**
* Whether nor this model uses timestamps.
*
* @var bool
*/
protected $uses_timestamps = true;
/**
* Which columns contain boolean values.
*
* @var array
*/
protected $boolean_columns = [
'is_robots_noindex',
'is_robots_nofollow',
'is_robots_noarchive',
'is_robots_noimageindex',
'is_robots_nosnippet',
'is_cornerstone',
'is_public',
'is_protected',
'has_public_posts',
];
/**
* Which columns contain int values.
*
* @var array
*/
protected $int_columns = [
'id',
'object_id',
'author_id',
'post_parent',
'primary_focus_keyword_score',
'readability_score',
'link_count',
'incoming_link_count',
'number_of_pages',
'prominent_words_version',
'blog_id',
];
/**
* The loaded indexable extensions.
*
* @var Indexable_Extension[]
*/
protected $loaded_extensions = [];
/**
* Returns an Indexable_Extension by its name.
*
* @param string $class_name The class name of the extension to load.
*
* @return Indexable_Extension|bool The extension.
*/
public function get_extension( $class_name ) {
if ( ! $this->loaded_extensions[ $class_name ] ) {
$this->loaded_extensions[ $class_name ] = $this->has_one( $class_name, 'indexable_id', 'id' )->find_one();
}
return $this->loaded_extensions[ $class_name ];
}
/**
* Enhances the save method.
*
* @return boolean True on success.
*/
public function save() {
if ( $this->permalink ) {
$this->sanitize_permalink();
$this->permalink_hash = \strlen( $this->permalink ) . ':' . \md5( $this->permalink );
}
if ( \strlen( $this->primary_focus_keyword ) > 191 ) {
$this->primary_focus_keyword = \substr( $this->primary_focus_keyword, 0, 191 );
}
return parent::save();
}
/**
* Sanitizes the permalink.
*
* @return void
*/
protected function sanitize_permalink() {
$permalink_structure = \get_option( 'permalink_structure' );
$permalink_parts = \wp_parse_url( $this->permalink );
if ( ! isset( $permalink_parts['path'] ) ) {
$permalink_parts['path'] = '/';
}
if ( \substr( $permalink_structure, -1, 1 ) === '/' && \strpos( \substr( $permalink_parts['path'], -5 ), '.' ) === false ) {
$permalink_parts['path'] = \trailingslashit( $permalink_parts['path'] );
}
$permalink = '';
if ( isset( $permalink_parts['scheme'] ) ) {
$permalink .= $permalink_parts['scheme'] . '://';
}
if ( isset( $permalink_parts['host'] ) ) {
$permalink .= $permalink_parts['host'];
}
if ( isset( $permalink_parts['path'] ) ) {
$permalink .= $permalink_parts['path'];
}
if ( isset( $permalink_parts['query'] ) ) {
$permalink .= '?' . $permalink_parts['query'];
}
// We never set the fragment as the fragment is intended to be client-only.
$this->permalink = $permalink;
}
}