?>

¿Cómo convertir enlaces inactivos en el texto a activo (pulsable)?

¿Cómo convertir enlaces inactivos en el texto a activo (pulsable)?

Una tarea muy frecuente para proporcionar a sus usuarios una funcionalidad de sitio conveniente y de alta calidad es la conversión de enlaces en texto sin formato o html. Después de todo, cuando le da a sus usuarios algo para escribir de forma independiente en el sitio (por ejemplo, comentarios), por supuesto, trata de protegerlos del código html. Pero si no lo usan, entonces no pueden seleccionar enlaces de acuerdo con las reglas html. Y hay que hacerlo por ellos.

Para proyectos en el framework yii2, escribí una pequeña extensión: https://cms.skeeks.com/marketplace/components/tools/other/396-preobrazovanie-neaktivnyh-ssylok-v-tekste

Видео:

Скриншот:

Небольшое описание:

Для преобразования ссылок в тексте, используются регулярные выражения. Если погуглить на эту тему то появится множество ссылок на различные ресурсы, где обсуждают подобные регулярные выражения.

Вот некоторые, которыми воспользовался я для написания своего расширения:

Воспользоваться им достаточно просто. Представьте что у вас есть какой то текст на странице, обрамленный каким нибудь <div> с классмо .description

<div class="description">
Какой то текст со ссылками https://test.ru,
https://google.ru/search
Все ссылки будут автоматически https://cms.skeeks.com/blog/releases/2-zapusk-sayta-dlya-skeeks-cms определены в этом тексте и станут кликабельными
</div>

На этой же самой странице можно подключить вот такую конструкцию:

<?
\skeeks\yii2\linkActivation\assets\TextHandlerAsset::register($this);
$this->registerJs(<<<JS
new sx.classes.LinkActivation(".description");
JS
);
?>

Эта конструкция, подключит необходимые js файлы на страницу, и при помощи javascript этот текст будет преобризован в html со ссылками оформленными в виде html тегов <a>

todos los comentarios (1)
Какой то текст со ссылками https://test.ru,
https://google.ru/search
Все ссылки будут автоматически https://cms.skeeks.com/blog/releases/2-zapusk-sayta-dlya-skeeks-cms определены в этом тексте и станут кликабельными