최신코어에 스킨은 스케치북과 flat board 게시판 스킨을 사용하고 있고 에디터는 ck editor를 사욜합니다
https://www.youtube.com/watch?v=vuE5hfwq-_U
이런 형태의 주소는 oembed가 작동하는데
흔히 주소를 복사하면 나타나는
https://youtu.be/vuE5hfwq-_U
이런형태의 주소는 oembed가 작동하지 않습니다.
무엇이 문제일가요 ㅠ
최신코어에 스킨은 스케치북과 flat board 게시판 스킨을 사용하고 있고 에디터는 ck editor를 사욜합니다
https://www.youtube.com/watch?v=vuE5hfwq-_U
이런 형태의 주소는 oembed가 작동하는데
흔히 주소를 복사하면 나타나는
https://youtu.be/vuE5hfwq-_U
이런형태의 주소는 oembed가 작동하지 않습니다.
무엇이 문제일가요 ㅠ
댓글 11
oembed 애드온 내에서 패턴을 regex 형식으로 인식해서 변형해주는데, 그 패턴이 등록되어 있지 않기 때문으로 생각됩니다. 그걸 적절한 패턴으로 등록해준다면 변행해줄겁니다. 제가 정규식이 약해서 수정하는 방법까지 알려드릴수는 없지만요..
아 참고로 스케치북의 경우 원래 oembed가 잘 안됩니다. 전 세진님한테 의뢰해서 해결했네요.
jquery.oembed.js 를 보면 그 해당 패턴이 있긴 한데...그게 안먹는 것 같아요.
깃헙에서 검색한 다른 jquery.oembed.js를 봐도 그부분은 똑같아요.
$.fn.oembed.providers = [
//Video
new $.fn.oembed.OEmbedProvider("youtube", "video", ["youtube\\.com/watch.+v=[\\w-]+&?", "youtu\\.be/[\\w-]+", "youtube.com/embed"], '//www.youtube.com/embed/$1?wmode=transparent', {
templateRegex: /.*(?:v\=|be\/|embed\/)([\w\-]+)&?.*/, embedtag: {tag: 'iframe', width: '425', height: '349'}
}), //이 숫자를 바꾸면 크기와 비율을 조절가능 (기븐님 tip)
//new $.fn.oembed.OEmbedProvider("youtube", "video", ["youtube\\.com/watch.+v=[\\w-]+&?", "youtu\\.be/[\\w-]+"], 'http://www.youtube.com/oembed', {useYQL:'json'}),
아참 스케치북이 아닌 xedition도 안먹습니다.
"youtu\\.be/[\\w-]+"
얘가 어디가 잘못된 것일까요? 으흐흐. 반가운 질문글이라 겸사겸사 묻어가려고..
xe의 oEmbed 애드온의 jquery.oembed.js 유튜브 부분도 저것과 동일합니다. 아랫부분의 주석처리부분은 과거의 것을 기록으로 남겨둔 모양이구요.
저게 있긴 한데, 문제는 이 파일 상단에 보시면 youtu.be 요 주소가 "짧은주소를 긴 주소로 변경하는 api" (api.longurl.org) 를 사용할 목록("shortURLList")에 들어가 있습니다. 근데 저 api.longurl.org가 ssl을 지원 안 하기 때문에, ssl을 사용하는 사이트의 경우 저 긴 주소 변환 기능이 작동하지 않습니다.
해결방법은 그 목록에서 youtu.be를 제거해주는 겁니다. (api.longurl.org의 경우 이미 많은 사용자들이 문제제기한지 벌써 몇 년이 지났는데도 불구하고 ssl을 지원하지 않고 있으므로 포기해야 할 겁니다.) youtu 라고 검색해보시면 나올 겁니다.
저는 SSL 아직 안써서...(여기서 이거저거 읽으며 배우는 단계라서 좀 자신감 붙으면 적용하려고요) SSL사용으로 인한 짧은 주소지원안되는 그 문제는 아닐 것 같아요.제가 잘못 이해했네요. 유튜브가 https://이니까 저 js파일 상단의 단축주소를 지정한 부분을 지우라는 뜻이군요?
혹시나 싶어서 그js화일 상단의 목록에서 그 youtu.be,를 지우니 이제 먹습니다.
감사합니다. 기븐님.
원글러님께 정리해 드리자면 oEmbed애드온의 jquery.oembed.js 화일을 열어보시면
앞부분에 짧은 주소들이 잔뜩 지정되어있는걸 보실수 있을 거여요.
거기서 youtu.be를 삭제하시구요.
그리고 jquery.oembed.min.js화일도 똑같이 수정해서 덮으시면 저 짧은 주소도 작동하네요. 확인해보고 답변드립니다.