Wordpress 웹 사이트에 게시되지 않은 게시물 이 여러 개 있는데 일반 게시물 슬러그 ( site.com/post-here
)를 사용하여 로그인하지 않은 일반 사용자가 액세스 할 수 있도록하려고합니다 . 나는 그것이 최선의 방법이 아니라는 것을 이해하지만, 나의 특별한 목적을 위해서는 이것이 이루어져야한다.
functions.php
파일에 다음 코드 스 니펫을 추가하려고했습니다 .
function enable_view_drafts() {
$role = get_role( 'subscriber' );
$role->add_cap( 'read_private_posts' );
$role->add_cap( 'edit_posts' );
}
add_action( 'after_setup_theme', 'enable_view_drafts');
나는 init
대신 후크를 시도했다 after_setup_theme
. 불운.
본인은 역할 변경 사항이 데이터베이스에 저장되므로 한 번만 수행하면된다는 것을 이해하고 있습니다. 그래서 after_setup_theme
후크를 사용 하여 함수를 호출하는 이유 입니다.
그러나 일반 사용자로 페이지에 액세스하려고하면 게시물 내용을 표시하는 대신 404 페이지가 표시됩니다. 또한 미리보기 URL ( site.com/?p=212&preview=true
)을 로드하려고 시도했지만 작동하지 않았습니다.
이것들은 내 추측입니다 :
- 일반 사용자는
caps
임시 게시물을 읽을 만큼 충분하지 않습니다 . - 프런트 엔드에서 임시 게시물을 테스트하고 보는 것은 모든 사용자 (관리자 포함)에게는 불가능합니다.
내가하려는 일을 달성하기 위해 어떤 변화를해야합니까? 가능하지 않은 경우 어떤 대체 솔루션을 제안 하시겠습니까?
참고 : 플러그인 기반 솔루션을 찾고 있지 않습니다.