유튜브 축약형 링크 자동 아이프레임

1. 정확한 제품 또는 플러그인 이름

KBoard 6.3

 

2. 상세 내용

안녕하세요. 요즘은 유튜브 영상을 공유하기 위해 공유 버튼을 눌러 링크를 복사하면 전부 축약형 링크(youtu.be/.....)인데요.
케이보드에서는 기존 youtube.com/.... 일반 링크에 대해서는 자동으로 영상 아이프레임을 만들어주었지만 축약형은 구현되어 있지 않아서 직접 코드를 추가하여 사용하고 있었습니다.

아래 kboard_video_url_to_iframe($content) 함수 중간 부분에 유튜브 축약형 링크 처리 코드를 추가했습니다.
다음 업데이트 때라도 적용됐으면 하는 바람에서 글 올립니다.
파일 경로는 kboard/helper/Functions.helper.php(612번째 줄)입니다.

function kboard_video_url_to_iframe($content){
	// 유튜브
	$content = preg_replace('/<a(.*)href=\"[a-zA-Z\/\/:\.]*youtube.com\/watch\?v=([a-zA-Z0-9\-_]+)([a-zA-Z0-9\/\*\-\_\?\&\;\%\=\.]*)">(.*)<\/a>/i', 'https://youtube.com/watch?v=$2', $content);
	$content = preg_replace("/\s*[a-zA-Z\/\/:\.]*youtube.com\/watch\?v=([a-zA-Z0-9\-_]+)([a-zA-Z0-9\/\*\-\_\?\&\;\%\=\.]*)/i", '<iframe src="https://www.youtube.com/embed/$1" width="560" height="315" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>', $content);
	
	// 유튜브 축약형 링크
	$content = preg_replace('/<a(.*)href=\"[a-zA-Z\/\/:\.]*youtu.be\/([a-zA-Z0-9\-_]+)([a-zA-Z0-9\/\*\-\_\?\&\;\%\=\.]*)">(.*)<\/a>/i', 'https://youtu.be/$2', $content);
	$content = preg_replace("/\s*[a-zA-Z\/\/:\.]*youtu.be\/([a-zA-Z0-9\-_]+)([a-zA-Z0-9\/\*\-\_\?\&\;\%\=\.]*)/i", '<iframe src="https://www.youtube.com/embed/$1" width="560" height="315" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>', $content);
	
	// 비메오
	$content = preg_replace('/<a(.*)href=\"[a-zA-Z\/\/:\.]*vimeo.com\/(\d+)">(.*)<\/a>/i', 'https://vimeo.com/$2', $content);
	$content = preg_replace("/\s*[a-zA-Z\/\/:\.]*vimeo.com\/(\d+)/i", '<iframe src="https://player.vimeo.com/video/$1" width="560" height="315" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>', $content);
	
	return $content;
}

 

 

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
워드프레스 에러 기술지원 서비스 전문가에게 맡기세요