I share my own code that makes URL clickable and youtube URL embed in post in ossn script
Open this file:
/components/OssnWall/templates/activity-item.php
Scroll to:
<div class="description">
<div class="post-text"><?php echo stripslashes($params['text']); ?>
Replace it with this:
<div class="description">
<div class="post-text">
<?php // $out = $params['text'];
$out = stripslashes($params['text']);
$clickable = pregreplace('*(f|ht)tps?://[A-Za-z0-9./?=+&%]+*', '<a target="_blank" href="$0">$0</a>', $out);
echo $clickable;
if (strpos($clickable,'youtube.com')) {
preg_match(
'/[\?\&]v=([^\?\&]+)/',
$clickable,
$matches
);
$id = $matches[1];
$width = '400';
$height = '270';
echo '<div><br><iframe frameborder="0" class="youtube" width="' .$width. '" height="'.$height.'" src="//www.youtube.com/embed/'.$id.'" frameborder="0" allowfullscreen></iframe></div>';
}
?>
That's all.
I answered to the topic also here
https://ekav.info/question-answer/index.php?qa=5&qa_1=how-to-make-url-clickable-and-youtube-url-embed-with-php-code
OK, corrected, will not fall with this:
$clickable = pregreplace('*(f|ht)tps?://[A-Za-z0-9\./?=\+&%-]+*', '<a target="_blank" href="$0">$0</a>', $out);
Well, I'm no regular expression wizzard, but with
preg_replace('*(f|ht)tps?://[A-Za-z0-9\./?=\+&%_]+*', '<a target="_blank" href="$0">$0</a>', $out);
it's obvious that urls like 'http://community.opensource-socialnetwork.org' will fall through.
Anyway, thanks for providing the idea.
the script ofnthis site preventing from posting php codes,html divs etc here
so see here https://ekav.info/question-answer/index.php?qa=5&qa_1=how-to-make-url-clickable-and-youtube-url-embed-with-php-code
Scroll to:
<div class="description">
<div class="post-text"><?php echo stripslashes($params['text']); ?>
Replace it with this:
<div class="description">
<div class="post-text">
<?php // $out = $params['text'];
$out = stripslashes($params['text']);
$clickable = preg_replace('*(f|ht)tps?://[A-Za-z0-9\./?=\+&%_]+*', '<a target="_blank" href="$0">$0</a>', $out);
echo $clickable;
if (strpos($clickable,'youtube.com')) {
preg_match('/[\\?\\&]v=([^\\?\\&]+)/',
$clickable,
$matches
); $id = $matches[1]; $width = '400'; $height = '270'; echo '<div><br><iframe frameborder="0" class="youtube" width="' .$width. '" height="'.$height.'" src="//www.youtube.com/embed/'.$id.'" frameborder="0" allowfullscreen></iframe></div>';
}
?>
Due to the many requests in the past for additonal features and components we have decided to develope a premium version. Features like Hashtags, Videos, Polls, Events, Stories, Link Preview, etc included in it.
$199 (Life Time)