이전글
https://www.cosmosfarm.com/threads/document/31226
아래에 이미지 처럼 결과가 뜹니다.
kboard 스레드에서 봤던걸로 했었는데 서로 충돌나는 부분이 있는것같습니다.
본문에 링크가 삽입되면 링크로 바꿔주는 코드와 유튜브 코드를 삽입하면 위에 결과 화면처럼 뜹니다.
코드는 아래와 같습니다.
/* 본문 복사붙여넣기 링크 있을 시 자동링크변환 */
add_filter('kboard_content', 'my_kboard_content', 10, 3);
function my_kboard_content($content, $content_uid, $board_id){
return preg_replace_callback('#(?i)(http|https)?(://)?(([-\w^@]+\.)+(.*)(?:/[^,\s]*|))#', 'kboard_content_autolink_prependHTTP', $content);
}
function kboard_content_autolink_prependHTTP($m){
$m[1] = strip_tags($m[1]);
$m[2] = strip_tags($m[2]);
$m[3] = strip_tags($m[3]);
$mStr = $m[1].$m[2].$m[3];
if(preg_match('#([a-z0-9&\-_.]+?)@([\w\-]+\.([\w\-\.]+\.)*[\w]+)#', $mStr)){
return "<a href=\"mailto:".$m[2].$m[3]."\" target=\"_blank\">".$m[1].$m[2].$m[3]."</a>";
}
else{
$http = (!preg_match("#(https://)#", $mStr)) ? 'http://' : 'https://';
return "<a href=\"".$http.$m[3]."\" target=\"_blank\">".$m[1].$m[2].$m[3]."</a>";
}
}
/* 댓글 복사붙여넣기 링크 있을 시 자동링크변환 */
add_filter('kboard_comments_content', 'my_kboard_comments_content', 10, 3);
function my_kboard_comments_content($comment, $comment_uid, $content_id){
return preg_replace_callback('#(?i)(http|https)?(://)?(([-\w^@]+\.)+(.*)(?:/[^,\s]*|))#', 'kboard_content_autolink_prependHTTP', $comment);
}
function kboard_comment_autolink_prependHTTP($m){
$m[1] = strip_tags($m[1]);
$m[2] = strip_tags($m[2]);
$m[3] = strip_tags($m[3]);
$mStr = $m[1].$m[2].$m[3];
if(preg_match('#([a-z0-9&\-_.]+?)@([\w\-]+\.([\w\-\.]+\.)*[\w]+)#', $mStr)){
return "<a href=\"mailto:".$m[2].$m[3]."\" target=\"_blank\">".$m[1].$m[2].$m[3]."</a>";
}
else{
$http = (!preg_match("#(https://)#", $mStr)) ? 'http://' : 'https://';
return "<a href=\"".$http.$m[3]."\" target=\"_blank\">".$m[1].$m[2].$m[3]."</a>";
}
}