2014-02-10 1 views
0

그래서 여기에 문제가있다 : 우리는 워드 프레스는 우리가 같은 URL을 가질 수 없습니다 의미도 하위 범주에 대한 중복 슬러그을 허용하지 않는다는 사실을 좋아하지 않는다 :.htaccess를 편집하여 WorldPress URL (사용자 정의 재 작성)을 작성할 수 있습니까?

매우 짜증나
product-1/guides 
product-1/articles 
product-2/guides 
product-2/articles 

!

product-1/product-1-guides 
product-1/product-1-articles 
product-2/product-2-guides 
product-2/product-2-articles 

을하지만 우리의 htaccess로에 - 우리는 URL을 픽업하여 하위 폴더에서 제거 제품 이름이 예뻐하는 URL로 재 작성하는 데 사용할 수 있습니다 : 우리가 고려하고있는 하나 개의 솔루션은 다음과 같이 우리의 굼벵이를 설정하는 것입니다 ? 우리는 사이트에 5-10 개의 제품 만 갖기 때문에 이것을 하드 코딩하지 않아도됩니다.

이렇게하면 WordPress가 고유 한 슬러그에 만족하지만, 더 나은 URL을 찾는 상자에는 SEO가 표시됩니다.

구문이있는 손이 필요하십니까?

편집 1 :

API를 다시 작성 워드 프레스보고 후, 난 아무데도 내가 정말 간단한 테스트 무슨 생각으로 얻을 실패하고있다. 에코를 테스트하면서 실행중인 functions.php에 다음 코드가 있지만 재 작성 작업이 수행되지 않고 있습니까? 내가 쳤을 때

add_action('init', 'productRewrites'); 

function productRewrites() { 
    add_rewrite_rule('^wordpress/james?','index.php?author_name=jwilson','top'); 
} 

아무런 반응이 없습니다 :

mysite.com/wordpress/james

편집 2 :

쿨 내가 지금 때마다 저장을 클릭해야합니다 알고 있습니다. 나는 $ 일치

function productRewrites() { 

    add_rewrite_rule( 
     "writer/([^/]+)/?", 
     "index.php?author_name=$matches[1]", 
     "top"); 
} 

사용하는 경우 : 나는 하드 코드 (예를 들어 jwilson까지) AUTHOR_NAME 값을 경우에만 작동 - 내가 지금 가지고있는 문제는 $ [1] 일치를 사용할 때 다음과하지 작동하지 않는 것입니다 [1] 모든 것을 반환합니다! 이렇게 명확하게 URL에서 ([^ /] +) 사용하지 않는?!

+0

왜 사용하지 않는 HTTP를 변경 누르십시오 : // codex.wordpress.org/Rewrite_API? – pwolaq

+0

괜찮으 시다면 1 번 편집을 참조하십시오. –

답변

0

당신은 설정로 이동, 그렇게하기 위해 영구 링크 구조를

을 재설정해야 ->퍼머 링크저장 버튼

+0

편집 2 please :) –

+0

nuteshell에서는 ([^ /] +)이 예제에서 $ matches [1]로 전송되지 않습니다. $ matches [1] 대신에 무언가를 하드 코딩하면 원하는 효과를 얻을 수 있습니다. 하지만 그 URL의 마지막 부분에 무엇이든 사용하는 것이 필요합니다 ... –

+0

- "에코 ="일치해야합니다. $ matches [1]은 add_rewrite_rule() 함수 다음에 뭔가를 나타냅니다? 그것은 비어 있습니다. –