X7ROOT File Manager
Current Path:
/home/gfecatvj/4abetter.us/wp-content/plugins/kubio/lib/AI
home
/
gfecatvj
/
4abetter.us
/
wp-content
/
plugins
/
kubio
/
lib
/
AI
/
📁
..
📁
Blog
📄
PostImage.php
(1.69 KB)
📁
SDApi
📁
Shop
📁
admin-tab
📄
api.php
(29.51 KB)
📁
filters
📄
index.php
(1.19 KB)
📄
utils.php
(15.33 KB)
Editing: PostImage.php
<?php namespace Kubio\AI; use IlluminateAgnostic\Arr\Support\Arr; use Kubio\Core\Importer; class PostImage { static $images_by_keword = array(); static $used_images = array(); public static function get_featured_image_from_keywords( $keywords ) { $image_url = self::get_image_from_api( $keywords ); if ( $image_url ) { $image = Importer::importRemoteFile( $image_url ); if ( $image ) { return $image['id']; } } return false; } private static function get_image_from_api( $keywords ) { $cached_images = Arr::get( static::$images_by_keword, $keywords ); if ( $cached_images && is_array( $cached_images ) && count( $cached_images ) > 0 ) { $next_image = array_shift( $cached_images ); while ( in_array( $next_image, static::$used_images ) && count( $cached_images ) > 0 ) { $next_image = array_shift( $cached_images ); } Arr::set( static::$images_by_keword, $keywords, $cached_images ); return $next_image; } $per_page = 5; $image = kubio_ai_call_api( 'v1/search-media', array( 'type' => 'image', 'search' => $keywords, 'per_page' => $per_page, 'orientation' => 'landscape', 'size' => 'small', 'width' => '1152', 'height' => '896', ) ); $images = Arr::get( $image, 'content.items', array() ); $next_image = null; if ( is_array( $images ) && count( $images ) > 0 ) { $next_image = array_shift( $images ); while ( in_array( $next_image, static::$used_images ) && count( $images ) > 0 ) { $next_image = array_shift( $images ); } static::$used_images[] = $next_image; Arr::set( static::$images_by_keword, $keywords, $images ); } return $next_image; } }
Upload File
Create Folder