wordpress의 page기능을 이용하여 방명록-guestbook-을 만들었다.
방법:
- page를 생성한다
- comments의 출력순서만 바꿀 것인지 페이지 처리 할 것인지 결정한다
1. page를 생성한다
- guestbook으로 사용할 page template을 만들어 업로드 한다
(ex. blog/wp-content/themes/yourtheme/guestbook.php) - admin의 write menu에서 적당한 이름의 page를 생성해준다. (ex. guestbook)
guestbook으로 사용할 page 생성시 comment가 출력되지 않는 page template을 샘플로 가져온 경우(ex. archives, about)에는 코멘트를 출력하고 싶은 부분에 다음의 코드를 넣어준다.
<?php comments_template(); ?>
2-1. comments의 출력순서만 조절하고 싶은 경우
어떻게 코멘트 순서를 반대로 출력할까에 대해 고민해보기로 하구선 못하고 있었는데 (검색 조차 시도하지 않은 상황) 임시 guestbook에 바람처럼 나타난 rosarux님께서 여기를 알려주셨다.
- Plugin을 다운로드 받는다.(바람님 블로그가 사라져 임의로 플러그인 파일을 올려둡니다.)
- default theme를 사용하고 있는 것이 아니라면
comments_desc.php
를 연 다음 31~35번째 줄을 수정해준다.- blog/wp-content/themes/default/ -> blog/wp-content/themes/yourtheme/
- comments_desc.php를 plugin directory에 업로드하고 (blog/wp-content/plugins/), plugin설정에서 activative한다.
- guestbook.php를 기존에 쓰던 theme에 맞게 수정을 하거나 원하는 파일명으로 바꿔준 후 theme directory에 를 업로드 한다
(ex. blog/wp-content/themes/yourtheme/guestbook.php) - admin의 write menu에서 page를 작성하되 방금 전에 올린 guestbook template으로 지정해 준다
파일 설명
comments_desc.phpplugin파일guest.phptemplate 파일guest-comments.php다른 템플릿에서 가져온 테스트용 comments 템플릿
나같은 경우는
guestbook에서 코멘트입력란을 위에 두고 싶어서 theme안에 있던 comment.php를 guset-comment.php로 복사한 후, 입력란과 출력란의 위치를 바꿔준 후에
comments_desc.php의 34번째 줄의 comments.php를 guest-comments.php로 바꿔서 넣었다.
2-2. 출력순서도 결정하고, comments가 많은 경우 페이지 처리 하고 싶은 경우
- WordPress Paged Comments Plugin을 다운로드 받는다.
- paged-comments.php는 blog/wp-content/plugins/ 디렉토리에 업로드한다.
- wp-paged-comments.php 는 wordpress가 설치된 최상위 디렉토리에 업로드한다.(ex. wp/)
- 이전에 만들어둔 template (ex. blog/wp-content/themes/yourtheme/guestbook.php)를 수정해 준다.
comments가 출력되는 부분인< ?php comments_template(); ?>
를< ?php include(ABSPATH.’/wp-paged-comments.php’); ?>
이렇게 바꾸어 준다 - 가장 처음에 만들어둔 page에 커스텀 필드를 추가해준다.key: paged_comments
value: on - 그리고 아래의 설명 혹은 paged-comments.php에 딸린 주석에 따라 /blog/wp-content/plugins/paged-comment.php를 수정해 준다
아래의 설명은 피오넬님의 포스트에서 인용
$paged_comments->all_posts = false;
이렇게해두어야 특정페이지만 코멘트가 페이지로 나뉘게 할 수 있다.
아까 커스텀 필드를 추가한 것과 관련이 있다.
$paged_comments->per_page = 10;
10개의 코멘트가 넘을 때마가 페이지를 새로 만들어준다.
$paged_comments->ordering = ‘DESC’;
코멘트 보여줄 순서를 정해준다.
$paged_comments->page_range = 10;
페이지의 범위를 정해준다.
최신 댓글