안녕하세요, 직접 index.php 파일을 수정해서 워드프레스 메인을 만들었습니다.
게시판의 기능을 이용하고 싶어 KBoard의 최신글 리스트를 메인 앞부분에 넣고, 게시글 관리는 admin 에서 추가/삭제 하고 있습니다.
아래처럼, 메인 리스트에 8개의 글이 보이도록 만들었는데,
궁금한 건, 글을 클릭했을때 멀티사이트의 주소를 바꿔서 그런지 http://newdev.mincoding.co.kr/wp-signup.php?new=research 링크로 들어가집니다.
링크를 클릭했을때 이동되는게 아니라 게시물의 글 내용이 리스트사이가 펼쳐지면서 내용을 보이고 다시 클릭했을때 닫혀올라가거나
다른 게시물 타이틀을 눌렀을때 닫히면서 그 게시물의 내용이 펼쳐지는 것을 구현하고 싶은데요.
추가적으로 최신 게시물들이 쌓이면 << < 1 2 3 > >> 이렇게 해서 다음 글을 볼 수 있는 방법이 없을까요?
최신글 보여주기의 제한이라면, 게시판을 메인에 넣고서 위에 말씀드린것처럼 제작하고 싶어요.
https://www.cosmosfarm.com/threads/document/20757
위 질문 보고서 function.php 파일에 shortcode를 만들어 보긴했는데,
$wpdb->get_row("SELECT * FROM `{$wpdb->prefix}kboard_board_content` 부분에서 에러가 나와요.
메인 사이트에 넣은 소스 코드입니다.
<?php echo do_shortcode('[kboard_latest id="3" url="http://research.newdev.mincoding.co.kr/home/" rpp="8"]');?>
<?php echo do_shortcode('[my_kboard_latest_content_view]'); ?>
function.php 에 넣은 코드인데 $content = wp_strip_all_tags($result->content); / echo '<div class="kboard-title"><a href="http://research.newdev.mincoding.co.kr/home/">'.$result->title.'</a></div>'; 이부분에서
Notice : Trying to get property of non-object in /var/www/html/wp-content/themes/research/function.php 에러가 발생하내요.
add_shortcode('my_kboard_latest_content_view', 'my_kboard_latest_content_view');
function my_kboard_latest_content_view($args=array()){
global $wpdb;
$board_id = '1';
$result = $wpdb->get_row("SELECT * FROM `{$wpdb->prefix}kboard_board_content` WHERE `board_id`='$board_id' AND (`status`='' OR `status` IS NULL OR `status`='pending_approval') ORDER BY `date` DESC LIMIT 1");
$content = wp_strip_all_tags($result->content);
$content = mb_strimwidth($content, 0, 100, '...', 'utf-8'); // 100 수치를 조절하시면 길이를 조절할 수 있습니다.
ob_start();
echo '<div class="kboard-title"><a href="http://research.newdev.mincoding.co.kr/home/">'.$result->title.'</a></div>';
echo '<div class="kboard-content">'.$content.'</div>';
return ob_get_clean();
}
Notice : Trying to get property of non-object 에러만 보고 판단하자면 DB 쿼리 결과를 제대로 가져오지 못한 것 같습니다.
아래처럼 쿼리의 결과를 출력해서 제대로 결과를 가져오고 있는지 확인해야 할 듯합니다.
$result = $wpdb->get_row("...");
print_r($result); // 결과값을 출력해서 확인해보세요.
저희가 커스터마이징에 대해서 도움을 드릴 수는 있지만 코드를 만들어 드리지는 못하고 있습니다.
토글에 대한 jQuery 관련 자료를 보고 기능은 직접 만드셔야 할 듯합니다.
구글 검색하면 관련 예제를 많이 찾아볼 수 있기 때문에 저희가 설명드리는 것보다 좋을 듯합니다.
저희는 예제보다는 방향에 대해서 그리고 버그에 대해서 도움을 드리는 게 좋을 듯합니다.
커뮤니티 답변 남기다 보면 하루 종일 걸리기도 해서요.
전부 다 하려면 불가능하고,
현실 가능한 방법은 간단한 조언이나 도움 정도 수준일 듯합니다. (선택과 집중)
더 많은 분들께 이득이 되는 방향이오니 이해 부탁드립니다.
고맙습니다.
안녕하세요~^^
1번의 경우 다른 스킨을 사용하시면 쉽게 해결하실 수 있을 듯합니다.
직접 기능을 만드시려면 아래 링크를 참고해보시겠어요?
https://www.w3schools.com/jquery/eff_toggle.asp
https://www.w3schools.com/jquery/tryit.asp?filename=tryjquery_eff_toggle
2번의 경오 코드상 에러는 보이지 않습니다.
echo 부분을 지우거나 다른 줄을 지워서 에러 유무를 다시 확인해보시면 좋을 듯합니다.
또한 정확히 어떤 줄에서 에러가 발생했는지 알면 좋겠습니다. (역시 코드상으로는 에러가 없어 보입니다.)
또한 중요한 게 워드프레스 표준으로는 function.php 파일이 아니라 functions.php 파일을 사용하셔야 합니다.
표준대로 만들어지지 않는다면 예상치 못한 문제가 있을 수 있습니다.
아래 링크도 참고 부탁드립니다.
https://developer.wordpress.org/themes/basics/theme-functions/
https://codex.wordpress.org/ko:Template_Hierarchy
고맙습니다.