rest api for random images
This commit is contained in:
parent
79ea6a20e3
commit
5197e50c2e
|
@ -1565,29 +1565,15 @@ function html_tag_parser($content) {
|
||||||
if (preg_match_all('/\!\{.*?\)\[.*?\]/i', $content,$matches)){
|
if (preg_match_all('/\!\{.*?\)\[.*?\]/i', $content,$matches)){
|
||||||
$i=0;
|
$i=0;
|
||||||
if ($i<sizeof($matches)) {
|
if ($i<sizeof($matches)) {
|
||||||
$content=str_replace($matches[$i],preg_replace(
|
$content=str_replace(
|
||||||
'/!\{([^\{\}]+)*\}\('.$url_regex.'\)\['.$url_regex.'\]/i',
|
$matches[$i],
|
||||||
'<a data-fancybox="gallery"
|
preg_replace('/!\{([^\{\}]+)*\}\('.$url_regex.'\)\['.$url_regex.'\]/i','<a href="$2"><img src="$7" alt="$1" title="$1"></a>',$matches[$i]),
|
||||||
data-caption="$1"
|
$content
|
||||||
class="fancybox"
|
);
|
||||||
href="$2"
|
|
||||||
alt="$1"
|
|
||||||
title="$1"><img src="$7" target="_blank" rel="nofollow" class="fancybox"></a>',
|
|
||||||
$matches[$i]),
|
|
||||||
$content);
|
|
||||||
$i++;
|
$i++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$content=preg_replace(
|
$content=preg_replace('/!\{([^\{\}]+)*\}\('.$url_regex.'\)/i','<a href="$2"><img src="$2" alt="$1" title="$1"></a>',$content);
|
||||||
'/!\{([^\{\}]+)*\}\('.$url_regex.'\)/i',
|
|
||||||
'<a data-fancybox="gallery"
|
|
||||||
data-caption="$1"
|
|
||||||
class="fancybox"
|
|
||||||
href="$2"
|
|
||||||
alt="$1"
|
|
||||||
title="$1"><img src="$2" target="_blank" rel="nofollow" class="fancybox"></a>',
|
|
||||||
$content
|
|
||||||
);
|
|
||||||
|
|
||||||
//Github cards
|
//Github cards
|
||||||
$content=preg_replace(
|
$content=preg_replace(
|
||||||
|
@ -1646,7 +1632,7 @@ function change_avatar($avatar){
|
||||||
// default feature image
|
// default feature image
|
||||||
function DEFAULT_FEATURE_IMAGE() {
|
function DEFAULT_FEATURE_IMAGE() {
|
||||||
if ( empty( akina_option('default_feature_image' )) ) {
|
if ( empty( akina_option('default_feature_image' )) ) {
|
||||||
return get_template_directory_uri().'/feature/index.php?'.rand(1,1000);
|
return rest_url('sakura/v1/image/feature').'?'.rand(1,1000);
|
||||||
//return 'https://api.mashiro.top/feature/?'.rand(1,1000);
|
//return 'https://api.mashiro.top/feature/?'.rand(1,1000);
|
||||||
} else {
|
} else {
|
||||||
return akina_option('default_feature_image').'?'.rand(1,1000);
|
return akina_option('default_feature_image').'?'.rand(1,1000);
|
||||||
|
|
36
inc/api.php
36
inc/api.php
|
@ -12,6 +12,14 @@ add_action('rest_api_init', function () {
|
||||||
'methods' => 'GET',
|
'methods' => 'GET',
|
||||||
'callback' => 'cache_search_json',
|
'callback' => 'cache_search_json',
|
||||||
));
|
));
|
||||||
|
register_rest_route('sakura/v1', '/image/cover', array(
|
||||||
|
'methods' => 'GET',
|
||||||
|
'callback' => 'cover_gallery',
|
||||||
|
));
|
||||||
|
register_rest_route('sakura/v1', '/image/feature', array(
|
||||||
|
'methods' => 'GET',
|
||||||
|
'callback' => 'feature_gallery',
|
||||||
|
));
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -262,3 +270,31 @@ EOS;
|
||||||
|
|
||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 随机封面图 rest api
|
||||||
|
* @rest api接口路径:https://sakura.2heng.xin/wp-json/sakura/v1/image/cover
|
||||||
|
*/
|
||||||
|
function cover_gallery() {
|
||||||
|
$img_array = glob(get_wp_root_path(). "/themes/Sakura/cover/gallery/*.{gif,jpg,png}",GLOB_BRACE);
|
||||||
|
$img = array_rand($img_array);
|
||||||
|
$imgurl = $img_array[$img];
|
||||||
|
$mimetype = end(getimagesize($imgurl));
|
||||||
|
$imgdata = file_get_contents($imgurl);
|
||||||
|
header("Content-type: ".$mimetype);
|
||||||
|
echo $imgdata;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 随机文章特色图 rest api
|
||||||
|
* @rest api接口路径:https://sakura.2heng.xin/wp-json/sakura/v1/image/feature
|
||||||
|
*/
|
||||||
|
function feature_gallery() {
|
||||||
|
$img_array = glob(get_wp_root_path(). "/themes/Sakura/feature/gallery/*.{gif,jpg,png}",GLOB_BRACE);
|
||||||
|
$img = array_rand($img_array);
|
||||||
|
$imgurl = $img_array[$img];
|
||||||
|
$mimetype = end(getimagesize($imgurl));
|
||||||
|
$imgdata = file_get_contents($imgurl);
|
||||||
|
header("Content-type: ".$mimetype);
|
||||||
|
echo $imgdata;
|
||||||
|
}
|
|
@ -82,7 +82,7 @@ if ( akina_option('toggle-menu') == 'no') { ?>
|
||||||
if (akina_option('cover_img')) {
|
if (akina_option('cover_img')) {
|
||||||
$imgurl = akina_option('cover_img');
|
$imgurl = akina_option('cover_img');
|
||||||
} else {
|
} else {
|
||||||
$imgurl = get_site_url()."/wp-content/themes/Sakura/cover/index.php";
|
$imgurl = rest_url('sakura/v1/image/cover');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -75,7 +75,7 @@ mashiro_option.float_player_on = true;
|
||||||
if (akina_option('cover_img')) {
|
if (akina_option('cover_img')) {
|
||||||
$imgurl = akina_option('cover_img');
|
$imgurl = akina_option('cover_img');
|
||||||
} else {
|
} else {
|
||||||
$imgurl = get_site_url()."/wp-content/themes/Sakura/cover/index.php";
|
$imgurl = rest_url('sakura/v1/image/cover');
|
||||||
} ?>
|
} ?>
|
||||||
mashiro_option.cover_api = "<?php echo $imgurl; ?>";
|
mashiro_option.cover_api = "<?php echo $imgurl; ?>";
|
||||||
|
|
||||||
|
|
|
@ -44,7 +44,7 @@ function get_avatar_profile_url(){
|
||||||
*/
|
*/
|
||||||
function get_random_bg_url(){
|
function get_random_bg_url(){
|
||||||
if ( empty( akina_option('default_feature_image' )) ) {
|
if ( empty( akina_option('default_feature_image' )) ) {
|
||||||
return get_template_directory_uri().'/feature/index.php?'.rand(1,1000);
|
return rest_url('sakura/v1/image/feature').'?'.rand(1,1000);
|
||||||
} else {
|
} else {
|
||||||
return akina_option('default_feature_image').'?'.rand(1,1000);
|
return akina_option('default_feature_image').'?'.rand(1,1000);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue