Zur Navigation

Der BB Video Button [2]

11 Jörg Kruse

Es wird noch ein zweiter Aufruf von preg_replace_callback() benötigt, der ein Pattern mit dem Query String zulässt.

/includes/main/post/functions.php

        if ($a_config['videotf']) {
            $text = preg_replace_callback(
                '/\[video\]http(s?):\/\/([a-zA-Z_0-9\-\.\/]+)\[\/video\]/isU',
                'embed_video',
                $text
            );
            $text = preg_replace_callback(
                '~\[video\]http(s?)://(www\.youtube\.com/watch\?v=[a-zA-Z_0-9-]+)\[/video\]~isU',
                'embed_video',
                $text
            );
        }


function embed_video($matches)
{
    $url = 'https://' . $matches[2];
    if (strpos($url, 'youtube') !== false) {
        $url = str_replace('/v/', '/embed/', $url);
        $url = str_replace('/watch?v=', '/embed/', $url);
    }
    return '<iframe src="' . $url . '" frameborder="0" allowfullscreen class="video"></iframe>';
}

27.04.2021 12:07

1 Forenmitglied fand diesen Beitrag gut

... 1 Jahr und 7 Monate später ...

12 Tobi

Gibt es eine Möglichkeit neben

[video]https://www.youtube.com/watch?v=[ID][/video]

auch die weiteren URL-Typen von YouTube einbinden zu lassen?

[video]https://youtu.be/[ID][/video]
sowie [video]https://m.youtube.com/watch?v=[ID][/video]
und [video]https://music.youtube.com/watch?v=[ID]&feature=share[/video]

Letzter Link wird bei music.youtubu.com beim Teilen so generiert. Bisher wird, sobald ja etwas an die [ID] angehängt wird, das Video nicht mehr eingebunden. Beispielsweise, wenn man auch zu einer bestimmten Minute die URL kopieren würde (Wie z.B. "?t=12"). Kann man hierbei dann nur die URL rausfiltern? Ansonsten wären halt die Möglichkeiten oben noch gut zu implementieren (auch ohne "&feature=share" also nur [video]https://music.youtube.com/watch?v=[ID][/video].

17.12.2022 12:44

13 Jörg Kruse

Die Domainnamen youtu.be, m.youtube.com und music.youtube.com werden in JKBB 4.2 auch berücksichtigt, die Erweiterungen des Query Strings nicht.

21.12.2022 21:05

1 Forenmitglied fand diesen Beitrag gut

Nur Mitglieder können in diesem Forum Antworten schreiben.

Login | Registrieren