질문/조언질답게시판
Extra Form
PHP PHP 5.5
CMS XpressEngine

아래와 같은 유튜브 주소들을 게시판 확장변수(url)에 입력받고 게시판 글보기 화면에서 iframe을 이용해서 영상을 보여주려고 합니다.

 

1. 유튜브 영상 주소 예시 : https://www.youtube.com/watch?v=gVqYuE5IKYg

 

2. 확장변수 url에 주소값을 입력 받습니다.

 

3. 글보기 화면에서 아래와 같이 소스를 작성해보면 {$oDocument->getExtraEidValue('url')} 값은 출력이 되는데 유튜브 영상은 보이질 않는데 혹시 아시는 분 계시면 도움 부탁드립니다.

 

2020-02-25 14,29,06.JPEG

 

<iframe width="100%" height="220" src="{$oDocument->getExtraEidValue('url')}" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

 

 

  • profile

    유튜브에서 제시하는 소스를 자세히 보시면 아시겠지만, iframe에 들어가는 URL은 동영상을 직접 보는 URL과 모양이 약간 다릅니다. (직접 보는 URL에는 동영상을 재생하는 영역 외에도 헤더, 댓글, 추천동영상 등이 포함되어 있으니 iframe에 넣기에는 적합하지 않겠지요?)

     

    우선 /watch?v= 부분을 /embed/ 로 변경해야 하고, 뒤에 쓸데없는 파라미터가 더 붙었다면 제거해야 할 수도 있습니다. 사용자가 youtu.be 단축URL을 붙여넣는 경우에도 정상적인 주소로 변환해 주어야겠고요. 엉뚱한 주소를 입력하면 보안상 문제가 될 수도 있으니 다양한 시나리오를 감안하여 필터링하셔야겠습니다.

  • profile ?
    간단한 팁으로 해결 될 문제가 아닌것 같군요.
    답변 감사드립니다.
  • ? profile
    혹시.. 질문글에 대해 해결 하셨나요? 글 읽다보니 저도 궁금해지네요.