1

Wordpress를 사용하고 있습니다. 힘든 일이 일어나고 있습니다. 이전에 이미지를 변경 한 후에 다른 이미지가있는 링크를 공유했습니다. 공유 할 때 페이스 북은 이전의 동일한 이미지를 사용하고 있습니다. 제가이미지와 텍스트를 공유하는 동안 Facebook 캐시를 지우는 방법

헤드 섹션

<meta property="og:title" content="<?php echo $blogArray['post_heading'];?>" /> 
<meta property="og:type" content="article" /> 
<meta property="og:image" content="<?php echo $blogArray['image_url'];?>" /> 
<meta property="og:url" content="<?php echo site_url().'?page_id=3205&id='.base64_encode($blogArray['ID']);?>" /> 
<meta property="og:description" content="<?php echo $blogArray['post_sort_details'];?>" /> 

그리고 HTML

http://www.facebook.com/sharer.php?s=100;&amp;p[title]=<?php echo $blogArray['post_heading'];?>&amp;p[summary]=<?php echo $blogArray['post_sort_details'];?>&amp;p[url]=<?php echo 'http://'.str_replace('http://','',str_replace('www.','',site_url()));?>/?p=<?php echo $blogArray['share_post_id'];?>&amp;p[images][0]=<?php echo $blogArray['image_url'];?>" target="_blank"><img src="<?php bloginfo('template_url');?>/images/fb_static.png" border="0" class="fb" title="Share via Facebook" width="24" height="24" /></a> 

하지만 베타 폴더에 같은 사이트에서 노력하고 때 절대적으로 잘오고있다 시도했다 어떤 절차를 말해 보자.

여기에 스크린 샷을 첨부하고 있습니다.

What I want to share 내가 공유 할 무엇

메인 사이트

What is getting shared from the Beta site and the right one 베타 사이트와 오른쪽에서 공유지고 무엇 하나

내가 본에서 공유지고 무엇 What is getting shared from the Main Site 게시물이 페이스 북에서 공유되면 페이스 북은 이미지와 텍스트를 캐시에 보관하고 이미지와 텍스트가 바뀌어도 페이스 북 공유는 이전 ID를 유지합니다. 그것이 내가 직면하고있는 주요한 일이며 공유 후에 현재 텍스트와 이미지로 Facebook 캐시를 다시로드하여 해결하려고합니다.

+3

http://stackoverflow.com/questions/10285522/how-to-clear-facebooks-image-cache –

답변

2

林果 皞입니다. Facebook의 디버거 도구로 캐시를 새로 고침 할 수 있습니다. 그냥 당신이 공유 디버거 도구에 URL을 넣어.

디버거 도구로 이동하여 수동으로 페이지를 새로 고칠 필요가 없으므로 사이트에서이 스크립트를 사용할 수도 있습니다. 다음 코드는 자동으로 Facebook 페이지를 새로 고칩니다.

$.post(
    'https://graph.facebook.com', 
    { 
     id: '[PAGE_URL]', 
     scrape: true 
    }, 
    function(response){ 
     console.log(response); 
    } 
); 
0

나는이 문제를 해결하기 위해 노력하고 있습니다. 문제 해결 시간과 시간. 관련없는 주제에 관해 우리 프로그래머 중 한 명과 이야기 한 후에, 나는 장구 한 시도로 생각했다.

놀랍게도 많은 부분이 효과가있었습니다.

문제와 그것에 대한 내 솔루션 뒤에 이유입니다 :

당신이 (당신이 수동으로 변경하지 않는 한) 그 기사의 제목을 기반으로 링크를 생성 워드 프레스에 게시물을 초안. 내 기사의 제목에는 특수 문자가 포함되어 있지만 자동 생성 링크에는 이러한 특수 문자가 표시되지 않으며 공백을 바꾸는 하이픈 만 표시됩니다. 괜찮을까요? 잘못된! 어딘가에 워드 프레스 플랫폼의 메타 데이터와 코드에 삽입 된 특수 문자는 페이스 북이 링크 된 기사의 정보를 가져 오는 방식을 엉망으로 만든다. 특정 특수 문자가 하이퍼 링크를 무효화하기 때문에 이것은 문제입니다.

예를 들어

:

기사 제목 : R은 [eloaded] 워드 프레스 "퍼머"필드에 표시 자동 생성 된 하이퍼 링크 : http://www.example.com/reloaded 실제 워드 프레스 자동 생성 된 하이퍼 링크 : http://www.example.com/r[eloaded]

그 괄호가 무효화됩니다 링크와 페이스 북은 그것으로부터 어떠한 정보 (즉, 그림)도 끌어낼 수 없습니다.

솔루션 :

(1) 간단하게 수동으로 (이 기사의 제목을 변경하지 않습니다) 특수 문자를 포함하지 않는 무언가에 워드 프레스 하이퍼 링크 주소를 변경합니다.

(2) "업데이트"를 클릭하여 새 하이퍼 링크를 포함하도록 게시물을 변경하십시오.

(3) 워드 프레스 창에서 "캐시에서 제거"를 클릭

(4) 페이스 북 브라우저 창 새로 고침

(5) 당신의 기사에 대한 새 하이퍼 링크를 붙여 넣기

(6) 미리보기 이미지 및 정보로 Facebook 게시물을 즐기십시오.

Sidenote : 페이스 북에서 머리카락을 끌어 내지 마십시오. 그만한 가치가 없습니다. =)

0

나는 프로그램 적으로 캐시를 지우려고 많은 노력을했습니다. 페이스 북 디버거를 사용하여 캐시를 수동으로 지울 수 있습니다. 그러나, URL 다음에 어떤 매개 변수를두면 http://myurl.com/?fbrefresh=xyz처럼 작동했습니다. 그러나 캐시를 수동으로 지우는 것은 간단한 일이 아니며 매번 수행하지 않습니다.

마지막으로, 자바 스크립트로 작업했습니다. 위에서 언급 한 것처럼 url 뒤에 매개 변수를 넣으면 작동합니다.

if(window.location.search.indexOf("facebook_refresh") >= 0) { 
    //Feature check browsers for support 
    if(document.addEventListener && window.XMLHttpRequest && document.querySelector) { 
     //DOM is ready 
     document.addEventListener("DOMContentLoaded", function() { 
      var httpRequest = new XMLHttpRequest(); 
      httpRequest.open("POST", "https://graph.facebook.com", true); 

      httpRequest.onreadystatechange = function() { 
       if (httpRequest.readyState == 4) { 
        console.log("httpRequest.responseText", httpRequest.responseText); 
       } 
      }; 

      //Default URL to send to Facebook 
      var url = window.location; 

      //og:url element 
      var og_url = document.querySelector("meta[property='og:url']"); 

      //Check if og:url element is present on page 
      if(og_url != null) { 
       //Get the content attribute value of og:url 
       var og_url_value = og_url.getAttribute("content"); 

       //If og:url content attribute isn't empty 
       if(og_url_value != "") { 
        url = og_url_value; 
       } else { 
        console.warn('<meta property="og:url" content=""> is empty. Falling back to window.location'); 
       }    
      } else { 
       console.warn('<meta property="og:url" content=""> is missing. Falling back to window.location'); 
      } 

      //Send AJAX 
      httpRequest.send("scrape=true&id=" + encodeURIComponent(url)); 
     }); 
    } else { 
     console.warn("Your browser doesn't support one of the following: document.addEventListener && window.XMLHttpRequest && document.querySelector"); 
    } 
} 
관련 문제