Можно ли настроить автоматический плеер Spotify через iframe по ссылке?

Мое сообщество ориентировано на художников, которые публикуют свою музыку для прослушивания другими.

Когда пользователь публикует ссылку на SoundCloud, iframe работает безупречно. Однако, похоже, что для треков и плейлистов Spotify нет автоматического iframe.

Как мне лучше всего это настроить, если это возможно? У меня есть все коды встраивания от Spotify, но я не уверен, как их настроить в Discourse.

Спасибо!

Однобоксы SoundCloud отлично работают с Discourse. Что касается Spotify, то при добавлении ссылки на трек или плейлист Spotify в пост на Discourse создается однобокс, но не плеер Spotify.

Вы можете разрешить пользователям добавлять код встраивания Spotify (iframe) в посты на Discourse, добавив https://open.spotify.com/embed/ в настройку сайта «Разрешенные iframe». Это создаст аудиоплеер, который позволит пользователям прослушивать 30-секундные фрагменты треков.

Я обязательно рассмотрю возможность предоставления функции iframe моим пользователям.

Существует ли способ автоматически преобразовывать обычные ссылки Spotify во встроенные iframe? Я какое-то время использовал Invision Power Board, и его программное обеспечение создавало встроенные элементы для широкого спектра медиа-сервисов, включая Spotify. Однако, насколько я понимаю, их программное обеспечение очень дорогое и не является открытым исходным кодом.

Технически это возможно, но я не уверен, что хочу полагаться на такой подход. В качестве примера: ссылку Spotify https://open.spotify.com/track/39zWYYZStDgWi32sOU9AX4?si=BLFB8HxuQNC-OaHtwD_E4A можно преобразовать в iframe, добавив /embed в путь ссылки, а затем используя полученный URL в качестве атрибута src для iframe:

<iframe src="https://open.spotify.com/embed/track/39zWYYZStDgWi32sOU9AX4?si=BLFB8HxuQNC-OaHtwD_E4A"></iframe>

Хорошая мысль, да, похоже, это сработает. Вы знаете, какие файлы нужно редактировать, чтобы получить такой результат? Если бы я знал файл(ы), я уверен, что мог бы сам написать код!

Если ваш сайт на Discourse размещён самостоятельно, думаю, лучший подход — создать плагин onebox для Spotify. Если вы откроете инструменты разработчика на странице Spotify, то увидите, что данные, необходимые для создания плеера Spotify через iframe, находятся в meta-тегах страницы. Вероятно, вам понадобятся горячие клавиши, чтобы открыть инструменты разработчика, так как Spotify, похоже, блокирует правый клик.

Примеры создания onebox можно найти здесь: GitHub - discourse/onebox: (DEPRECATED) A gem for turning URLs into website previews · GitHub.