$src = $tags->get_attribute( 'src' );
return is_string( $src ) && preg_match( '~^(?:https?:)?//(?:www\.)?tiktok\.com/embed\.js(?:[?#][^\s]*)?$~iD', $src )
? '' : $match[0];
},
$updated
);
return is_string( $cleaned ) ? $cleaned : $updated;
}
/**
* Old saved blocks can retain aspect-ratio classes or an earlier provider
* name. Normalize rendered markup only; keep saved content and captions.
*/
public static function block_html( $html, $block ) {
$url = isset( $block['attrs']['url'] ) ? $block['attrs']['url'] : '';
if ( false === self::video_id( $url ) || false === strpos( $html, 'class="wi-tiktok-player"' ) ) {
return $html;
}
$tags = new WP_HTML_Tag_Processor( $html );
if ( $tags->next_tag( 'FIGURE' ) ) {
$classes = preg_split( '/\s+/', (string) $tags->get_attribute( 'class' ) );
foreach ( $classes as $class ) {
if ( 'wp-has-aspect-ratio' === $class || 0 === strpos( $class, 'wp-embed-aspect-' ) ) {
$tags->remove_class( $class );
}
}
$tags->add_class( 'wi-tiktok-block' );
}
/*
* Fortuna's frontend Plyr initializer treats every iframe under
* .wp-block-embed__wrapper in a non-YouTube block as a YouTube video.
* Keep the native figure/block, but use our own frontend-only wrapper
* so neither that replacement nor its broad Plyr initializer matches.
* Gutenberg's editor preview is not changed by this render filter.
*/
if ( $tags->next_tag( array( 'tag_name' => 'DIV', 'class_name' => 'wp-block-embed__wrapper' ) ) ) {
$tags->remove_class( 'wp-block-embed__wrapper' );
$tags->add_class( 'wi-tiktok-embed__wrapper' );
}
return $tags->get_updated_html();
}
/** Frontend: handlers run before oEmbed, including cached failed lookups. */
public static function register_handler() {
wp_embed_register_handler(
'wi-tiktok-block-player',
'~^https?://(?:www\.|m\.)?tiktok\.com/@[a-zA-Z0-9._-]+/video/[0-9]{15,20}/?(?:[?#].*)?$~iD',
array( __CLASS__, 'handle_embed' ),
5
);
}
public static function handle_embed( $matches, $attr, $url, $rawattr ) {
$id = self::video_id( $url );
return false === $id ? false : self::player( $id );
}
/** Also supports callers using wp_oembed_get() directly. */
public static function pre_oembed( $result, $url, $args ) {
if ( null !== $result ) {
return $result;
}
$id = self::video_id( $url );
return false === $id ? $result : self::player( $id );
}
/**
* Editor: this hook runs AFTER REST authentication and route permission
* checks, before the original proxy callback makes its outbound request.
* It deliberately does not use rest_pre_dispatch or alter permissions.
*/
public static function rest_embed( $result, $request, $route, $handler ) {
if ( null !== $result
|| '/oembed/1.0/proxy' !== untrailingslashit( $request->get_route() )
|| ! in_array( $request->get_method(), array( 'GET', 'HEAD' ), true ) ) {
return $result;
}
$id = self::video_id( $request->get_param( 'url' ) );
if ( false === $id ) {
return $result;
}
return rest_ensure_response(
array(
'version' => '1.0',
'type' => 'video',
'provider_name' => 'TikTok',
'provider_url' => 'https://www.tiktok.com',
'title' => 'TikTok video',
'width' => 360,
'height' => 640,
'html' => self::player( $id ),
)
);
}
/** Frontend and editor use different iframe layers; size each separately. */
public static function styles() {
wp_register_style( 'wi-tiktok-block-player', false, array(), self::VERSION );
wp_enqueue_style( 'wi-tiktok-block-player' );
wp_add_inline_style(
'wi-tiktok-block-player',
'.wp-block-embed.wi-tiktok-block>div.wi-tiktok-embed__wrapper,'
. '.wp-block-embed.wi-tiktok-block>div.wp-block-embed__wrapper,'
. '.wp-block-embed.is-provider-tiktok>div.wp-block-embed__wrapper{position:relative;max-width:360px;width:100%;height:auto!important;min-height:0!important;padding:0!important;aspect-ratio:auto!important;margin-left:auto;margin-right:auto;}'
. '.wp-block-embed.wi-tiktok-block>div.wi-tiktok-embed__wrapper::before,'
. '.wp-block-embed.wi-tiktok-block>div.wp-block-embed__wrapper::before,'
. '.wp-block-embed.is-provider-tiktok>div.wp-block-embed__wrapper::before{content:none!important;display:none!important;padding:0!important;}'
. '.wi-tiktok-player{position:relative!important;width:100%!important;max-width:360px;min-height:0!important;aspect-ratio:9/16;margin:0 auto!important;padding:0!important;}'
. '.wi-tiktok-player>iframe{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;}'
. '.wp-block-embed.is-provider-tiktok>div.wp-block-embed__wrapper>iframe.components-sandbox{position:static!important;inset:auto!important;display:block!important;width:100%!important;height:auto!important;min-height:0!important;max-width:360px!important;max-height:none!important;aspect-ratio:9/16!important;margin:0 auto!important;border:0!important;}'
);
}
}
WI_TikTok_Block_Player::boot();
სერხიო რამოსი და ყველა დროის ყველაზე გამტანი 10 მცველი - რადიო ფორტუნა / Fortuna.ge
LIVE
უსმინე პირდაპირ ეთერს
სერხიო რამოსი და ყველა დროის ყველაზე გამტანი 10 მცველი
297
„ლეგანესის“ წინააღმდეგ სერხიო რამოსმა „რეალში“ 110-ე გოლი გაიტანა და იმ „დახურულ კლუბში“ შევიდა, რომლებიც არა მარტო კარგად ასრულებდნენ ძირითად მოვალეობას, არამედ გატანის უნარიც ქონიათ.
ფრანც ბეკენბაუერი – 109 გოლი
109 გოლი 19 წელიწადში – მშვენიერი შედეგია მცველისთვის.
სერხიო რამოსი – 110 გოლი
ესპანელს კარგი შანსი აქვს კიდევ უფრო წინ წაიწიოს ამ რეიტინგში.
რობერტო კარლოსი – 113 გოლი
გოლი ფიზიკის კანონების დარღვევით – აი ბრაზილიელის უნარი.
პაულ ბრაიტნერი – 113 გოლი
კიდევ ერთი გერმანელი ლეგენდა 70-იანებიდან.
სტივ ბრიუსი – 113 გოლი „მანჩესტერის“ ყოფილი ფეხბურთელი პრემიერლიგის მთელ სირთულეებს შესანიშნავად უმკლავდებოდა.
გრემ ალეკსანდერი – 130 გოლი
სტანდარტების შოტლანდიელი ოსტატი. საინტერესო, რომ ამდენი გოლიდან არცერთი არ ყოფილა ნაკრებში.
ლორან ბლანი – 153 გოლი
ფრანგი თავიდან ნახევარმცველი იყო და მერე დაიხია დაცვაში. ნაკრებში კი ოქროს გოლი აქვს გატანილი პარაგვაისთან 1998 წლის მუნდიალზე.
ფერნანდო იერო – 163 გოლი
კიდევ ერთი მადრიდისტა. ის მეტოქის რისხვის სინონიმი იყო.
დანიელ პასარელა – 175 გოლი
შესაძლოა სამხრეთ ამერიკის ყველა დროის საუკეთესო მცველია.
რონალდ კუმანი – 253 გოლი
ჰოლანდიელმა შესაძლოა უკვდავი რეკორდი დაამყარა. ასეთი შედეგიანობა ფორვარდებს არ აქვთ. კუმანი არა მარტო სტანდარტებიდან იტანდა, ის უნივერსალი იყო.