1. Главная
  2. Форумы
  3. Техподдержка Drupal
  4. Решение проблем

Замена переменной в текстовом поле

Главные вкладки

На сайте происходит импортирование материалов, в котором есть одно текстовое поле, которое содержит ссылку на видео, к примеру: https://rutube.ru/ (追記) shorts (追記ここまで)/c08ee2ea813d629459e1ca1a7d33aac2?r=wd,
Необходимо сделать так что бы shorts, менялся на play/embed, данную задачу запросто модно решить через Feeds, но необходимо что бы это на стороне модуля, либо на views Rules или какого то другого модульного решения.
Объясню почему есть такая заморочка, поскольку в данном блоке встречаются и video, которые имею уже другой размер экрана, и под них делается другая (追記) views (追記ここまで)

Комментарии

Аватар пользователя alex-litvinov alex-litvinov 16 мая 2025 в 16:11

Добрый день, сам разобрался как можно решить данную задачу через JS, если кому нужен код, вот он:

<script>
const rutubeElements = document.querySelectorAll('.views-field-field-rutube iframe');
rutubeElements.forEach(iframe => {
let src = iframe.getAttribute('src');
if (src) {
if (src.includes('/video/')) {
src = src.replace('/video/', '/play/embed/');
}
if (src.includes('/shorts/')) {
src = src.replace('/shorts/', '/play/embed/');
}
iframe.setAttribute('src', src);
}
});
</script>
Логотип drupal.ru

Содержимое сайта публикуется на условиях CreativeCommons Attribution-ShareAlike 3.0 или более поздней версии. Программные коды в тексте статей — на условиях GNU GPL v2 или более поздней версии.

Документация по совместной работе с репозиторием drupal.ru – https://docs.drupal.ru/code

Drupal – торговая марка Дриса Бёйтарта

12+

AltStyle によって変換されたページ (->オリジナル) /