2011-08-31 1 views
4

나는 PHP와 AJAX를 사용하여 다시로드하지 않고 jquery 탐색 기반 사이트를 구축했으며 최근에는 "뒤로", "앞으로"및 "다시로드"기능뿐만 아니라 SEO 친숙성 문제를 접하게되었습니다.history.push 상태 탐색 - 메타 태그는 무엇입니까 - 별도의 템플릿입니까?

- 바로 의문을 얻기 위해이 절을 건너 -

my site은 현재 (AJAX를 사용하지만) 볼 중 하나가 여러 "내용"div의를 가지고 하나의 index.php을로드 (class = "active") 다른 것들은 표시되지 않습니다. 사용자가 탐색 링크를 클릭하면 멋진 애니메이션이 콘텐츠 div간에 전환됩니다.

나는 아파치가 "에 대한"섹션은 기본적으로 표시 먹으 렴 하나가 될 것입니다 곳

http://mysite.com/about http://mysite.com/index.php?page=about

에 같은 것들을 매핑 재 작성해야 (다른 "내용"div의이 숨겨져있는 동안) . 이 매개 변수에 따라 페이지에 적절한 메타 태그가 포함됩니다. 내 사이트 맵에는 mysite.com/about, mysite.com/blog가있어 멋진 별도의 페이지로 색인이 생성됩니다.

그러나 최근에 아약스 기반으로 만들기로 결정했습니다. 왜냐하면 더 많은 콘텐츠와 바보 같은 내용을 통합하여 한 페이지에 모든 콘텐츠를로드 할 계획이기 때문입니다.

참고 : 이제 Smarty 템플릿도 구현 중입니다.

내가 해시 태그를 구현하기로 결정하지만, 고유의 SEO 문제를보고, 그럼 내가 hashbangs 발견 (WTH?!) 다음 history.pushState()History.js 및이와 함께 새로운 HTML5 물건을 발견 그것을 사용하기로 결정했습니다. 내가 URL 및 사용의 mod_rewrite와 PHP의 백을 수정 history.pushState()를 사용하여, 아약스와 콘텐츠 사업부에서 페이지 템플릿을로드 한 페이지가 있다면, 그래서 여기에

의 주요 질문

온다 end "mysite.com/about"(mysite.com/index.php?page=about) (기본 유용성 및 SEO 용)과 같은 직접 요청의 경우 기본 콘텐츠 템플릿을 제공 할 수있는 메타 콘텐츠를 설정할 수 없습니다. 콘텐츠 템플릿과 메타 템플릿이라는 두 개의 템플릿이 없으면 직접 요청할 수 있습니까? 이 문제를 해결하는 다른 방법이 있습니까?

<title><meta name="description">과 같은 태그로, 특히 템플릿이 있어야합니다.

요약하면, 내 좋은 mod_rewrite URL이 올바른 아약스로드 된 페이지 콘텐츠 템플릿에 대한 올바른 제목과 메타 설명을 사용하여 Google에 게재되기를 바랍니다.

편집

나는 그들이 hypem.com 여기 진행 한 거의 같은 일을위한거야. 새 콘텐츠가 나열되면 <title> 태그를 변경하는 이벤트 리스너가 있습니다.또한 올바른 <meta name="description"> 태그를 제공하지만 블로그와 같은 기본 페이지 중 하나 (예 : http://hypem.com/blog/indie+today/10332)에 대한 직접 요청 인 경우에만 직접 요청한 경우에만 기본 블로그 페이지의 메타 태그를 반환합니다.

답변

-1

먼저 모든 직접 링크 및 아약스가없는 사이트를 구축 한 다음 아약스를 추가합니다. 그러나 브라우저에서 페이지를 요청하는 경우 ajax/history 기능을 추가하는 코드 만 포함하십시오. 웹 크롤러가 사이트를 공격하는 경우 아약스/기록 기능을 포함하지 마십시오.

관련 문제