그누보드5 링크 썸네일을 게시판 첨부파일 사용하도록 하는 코드 (OG이미지메타테그) > 코딩 스토리

그누보드5 링크 썸네일을 게시판 첨부파일 사용하도록 하는 코드 (OG이미지메타테그)

본문

아래의 코드를 head.sub.php의 </head> 위에 삽입

 

<?php

function override_og_image() {

    $html = ob_get_contents();

    libxml_use_internal_errors(true);

    

    $dom = new DOMDocument();

    @$dom->loadHTML($html, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);

    $xpath = new DOMXPath($dom);

    

    // Find view_image class images

    $images = $xpath->query('//a[@class="view_image"]//img');

    

    // Extract current OG image

    preg_match('/<meta\s+property="og:image"\s+content="([^"]*)"[^>]*>/i', $html, $matches);

    $defaultImageUrl = isset($matches[1]) ? $matches[1] : 'https://내도메인/이미지';

    

    // Select random image or fallback

    if ($images->length > 0) {

        $randomIndex = rand(0, $images->length - 1);

        $newImageUrl = $images->item($randomIndex)->getAttribute('src');

        

        // Validate URL format

        if (!filter_var($newImageUrl, FILTER_VALIDATE_URL)) {

            $newImageUrl = $defaultImageUrl;

        }

    } else {

        $newImageUrl = $defaultImageUrl;

    }

    

    // Replace OG image meta tag

    $pattern = '/<meta\s+property="og:image"\s+content="[^"]*"[^>]*>/i';

    $replacement = '<meta property="og:image" content="' . htmlspecialchars($newImageUrl, ENT_QUOTES, 'UTF-8') . '">';

    $modified_html = preg_replace($pattern, $replacement, $html);

    

    ob_clean();

    echo $modified_html;

}


ob_start();

register_shutdown_function('override_og_image');

?>

좋아요73 이 글을 좋아요하셨습니다
url 복사 카카오톡 공유 라인 공유 페이스북 공유 트위터 공유

카테고리 분류 학습 시스템 (총 0개 학습됨)

예측 카테고리: 종교 (랜덤 - 학습 데이터 없음)

이 분류가 맞나요? 학습시켜주세요!

등록된 댓글이 없습니다.

  • RSS
  • _  글쓰기 글쓰기
전체 302건
게시물 검색

접속자집계

오늘
1,601
어제
3,897
최대
42,418
전체
939,829