썸네일 게시판 글 순서를 2줄로 병렬 구성하고 싶습니다.

안녕하세요 지난 답변 감사합니다.

http://dnsrjswnd.dothome.co.kr/wp/

메인 화면을 보시면 썸네일 게시판 최신글 모아보기로 구성되어 있습니다.

리스트가

4

3

2

1

로 되어 있는데

4 3

2 1 로 하려고 해도 되지 않습니다.

현재처럼 단순 복사만 가능할 뿐입니다.

skin/latest.php를 계속 수정하고 있습니다.

uid 값에 따라 좌우로 나누려고 해도 여러 게시판의 글들이 나와야 하기에 문제가 됩니다.

코드를 어찌 수정해야 할지 도움주시면 감사하겠습니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
  • 안녕하세요~^^

    해결을 하신 건지요?

    올려주신 페이지 주소로 메인 페이지를 확인해보니

    썸네일 게시판 최신글이 한 줄에 2개씩 표시되고 있습니다.

     

    만약, 아직 해결된 게 아니시라면

    어떤 식으로 수정하고 싶으신지

    이미지를 imgur에 업로드한 뒤 링크 걸어주시겠어요?

    고맙습니다.

  • 현재는 단순히 코드를 복붙한 것이지만 형태는 저런 형태가 되었으면 합니다.

    다만 게시글이

    https://imgur.com/wnPCuHJ

    다음과 같이 글의 순서대로 양 옆으로 차례로 나오는걸 생각하고 있습니다.

  • FTP로 접속해서 /wp-content/plugins/kboard/skin/사용중인스킨/latest.php 파일의 코드를

    아래의 코드로 교체해서 확인해보시겠어요?

    <div id="kboard-thumbnail-latest">
    	<table>
    		<tbody>
    			<?php $index = 1?>
    			<?php while($content = $list->hasNext()):?>
    				<?php if($index%2):?>
    				<tr class="<?php if($content->uid == kboard_uid()):?>kboard-list-selected<?php endif?>">
    				<?php endif?>
    					<td class="kboard-list-thumbnail">
    						<a href="<?php echo $url->getDocumentURLWithUID($content->uid)?>">
    						<?php if($content->getThumbnail(120, 90)):?><img src="<?php echo $content->getThumbnail(120, 90)?>" alt="<?php echo esc_attr($content->title)?>"><?php else:?><i class="icon-picture"></i><?php endif?>
    						</a>
    					</td>
    					<td class="kboard-list-title">
    						<a href="<?php echo $url->getDocumentURLWithUID($content->uid)?>">
    							<div class="kboard-thumbnail-cut-strings">
    								<?php if($content->isNew()):?><span class="kboard-thumbnail-new-notify">New</span><?php endif?>
    								<?php if($content->secret):?><img src="<?php echo $skin_path?>/images/icon-lock.png" alt="<?php echo __('Secret', 'kboard')?>"><?php endif?>
    								<?php echo $content->title?>
    								<span class="kboard-comments-count"><?php echo $content->getCommentsCount()?></span>
    							</div>
    						</a>
    					</td>
    					<td class="kboard-list-date"><?php echo $content->getDate()?></td>
    				<?php if(!$index%2):?>
    				</tr>
    				<?php endif?>
    				<?php $index++?>
    			<?php endwhile?>
    		</tbody>
    	</table>
    </div>

    HTML 테이블 관련 태그는 레이아웃 수정이 비교적 어렵기 때문에

    원하시는 대로 적용하시려면 <div> 태그로 교체해서 작업하시는 게 좋을 듯합니다.

    고맙습니다.

  • 정말 감사합니다. 원하는 모양대로 출력되었습니다.
    모바일로 접속 시 원래대로 1렬로 나오게 하려면 css에서 어디를 어떻게 만지는게 좋을까요?
    거듭 질문만 드려 죄송합니다.
  • 안녕하세요.

    HTML <tr> 태그는 table row의 약자로 행(가로)을 만들 수 있습니다.

    모바일에서만 한 줄에 하나의 게시글만 표시하시려면

    PC 화면과 모바일 화면에서 보이는 레이아웃을 분리한 후

    미디어 쿼리로 화면의 너비에 따라 표시를 해줘야 할 듯합니다.

     

    latest.php 파일의 코드를 아래의 코드로 교체해보세요.

    <div id="kboard-thumbnail-latest">
    	<table class="pc">
    		<tbody>
    			<?php $index = 1?>
    			<?php while($content = $list->hasNext()):?>
    				<?php if($index%2):?>
    				<tr class="<?php if($content->uid == kboard_uid()):?>kboard-list-selected<?php endif?>">
    				<?php endif?>
    					<td class="kboard-list-thumbnail">
    						<a href="<?php echo $url->getDocumentURLWithUID($content->uid)?>">
    						<?php if($content->getThumbnail(120, 90)):?><img src="<?php echo $content->getThumbnail(120, 90)?>" alt="<?php echo esc_attr($content->title)?>"><?php else:?><i class="icon-picture"></i><?php endif?>
    						</a>
    					</td>
    					<td class="kboard-list-title">
    						<a href="<?php echo $url->getDocumentURLWithUID($content->uid)?>">
    							<div class="kboard-thumbnail-cut-strings">
    								<?php if($content->isNew()):?><span class="kboard-thumbnail-new-notify">New</span><?php endif?>
    								<?php if($content->secret):?><img src="<?php echo $skin_path?>/images/icon-lock.png" alt="<?php echo __('Secret', 'kboard')?>"><?php endif?>
    								<?php echo $content->title?>
    								<span class="kboard-comments-count"><?php echo $content->getCommentsCount()?></span>
    							</div>
    						</a>
    					</td>
    					<td class="kboard-list-date"><?php echo $content->getDate()?></td>
    				<?php if(!$index%2):?>
    				</tr>
    				<?php endif?>
    				<?php $index++?>
    			<?php endwhile?>
    		</tbody>
    	</table>
    	<?php
    	$mobile_list = new KBContentList($board->id);
    	$mobile_list->getList();
    	?>
    	<table class="mobile">
    		<tbody>
    			<?php while($content = $mobile_list->hasNext()):?>
    				<tr class="<?php if($content->uid == kboard_uid()):?>kboard-list-selected<?php endif?>">
    					<td class="kboard-list-thumbnail">
    						<a href="<?php echo $url->getDocumentURLWithUID($content->uid)?>">
    						<?php if($content->getThumbnail(120, 90)):?><img src="<?php echo $content->getThumbnail(120, 90)?>" alt="<?php echo esc_attr($content->title)?>"><?php else:?><i class="icon-picture"></i><?php endif?>
    						</a>
    					</td>
    					<td class="kboard-list-title">
    						<a href="<?php echo $url->getDocumentURLWithUID($content->uid)?>">
    							<div class="kboard-thumbnail-cut-strings">
    								<?php if($content->isNew()):?><span class="kboard-thumbnail-new-notify">New</span><?php endif?>
    								<?php if($content->secret):?><img src="<?php echo $skin_path?>/images/icon-lock.png" alt="<?php echo __('Secret', 'kboard')?>"><?php endif?>
    								<?php echo $content->title?>
    								<span class="kboard-comments-count"><?php echo $content->getCommentsCount()?></span>
    							</div>
    						</a>
    					</td>
    					<td class="kboard-list-date"><?php echo $content->getDate()?></td>
    				</tr>
    			<?php endwhile?>
    		</tbody>
    	</table>
    </div>

     

    그 다음, 워드프레스 관리자 -> 외모 -> 사용자 정의하기 -> CSS 입력 필드에

    아래의 코드를 추가해보세요.

    #kboard-thumbnail-latest .mobile { display: none; }
    
    @media screen and (max-width: 600px) {
    	#kboard-thumbnail-latest .pc { display: none; }
    	#kboard-thumbnail-latest .mobile { display: table; }
    }

     

    추가로, 커뮤니티에서 모든 코드를 직접 만들어 드리는 것은 한계가 있습니다.

    직접 수정하시는 게 어려우시다면,

    다음엔 유료 기술지원을 요청해주시길 부탁드립니다.

    고맙습니다.

  • 무리한 부탁에도 정말 정말 감사합니다.

  • 너무 죄송스럽지만 염치불구하고 다시 질문드립니다 ㅠ

    코드 너무 감사히 쓰고 있습니다. 다만 반응형 디자인이 작동하지 않습니다.

    http://dnsrjswnd.dothome.co.kr/wp/

    @media도 이것저것 고쳐보고 php코드도 계속 만져봐도 width 600px가 되면 출력이 되지 않습니다.

    모바일 레이아웃에서 문제가 있는 것 같은데 정확히 집어낼 수 없는데 어떻게 해야 할런지요

     

  • 안녕하세요.

    올려주신 페이지 주소로 확인해보니 CSS 속성 문제는 아닌 듯합니다.

    실제 게시글이 표시되지 않고 있습니다.

    latest.php 파일에 추가하신 코드는 어떻게 되시는지요?

    디버그 모드를 활성화해서 에러 메시지가 표시되는지 확인해보시겠어요?

    워드프레스 에러 확인하기 - 디버그 모드 활성화 방법

    고맙습니다.

  • 감사합니다. latest.php에는 알려주신 코드를 작성하였고, 디버그 모드도 실행시켜보았으나

    별다른 에러 메시지가 출력되지 않습니다.

    dnsrjwnd.dothome.co.kr/wp 에서도 특별한 메시지가 출력되지 않습니다.

    혹시 php 버전에 따른 차이가 있을 수 있나요?

    반응형 웹은 참 어려운 것 같습니다.

  • 안녕하세요.

    올려주신 페이지 주소로 확인해보니

    현재 KBoard 5.4.2 버전을 사용 중이신 듯합니다.

     

    이전 댓글에 안내해드린 코드 중

    아래의 코드를 찾아서

    $mobile_list = new KBContentList($board->id);
    $mobile_list->getList();

    아래의 코드로 교체해서도 확인해보시겠어요?

    $mobile_list = new KBContentList($board->id);
    $mobile_list->rpp(5);
    $mobile_list->page(1);
    $mobile_list->getList();

    위의 코드에서 rpp(5) 부분은 숏코드에서 설정한 rpp와 동일하게 적용해보세요.

    고맙습니다.

  • 감사합니다.

    게시판 작성시 나오는 최신글 숏코드(kboard_latest id)를 사용하지 않고

    최신글 모아보기 숏코드 (kboard_latestview)를 사용하여 에러가 생긴 것 같습니다.

    정말 정말 감사합니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요