제가 메타태그 og image 로 너무 많이 우려먹네요. 완결판입니다.
아래의 코드를 php 로 저장하고 extend 디렉토리로 올려줍니다. 즉 hook 입니다.
주의사항은 순정의 기본상태 그대로 즉 본인의 오픈그래프 이미지에 대한 설정이 없어야 합니다.
혹시 제가 이전에 배포된 관련 소스들을 사용하고 계신 분은 그것들을 모두 삭제합니다.
아래 2개의 링크입니다.
https://sir.kr/g5_tip/20428
https://sir.kr/g5_tip/23254
[code]
<?php
if (!defined('_GNUBOARD_')) exit;
add_event('common_header', function() {
global $config, $board, $write;
$ogImage = '이미지경로';
if (strlen($board['bo_5']) > 3) $ogImage = $board['bo_5'];
if (strlen(get_editor_image($write['wr_content'], 0)[1][0]) > 3) $ogImage = get_editor_image($write['wr_content'], 0)[1][0];
$attachFile = get_file($board['bo_table'], $write['wr_id']);
for ($i = 0; $i < count($attachFile); $i++) {
if ($attachFile[$i]['image_type'] > 0 && $attachFile[$i]['image_type'] < 4) {
$ogImage = $attachFile[$i]['path'].'/'.$attachFile[$i]['file'];
break;
}
}
if (strlen($ogImage) > 3) {
$config['cf_add_meta'] .= '
<meta property="og:image" content="'.$ogImage.'">
';
}
});
[/code]
이미지의 우선순위입니다.
1) 게시글의 첨부파일 증 첫번째 이미지
2) 게시글의 첨부파일 이미지가 없으면 게시글의 에디터로 업로드한 첫번째 이미지
3) 에디터 이미지도 없으면 게시판의 5번 여분필드 - https://sir.kr/g5_tip/23254
4) 이마저도 없으면 코드 중의 $ogImage = '이미지경로'; 에서 입력된 이미지

이제 이걸로는 더 이상 우려먹지 않을게요.ㅋ
댓글 20개
@미키손
참고로 $attachFile[$i]['image_type'] 는 총 19개가 있습니다.
그 중 0보다 크고 4보다 작은 것이 1, 2, 3 즉 gif, jpeg(jpg), png 중 하나를 의미하겠지요.
추가 및 삭제는 본인이 알아서 이프문에 넣으세요.
0=>'UNKNOWN',
1=>'GIF',
2=>'JPEG',
3=>'PNG',
4=>'SWF',
5=>'PSD',
6=>'BMP',
7=>'TIFF_II',
8=>'TIFF_MM',
9=>'JPC',
10=>'JP2',
11=>'JPX',
12=>'JB2',
13=>'SWC',
14=>'IFF',
15=>'WBMP',
16=>'XBM',
17=>'ICO',
18=>'COUNT'
게시글 목록
| 번호 | 제목 |
|---|---|
| 23606 | |
| 23598 | |
| 23585 | |
| 23579 | |
| 23578 | |
| 23564 | |
| 23550 | |
| 23549 | |
| 23548 | |
| 23529 | |
| 23510 | |
| 23507 | |
| 23481 | |
| 23471 | |
| 23453 | |
| 23452 | |
| 23450 | |
| 23436 | |
| 23428 | |
| 23404 | |
| 23396 | |
| 23389 | |
| 23380 | |
| 23369 | |
| 23350 | |
| 23337 | |
| 23317 | |
| 23307 | |
| 23298 | |
| 23290 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기