2011-09-07 6 views
4

안녕하세요. StackOverflow의 좋은 사람들, 문제가 있으며 저의 일부가 나를 도울 수 있기를 바랍니다. 영어로 작성된 www.webshop.com 도메인에서 'cartItems'라는 쿠키를 사용하여 Wordpress 웹 쇼핑몰을 만들어야한다고 가정 해 봅시다. 좋아, 문제 없어.도메인/하위 도메인에 쿠키 설정

문제는 필자도 사이트의 독일어 버전을 만들어야하고 영어와 독일어 쿠키간에 차이를 만들어야한다는 것입니다.

예를 들어, 독일어 사이트가 www.webshop.com/de/에 있다면 독일어 쿠키를/de/domain에서만 사용할 수 있도록 설정할 수 있습니까? 그러나 어떻게 영어 쿠키가/de/one을 제외한 모든 도메인에서 사용 가능하게 설정할 수 있습니까? 즉 독일 사이트가

de.webshop.com

에 있다면 그것이 가능할 것이다 수행 할 수없는 경우

내가이 문제를 해결하기 위해이 플러그인을 사용하고

+2

도메인이 아니므로 언어를 저장하지 않는 이유는 무엇입니까? 쿠키 내부의 플래그 또는 서버 측 백엔드 내부에도 있습니까? –

+0

그래, 나는 자신을 올바르게 표현하는 법을 알지 못한다는 것을 이해합니다. 다른 통화 및 기타 등으로 인해 동일한 쿠키를 사용할 수 없습니다. 어떤 종류의 변환으로 끝내지 만 나는 그렇게 좋지 않다. :) –

+2

"경로"라고 불리며, 쿠키의 명세에 아주 똑같은 용어가 사용된다면, 그것에 익숙하지 않아야한다는 것에 약간의 걱정이 따른다. 이 기술로 돈을 거래하는 응용 프로그램을 만들려고 노력하고 있습니다. 어쨌든 쿠키 경로가 문제를 해결하지 못할 수도 있지만 어떻게 든 이것이 좋은 디자인인지 전혀 궁금합니다. 나는이 모든 것이 서버 측에서 수행되어야한다는 느낌을 가지고 있으며 쿠키는 실제로 세션 ID 만 추적해야한다. ... –

답변

3

당신이 욕실을 분리 할 수 ​​있습니다 3 가지 방법이 있습니다 glish 및 독일어 쿠키

1) 도메인 : 별도의 www를 사용할 수 있습니다. 그리고 드. 하위 도메인. 나에게 이것은 가장 쉬울 것이다

2) 경로 :경로를 사용할 수 있지만 영어 쿠키가 "/"으로 설정된 경우 "/ de /"에서 계속 액세스 할 수 있습니다. 따라서이 경로를 가고 싶다면 Kerrek이 제안한대로 "/ en /"경로를 만들어야합니다.

3) 이름 : 당신은 별도의 영어 및 독일어 쿠키를 가지고 그 3 다음 중 하나를 수행해야합니다 독일 쿠키에 다른 이름

주세요 . 쿠키 경로뿐만 아니라 모든 자산 경로가 언어에 관계없이 동일하기 때문에 별도의 하위 도메인을 갖는 것이 가장 좋습니다.

0

개인적으로 모든 도움을 주셔서 감사합니다 : http://wpml.org/

을하지만 무료 솔루션을 선호하는 경우, 여기에 아주 좋은 기사입니다 : http://codex.wordpress.org/Multilingual_WordPress

+0

재미있는 것은 어제까지 그 플러그인을 사용하고 위대한 (그것은 Wordpress V 3.0.5 무료입니다)하지만 지금은 장바구니/통화/idontevenknowanymore 문제. 코멘트 주셔서 감사합니다. –

5

EN 데이터와 DE 데이터의 두 가지 쿠키 이름을 사용해야 할 수도 있지만 물론 가능합니다. (DE에 대한 EN에 대한 www.webshop.com 및 www.webshop.com/de/) 다른 경로를 사용

: 쿠키

// this will be available everywhere, both on the english version and the german one 
setcookie ('my_en_cookie_name', 'some data', time() + 24*30*3600, '/'); 
// this will only be visible when accessing the german website, english version user won't be able to see it 
setcookie ('my_de_cookie_name', 'some other data', time() + 24*30*3600, '/de/'); 

경로는 이전 버전과의 차단은 (그것은 단지에서 읽을 수 있습니다 디렉토리가 지정되었거나 부모 디렉토리가 아닌 하위 디렉토리에서),/de/path를 사용하여 쿠키를 설정하면/de/또는/de/foo /에서 읽을 수 있지만/또는/bar에서는 읽을 수 없습니다 /. 같은 방법으로 경로가/인 쿠키를 설정하면/de/또는/de/foo/또는/bar /에서 읽을 수 있습니다.

// this will be available everywhere, both on the english version and the german one 
setcookie ('my_en_cookie_name', 'some data', time() + 24*30*3600, '/', '.webshop.com'); 
// this will only be visible when accessing the german website, english version user won't be able to see it 
setcookie ('my_de_cookie_name', 'some data', time() + 24*30*3600, '/', 'de.webshop.com'); 

에주의 : 도메인 ".webshop에 쿠키를 설정 다른 도메인 (www.webshop.com EN 및 de.webshop.com DE에 대한)를 사용


.com "은이 쿠키가 webshop.com의 하위 도메인 인 경우 으로 전송된다는 것을 의미합니다. 원하는 내용인지 확인하십시오.