2014-08-30 46 views
0

我想在我的Facebook帳戶分享發佈功能圖像。 爲此,我使用了Facebook分享按鈕代碼。 它會正常工作與我的一個模板頁面,但因爲我在single.php中使用此代碼,它無法正常工作,我無法確定原因。 我使用的代碼在我的single.php文件,如:功能圖片不能在facebook上分享single.php

//header 
<div id="fb-root"></div> 
<script>(function(d, s, id) { 
     var js, fjs = d.getElementsByTagName(s)[0]; 
     if (d.getElementById(id)) return; 
     js = d.createElement(s); js.id = id; 
     js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&appId=196109523902137&version=v2.0"; 
     fjs.parentNode.insertBefore(js, fjs); 
    }(document, 'script', 'facebook-jssdk'));</script> 

//to get feature image url 
$url = wp_get_attachment_url(get_post_thumbnail_id($_GET['id'])); 
$share_url = get_permalink(get_the_ID()); 
<a id="ref_fb" href="http://www.facebook.com/sharer.php?s= 
100&p[title]=<?php echo $title;?>&p[summary]=<?php echo $description;? 
>&p[url]=<?php echo urlencode($share_url);?>&`p[images][0]=<?php $url;?>" 
onclick="javascript:window.open(this.href, '', ``'menubar=no,toolbar=no,resizable=no 
,scrollbars=no,height=400,width=600');return false;">` 
<img src="<?php bloginfo('template_url')?>/_images/fb.png" alt=""/></a> 

我使用Facebook debuger的工具,我得到的圖像的一個警告類似, 「OG:圖像無法下載或太小「 因此,根據該警告,我添加了至少200x200px的大圖像,但即使無法獲得正確的圖像。

其他認爲我已經注意到在facebook的debuger, 我可以看到「當共享,這是什麼將被包括」在這部分我可以看到功能圖像很好,但不是從我的網頁。

我也注意到,特徵圖像已經顯示在我的debuger屏幕給出的下面部分中: 「基於原始標籤,我們構建了以下Open Graph屬性」。

還要注意「這是我們發現的原始標籤」找到的元標記爲

或者你也可以直接從看到這也是信息, https://developers.facebook.com/tools/debug/og/object/ 填充網址,如:http://www.novelwall.org/dev/bussiness-opportunities-client-success-post1/?id=1001&&tabName=content-1&&page=solu

+0

不,它不是任何'PDF'圖像,它只是一個像這樣的名稱和名稱,否則它是正常的JPG圖像。 – nim 2014-08-30 09:39:38

+0

不,它是一個PDF圖像。我可以在網站源代碼的標題中清楚地看到它。 '' – 2014-08-30 09:42:23

回答

0

在您的網站的<head>,您宣稱meta og:image爲'PDF'圖像。

相反,您需要聲明帖子的特色圖片。

一個很好的出發點是在這裏:Featured Image og:image

+0

我剛剛打電話給我函數從我的function.php這是聲明og:img標籤動態作爲後加載。它不是任何PDF圖像,它只是看起來像那樣的名稱,否則它是正常的JPG圖像。 – nim 2014-08-30 09:43:38

+0

看看你的網站的源代碼。第138行。它引用了一個圖像,它是'PDF'符號的縮略圖。 – 2014-08-30 09:44:45

+0

好吧,如果你認爲它是PDF圖像,現在我已經用另一個替換它。現在你可以看看這個,請。這是新的元標記值, nim 2014-08-30 09:52:24

0

@德福電腦DoctorL, 我已經把代碼這是它需要realted在我function.php和頭文件標記。但即使這樣也行不通。 我的代碼片斷,彷彿是function.php:

function insert_image_src_rel_in_head() 
{ 
    global $post; 
    if (!is_singular()) //if it is not a post or a page 
    return; 

    if(!has_post_thumbnail($post->ID)) 
    { 
      //the post does not have featured image, use a default image 
      $default_image="http://example.com/image.jpg"; //replace this with a default image on your server or an image in your media library 
      echo '<meta property="og:image" content="' . $default_image . '"/>'; 
    } 
    else 
    { 
      $thumbnail_src = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'medium'); 
      echo '<meta property="og:image" content="' . esc_attr($thumbnail_src[0]) . '"/>'; 
    } 
    echo ""; 
} 

add_action('wp_head', 'insert_image_src_rel_in_head', 5); 

的,因爲我們看到了OG:在標題圖片meta標籤。

+0

從標題中刪除所有'og:image'引用,並將以下內容放入。<?php $ fb_image = wp_get_attachment_image_src(get_post_thumbnail_id(get_the_ID()),'thumbnail'); ?> <?php if($ fb_image):?> 」/> <?php endif; ?> – 2014-08-30 10:15:49

+0

我試過你說的,但即使它不能在facebook共享彈出窗口中顯示多個圖像而不是一個功能圖像。 – nim 2014-08-30 10:24:57