2017-09-21 20 views
0

필자는 og : url 태그를 2 레벨 위쪽의 수명이 긴 페이지로 연결해야합니다. 비취/퍼그 (tade/pug) 템플릿으로 의견을 쓰고 있습니다.페이스 북 메타 태그 og : url을 두 레벨 위로 상대 링크로 연결하려면 어떻게해야합니까?

해당 페이지에 대한 태그는해야한다 :

meta(property="og:url" content="http://www.example.com/cat/tabby/tagNumber/59c27/../..") 

내 페이지가 동적, 나는 URL을 지정하는 가장 좋은 방법을 모르는

meta(property="og:url" content="http://www.example.com/cat/tabby") 

에 해당하지만, 어떤 . 는 정말 같은 깔끔한 뭔가 할 수 있도록하려면 :

meta(property="og:url" content="./../..") 

을하지만은 OG 사양에 따라 잘못이며, 페이스 북 크롤러에 의해 무시. 내보기에 url 변수를 보내 내 컨트롤러 기능을 수정하지 않고

meta(property="og:url" content= thisVarURL +"/../..") 

:

이와 비슷한 더 많은 일을 할 수있는 방법이 있나요.

답변

0

나는 이것을하기위한 자동화 된 방법이 있다고 생각하지 않지만 각 뷰에 환경 변수 thisVarURL을 확실히 전달하고 URL 값을 할당 할 수 있습니다. 좀 더 우아한 방법을 원할 경우 this question에 설명 된 미들웨어 접근 방식과 this question에 제공된 스 니펫을 통해 요청의 URL을 가져 오는 것이 좋습니다.

어떤 생각이 작동하지 않는 경우,하지만은 다음과 같이 볼 수 있습니다 :

app.use(function locals(req, res, next) { 
    res.locals.thisVarURL = req.protocol + '://' + req.get('host') + req.originalUrl; 
    next(); 
});