현재 서비스 준비 중인 페이지로, 실제로 다른 내용이 있을 수 있습니다. 

워드프레스 글 보기 페이지에서 목록으로 돌아가기 버튼 삽입

작성자 | 2021. 01. 10 | 댓글 0개

워드프레스에는 글의 상세페이지에 다시 목록으로 돌아갈 수 있는 버튼이 존재하지 않습니다.

그럴때 아래 코드를 추가하면 목록으로 돌아가는 버튼을 삽입할 수 있습니다.

부모테마의 single.php 파일을 차일드테마 폴더내에 복사한 후

single.php내의 원하는 위치에 코드를 삽입하시면 됩니다.

 

목록으로 돌아가는 링크를 만들때는 두가지 경우가 발생하는데요.

첫번째는 단순히 목록페이지에서 상세페이지로 들어왔을때인데 이경우에는 아래와 같이 뒤로가기 링크만 삽입해주어도 해결됩니다.

하지만 주소창에 상세페이지의 URL를 붙여넣어서 바로 접속하거나 Home의 최근 포스트 같은 리스트를 통해서 상세페이지로 오는 경우가 있습니다.

이 경우는 목록페이지 URL의 특정 패턴을 활용해서 링크를 만듭니다.

예를 들면 모든 목록 페이지의 주소 뒤에 ‘-list’를 붙인다던가 혹은 워드프레스 기본 목록 페이지 URL인 ‘/archive’나 ‘/category’ 같은 패턴을 활용할수도 있습니다.

 


 

$post_type = get_post_type();

if ( $post_type ) {

$post_type_data = get_post_type_object( $post_type );

$post_type_slug = $post_type_data->rewrite[‘slug’];

} //현재 포스트의 포스트타입 slug 체크

$link = ‘<a href=”/’ . $post_type_slug . ‘-list” >목록으로</a>’; // 포스트 리스트 페이지의 주소의 일정 패턴을 찾아서 체크합니다. 여기서는 모든 리스트 페이지의 URL에 ‘-list’를 붙였으므로 해당 Slug와 ‘-list’를 결합한 URL을 가진 페이지로 이동합니다.

return ‘<div class=”golist_wrap”>’ . $link . ‘</div>’;

 


 

혹은 아래 코드를 functions.php 파일에 넣고 숏코드 형태로 사용하셔도 됩니다.

 


 

/** 목록으로 가기 버튼 숏코드 **/
function backToList_function() {

$post_type = get_post_type();

if ( $post_type ) {

$post_type_data = get_post_type_object( $post_type );

$post_type_slug = $post_type_data->rewrite[‘slug’];

} //현재 포스트의 포스트타입 slug 체크

$link = ‘<a href=”/’ . $post_type_slug . ‘-list” >목록으로</a>’;

return ‘<div class=”golist_wrap”>’ . $link . ‘</div>’;

}

add_shortcode(‘Shortcode_name’, ‘backToList_function’);

 


 

단비스토어

워드프레스의 개발원칙을 지키며, 워드프레스를 위한 국내 최대의 리소스를 제공합니다.

단비 노하우는...

  • 상용 사이트 제작과 운영을 지식 제공을 목적으로 단편적이고 파편적인 정보를 지양합니다.
  • 최상의 리소스를 중심으로 작성되며, 리소스의 가격은  거의 고려하지 않습니다. 따라서, 상용 사이트에 적합하지 않은 테마나 플러인은 다뤄지지 않습니다. 
  • 모든 노하우는 단비에서 직접 검증한 내용입니다.
  • IT 기술이 빠르게 발전하 듯이, 언급된 리소스에도 변화가 있을 수 있습니다. 업데이트 날짜를 기준으로 읽어봐 주시기 바랍니다.