안녕하세요
제가 아래와 같이 게시판( id= 5 )의 첨부이미지가 본문에 보여지게 사용중인데 엄청 편리하더라구요... >>> 너무 감사드려요~~~!!
/* 케이보드 첨부 이미지 본문에 보여주기 */
add_filter('kboard_content', 'my_kboard_content', 10, 3);
function my_kboard_content($content, $content_uid, $board_id){
if($board_id == '5'){ // 실제 게시판 id로 적용해주세요.
$document = new KBContent();
$document->initWithUID($content_uid);
ob_start();
?>
<?php foreach($document->getAttachmentList() as $key=>$attach): $extension = strtolower(pathinfo($attach[0], PATHINFO_EXTENSION));?>
<?php if(in_array($extension, array('gif','jpg','jpeg','png'))):?>
<p class="thumbnail-area"><img src="<?php echo site_url($attach[0])?>" alt="<?php echo $attach[1]?>"></p>
<?php else: $download[$key] = $attach; endif?>
<?php endforeach?>
<?php
$content .= ob_get_clean();
}
return $content;
}
그래서 위의 5번 게시판을 포함한 다른 게시판들(1, 4, 6)도 모두 첨부이미지가 본문에 보이게 하기 위해
아래와 같이 $board->id == '5' 부분을 in_array($board->id, array('1', '4', '5', '6'))로 적용했더니...
/* 케이보드 첨부 이미지 본문에 보여주기 */
add_filter('kboard_content', 'my_kboard_content', 10, 3);
function my_kboard_content($content, $content_uid, $board_id){
if( in_array($board->id, array('1', '4', '5', '6'))){ // 실제 게시판 id로 적용해주세요.
$document = new KBContent();
$document->initWithUID($content_uid);
""치명적인 오류를 확인하기 위한 사이트와 통신이 불가능하여 PHP 변경 사항이 복구되었습니다. PHP 파일 변경사항을 SFTP와 같은 다른 수단을 통해 업로드 해야 합니다."" 라는 메시지가 뜨네요ㅠㅠ
뭐가 잘못된건지요??? 도움 말씀 부탁드립니다.
와~! 드디어
대박이네요... 모든 게시판에서 잘 보입니다.
알려주신대로 해당 코드를 여러 번 적용하기위해
추가하려는 게시판 ID 번호(1, 4, 6) 에 따라
my_kboard_content 부분도
my_kboard_content1, my_kboard_content4, my_kboard_content6 이런 식으로 모두 교체해주니 모두 잘 보입니다.
이렇게 여러번 적용했다고 해서 특별히 다른 문제는 없겠지요?? ㅎㅎ
도움에 다시 한번 감사드립니다. 엄청 편하네요...^^
해당 코드를 게시판 번호만 달리하면 에러가 발생합니다.
워드프레스 필터(filter)는 중복해서 여러 개 사용할 수 있지만
PHP 함수명이 중복되어선 안 됩니다.
올려주신 코드 중 my_kboard_content 부분이 함수명입니다.
해당 코드를 여러 번 적용하시려면 게시판 ID를 바꾸신 후
my_kboard_content 부분을
my_kboard_content1, my_kboard_content2 이런 식으로 모두 교체하신 후에 적용해보시겠어요?
고맙습니다.
이상하게 in_array($board->id, array('1', '4', '5', '6')) 요것만 수정해 넣으면...
그동안 본문에 이미지를 잘 보여주던 ID 5번 게시판을 포함해 모두 안되고 마네요...
FTP 접속하여 /wp-content/themes/사용중인 차일드 테마/functions.php 를 직접 수정해서 업로드해도 안되고...
혹시 몰라서 우커머스, WPML, 케이보드를 제외한 모든 플러그인을 비활성화한 후에도 안되네요...
그냥 예전처럼 $board->id == '5' 이렇게 하나만 지정하면 잘됩니다.;;; 그 게시판 하나만...ㅠㅠ
그렇다면 혹시.... 좀 무식한 방법같은데 지금 잘 보여주는 5번 게시판의 코드 전체를
번호만 달리해 게시판 수 만큼 각각 모두 동일하게 전체 코드를 반복해 추가해넣으면.... 될까요??
안녕하세요~^^
코드 상에는 별 문제 없어 보입니다.
워드프레스 관리자 페이지에서 테마 쪽 functions.php 파일을 수정할 수 없다면
모든 플러그인을 비활성화한 후에 다시 테스트해보시겠어요?
그래도 문제가 된다면 서버 관리자 또는 웹호스팅 업체에도 문의를 해보셔야 할 듯합니다.
직접 테마의 functions.php 파일에 코드를 추가하시려면
FTP로 접속해서 /wp-content/themes/사용중인테마/functions.php 파일에 추가해보시겠어요?
고맙습니다.