작성자 페이지의 기본 URL을 무시 하시겠습니까?


13

따라서 특정 작성자의 게시물 목록을 표시하는 기본 URL은 다음과 같습니다.

http://domain.com/author/{username}

해당 URL의 '저자'를 다른 것으로 변경하는 방법이 궁금합니다.

차터 스쿨 웹 사이트에서 일하고 있는데 각 교사가 "교실"별로 게시물 목록을 갖도록하고 싶습니다. 원하는 URL은

http://domain.com/classroom/{username}

답변:



15

이것을 함수에 추가하면 기본 "작성자"에서 "교실"로 슬러그를 다시 작성합니다.

function new_author_base() {
    global $wp_rewrite;
    $author_slug = 'classroom';
    $wp_rewrite->author_base = $author_slug;
}
add_action('init', 'new_author_base');

그것이 당신을 도울 희망


1
flush_rules()리소스가 매우 비싸므로 모든 페이지로드에서 호출하지는 않습니다. 한 사이트에 대해서만이 작업을 수행 한 경우 해당 사이트를 그대로두고 Permalinks 페이지를 방문 하면 규칙도 삭제됩니다.
Jan Fabry

예 @ Jan Fabry, 당신 말이 맞습니다. 지금 답변을 편집했습니다. 더 나은 해결책을 썼습니다.
Philip

4
이 스 니펫 또는 플러그인 t31os를 사용할지 궁금한 사람은 플러그인이 정확히 동일하지만 URL 부분을 변경하는 인터페이스가 있습니다. 매월 변경하지 않을 것이므로이 스 니펫은 functions.php충분하며 실수로 비활성화되지 않습니다.
Jan Fabry

1

http://www.techcartnow.com/author/kapil-khandelwal/ 에서 동일한 작업을 수행하기 위해 "저자 편집 슬러그 편집"플러그인을 사용합니다 . WordPress 블로그 . 이 플러그인을 사용하여 "저자 슬러그"를 수정했습니다.

" Author Slug 편집 "플러그인을 사용하면 작성자 기반 (저자 URL의 '/ author /'부분)과 작성자 슬러그 (기본적으로 작성자의 사용자 이름)를 모두 변경할 수 있습니다.


0

이것을 다음에 추가 할 수 있습니다 functions.php:

global $wp_rewrite;
$wp_rewrite->author_base = "member"; // or whatever
$wp_rewrite->flush_rules();
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.