카테고리 중복 방지

카테고리1과 카테고리2를 따로 사용하고 싶습니다.

예를들어 카테고리1의 a,b,c / 카테고리2의 d,e,f 이렇게 있을때, 

카테고리1과 카테고리2가 서로의 영역을 침범하지 않게 분류가 가능했으면 합니다.

지금은 b 와 e 를 동시에 선택하면 그 두개에 해당하는 게시글이 나오는데,

카테고리2의 e를 선택할시 카테고리1은 자동으로 초기화가 됐으면 합니다.

방법이 없을까요?

좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
  • 안녕하세요~^^

    게시글 목록 페이지에서 카테고리 선택 시

    카테고리1 선택하면 카테고리2 초기화하고 검색,

    카테고리2 선택하면 카테고리1 초기화하고 검색하고 싶다는 말씀이신지요?

     

    사용 중이신 스킨에 따라 카테고리를 표시하는 코드가 다를 수도 있기 때문에

    디폴트(Default) 스킨을 기준으로 안내해드리겠습니다.

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

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

    <div class="kboard-category category-mobile">
    	<form id="kboard-category-form-<?php echo $board->id?>" method="get" action="<?php echo $url->toString()?>">
    		<?php echo $url->set('pageid', '1')->set('category1', '')->set('category2', '')->set('target', '')->set('keyword', '')->set('mod', 'list')->toInput()?>
    		
    		<?php if($board->initCategory1()):?>
    			<select name="category1" onchange="kboard_category_submit_20210910(this)">
    				<option value=""><?php echo __('All', 'kboard')?></option>
    				<?php while($board->hasNextCategory()):?>
    				<option value="<?php echo $board->currentCategory()?>"<?php if(kboard_category1() == $board->currentCategory()):?> selected<?php endif?>><?php echo $board->currentCategory()?></option>
    				<?php endwhile?>
    			</select>
    		<?php endif?>
    		
    		<?php if($board->initCategory2()):?>
    			<select name="category2" onchange="kboard_category_submit_20210910(this)">
    				<option value=""><?php echo __('All', 'kboard')?></option>
    				<?php while($board->hasNextCategory()):?>
    				<option value="<?php echo $board->currentCategory()?>"<?php if(kboard_category2() == $board->currentCategory()):?> selected<?php endif?>><?php echo $board->currentCategory()?></option>
    				<?php endwhile?>
    			</select>
    		<?php endif?>
    	</form>
    </div>
    
    <div class="kboard-category category-pc">
    	<?php if($board->initCategory1()):?>
    		<ul class="kboard-category-list">
    			<li<?php if(!kboard_category1()):?> class="kboard-category-selected"<?php endif?>><a href="<?php echo $url->set('category1', '')->set('pageid', '1')->set('target', '')->set('keyword', '')->set('mod', 'list')->tostring()?>"><?php echo __('All', 'kboard')?></a></li>
    			<?php while($board->hasNextCategory()):?>
    			<li<?php if(kboard_category1() == $board->currentCategory()):?> class="kboard-category-selected"<?php endif?>>
    				<a href="<?php echo $url->set('category1', $board->currentCategory())->set('category2', '')->set('pageid', '1')->set('target', '')->set('keyword', '')->set('mod', 'list')->toString()?>"><?php echo $board->currentCategory()?></a>
    			</li>
    			<?php endwhile?>
    		</ul>
    	<?php endif?>
    	
    	<?php if($board->initCategory2()):?>
    		<ul class="kboard-category-list">
    			<li<?php if(!kboard_category2()):?> class="kboard-category-selected"<?php endif?>><a href="<?php echo $url->set('category2', '')->set('pageid', '1')->set('target', '')->set('keyword', '')->set('mod', 'list')->tostring()?>"><?php echo __('All', 'kboard')?></a></li>
    			<?php while($board->hasNextCategory()):?>
    			<li<?php if(kboard_category2() == $board->currentCategory()):?> class="kboard-category-selected"<?php endif?>>
    				<a href="<?php echo $url->set('category2', $board->currentCategory())->set('category1', '')->set('pageid', '1')->set('target', '')->set('keyword', '')->set('mod', 'list')->toString()?>"><?php echo $board->currentCategory()?></a>
    			</li>
    			<?php endwhile?>
    		</ul>
    	<?php endif?>
    </div>
    
    <script>
    function kboard_category_submit_20210910(obj){
    	if(jQuery(obj).attr('name') == 'category1'){
    		jQuery('select[name="category2"]').val('');
    	}
    	else if(jQuery(obj).attr('name') == 'category2'){
    		jQuery('select[name="category1"]').val('');
    	}
    	
    	jQuery('#kboard-category-form-<?php echo $board->id?>').submit();
    }
    </script>

    고맙습니다.

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