Facebook Open Graph ไม่ล้างแคช


174

ฉันมีปัญหากับเมตาแท็กด้วย Open Graph ดูเหมือนว่า Facebook กำลังแคชค่าเมตาแท็กเก่าของฉัน ค่าเก่าสำหรับแอททริบิวต์og:titleและog:urlยังคงใช้อยู่แม้ว่าฉันจะเปลี่ยนไปแล้วก็ตาม

ฉันวิ่ง Lint บนหน้าหนึ่งในเว็บไซต์ของฉันและสิ่งนี้ก็ปรากฏขึ้น

ภาพหน้าจอของ Facebook Open Graph lint

โปรดสังเกตว่ามีสองค่าสำหรับog:titleและog:urlและค่าสุดท้ายมีค่า อย่างไรก็ตามสองรายการสุดท้ายเป็นรายการ OLDที่ฉันใช้สำหรับไซต์นี้ ขณะนี้ฉันกำลังใช้เมตาแท็กเหล่านี้ (คุณสามารถตรวจสอบว่าคุณดูซอร์สของ HTML หรือไม่):

<meta property="og:title" content="Smart og rummelig pusletaske fra Petit Amour med god plads til alt &#8211; værdi 1.099 kr &#8211; køb nu kun 599 kr   "/>
<meta property="og:description" content="Pinq.dk - Det gode liv for det halve"/>
<meta property="og:type" content="product"/>
<meta property="og:url" content="http://pinq.dk/tilbud/landsdaekkende/lissy/"/>
<meta property="og:image" content="http://pinq.dk/wp-content/themes/pinq/images/logo-top.png"/>
<meta property="og:site_name" content="Pinq" />
<meta property="fb:app_id" content="161840830532004" />

ทำไม Facebook แคชog:titleและog:url? มีใครประสบปัญหาเดียวกันหรือไม่


ฉันคิดว่านี่เป็นเหมือนประวัติศาสตร์หรือไม่? ฉันเห็นว่า FB ได้รับข้อมูลล่าสุดtitleและurlเพื่อคุณ (ในตารางข้อมูล) ทำไมต้องกังวล
ifaour

ปัญหาคือ facebook Like count ยังคงอยู่สำหรับ OLD og: url ( pinq.dk ) ซึ่งมีประมาณ 200+ เมื่อเทียบกับการนับpinq.dk/tilbud/landsdaekkende/lissy
Ardee Aram

และฉันไม่คิดว่านี่เป็นประวัติศาสตร์ มี og: url ถูกตั้งค่าเป็นสองเท่า (ควรจะเป็น) เป็นคนสุดท้ายที่ได้รับชัยชนะ อย่างไรก็ตามค่าเก่าที่ถูกลบไปแล้วจากรหัสยังคงมีผลกับค่าเมตา
Ardee Aram

3
มาอ่านเรื่องนี้กันดีกว่า โดยเฉพาะอย่างยิ่งการแก้ไข Meta Tagsส่วน ฉันไม่แน่ใจว่าเกี่ยวข้องหรือไม่ แต่อาจช่วยได้ จะตรวจสอบเรื่องนี้ในภายหลังขอโทษเพื่อน!
ifaour

2
นั่นอาจจะเป็น "คุณสามารถอัปเดตแอททริบิวของหน้าของคุณโดยอัปเดตแท็ก <meta> ของหน้าโปรดทราบว่า og: ชื่อและ og: ประเภทสามารถแก้ไขได้ในขั้นต้นเท่านั้น - หลังจากหน้าของคุณได้รับ 50 ไลค์ชื่อจะคงที่ ประเภทจะได้รับการแก้ไขคุณสมบัติเหล่านี้ได้รับการแก้ไขเพื่อหลีกเลี่ยงผู้ใช้ที่น่าแปลกใจที่ชอบหน้าแล้วการเปลี่ยนชื่อหรือแท็กประเภทหลังจากถึงขีด จำกัด เหล่านี้จะไม่ทำอะไรเลยหน้าของคุณจะยังคงชื่อเดิมและประเภท " ขอบคุณ ifaour!
Ardee Aram

คำตอบ:


304
  1. ไปที่http://developers.facebook.com/tools/debug
  2. ป้อน URL ตามด้วย fbrefresh=CAN_BE_ANYTHING

ตัวอย่าง:

  1. http://www.example.com?fbrefresh=CAN_BE_ANYTHING
  2. http://www.example.com?postid=1234&fbrefresh=CAN_BE_ANYTHING
  3. หรือเยี่ยมชม: http://developers.facebook.com/tools/debug/og/object?q=http://www.example.com/?p=3568&fbrefresh=89127348912

เมื่อคืนฉันมีปัญหาเดียวกันและฉันได้รับการแก้ไขปัญหานี้จากบางเว็บไซต์

Facebook บันทึกภาพย่อขนาดแคชของคุณ มันจะไม่รีเฟรชแม้ว่าคุณจะลบภาพ / ภาพออกจากเซิร์ฟเวอร์ของคุณ แต่ Facebook อนุญาตให้คุณรีเฟรชโดยใช้fbrefresh

ฉันหวังว่านี่จะช่วยได้.


30
พารามิเตอร์fbrefreshอาจไม่จำเป็นเนื่องจากเครื่องมือดีบั๊กจะรีเฟรชวัตถุหากไม่มี
alexandru.topliceanu

7
มันไม่ได้ล้างแคชใด ๆ เว้นแต่คุณจะใช้พารามิเตอร์นี้
อายุKontacı

26
ไม่จริงการเพิ่มพารามิเตอร์นั้นไม่แตกต่างกับการทำงานของเครื่องมือดีบั๊ก - ไม่มีการอ้างอิงพารามิเตอร์ใด ๆ ในเครื่องมือดีบั๊กหรือรหัสมีดโกน
Igy

7
ไม่จำเป็นต้องใช้พารามิเตอร์ fbrefresh แต่คุณจำเป็นต้องเข้าสู่ระบบในฐานะผู้ดูแลระบบของแอพ FB ที่เป็นเจ้าของโดเมนมิฉะนั้นแคชจะไม่ถูกอัปเดต
เฟลิเป้บราห์ม

3
ฉันสามารถตรวจสอบได้ว่าการเพิ่มพารามิเตอร์ fbrefresh นั้นเหมาะกับฉันหรือไม่ ถ้าฉันแบ่งปัน URL มันใช้ข้อมูลเก่าแม้ว่าผู้ดีบักเกอร์จะแสดงข้อมูลที่ถูกต้อง แต่เมื่อฉันใช้ดีบักเกอร์ด้วยพารามิเตอร์ fbrefresh แล้วแม้แต่การแชร์ปกติก็ใช้ข้อมูลที่ถูกต้อง
ไอศครีม

82

คำถามที่โหวตมากที่สุดค่อนข้างล้าสมัย:

ตัวเลือกเหล่านี้มีเพียง 2 ตัวเลือกที่ควรใช้ ณเดือนพฤศจิกายน 2557 :

สำหรับนักพัฒนาที่ไม่ใช่

  1. ใช้เครื่องมือดีบักเกอร์ FB: https://developers.facebook.com/tools/debug/og/object
  2. วาง URL ที่คุณต้องการบันทึกใหม่ (ตรวจสอบให้แน่ใจว่าคุณใช้ URL เดียวกันกับที่รวมอยู่ในแท็ก og: url ของคุณ)
  3. คลิกปุ่มดึงข้อมูลขูดอีกครั้ง

สำหรับนักพัฒนา

  1. โทรหา GET โดยทางโปรแกรมไปยัง URL นี้: https://graph.facebook.com/?id=THYOUR_URL_HEREOWN&scrape=true (ดูที่: https://developers.facebook.com/docs/games_payments/takingpayments#scraping )
  2. ตรวจสอบให้แน่ใจว่าแท็ก og: url ที่รวมอยู่ในส่วนหัวของหน้านั้นตรงกับที่คุณกำลังผ่าน
  3. คุณสามารถแยกการตอบสนองของ json เพื่อรับจำนวนแชร์ของ URL นั้น

ข้อมูลเพิ่มเติมเกี่ยวกับการอัปเดตรูปภาพ

  • หาก URL og: image ยังคงเหมือนเดิม แต่ภาพมีการเปลี่ยนแปลงจริง ๆ แล้วมันจะไม่ถูกปรับปรุงหรือถูกแครปเปอร์ของ Facebook แม้จะทำตามข้างต้น (แม้ผ่าน a? last_update = [TIMESTAMP] ที่ส่วนท้ายของ URL รูปภาพไม่ทำงานสำหรับฉัน)
  • วิธีแก้ปัญหาที่มีประสิทธิภาพเพียงอย่างเดียวสำหรับฉันคือการกำหนดชื่อใหม่ให้กับรูปภาพ

หมายเหตุเกี่ยวกับการอัปเดตรูปภาพหรือวิดีโอในโพสต์ก่อนหน้านี้:

  • เมื่อคุณเรียกตัวดีบั๊กเกอร์เพื่อยกเลิกการเปลี่ยนแปลงในแท็ก og: หน้าเพจของคุณการแชร์ Facebook ก่อนหน้านี้ทั้งหมดของ URL นั้นจะยังคงแสดงภาพ / วิดีโอเก่า ไม่มีวิธีอัปเดตโพสต์ก่อนหน้าทั้งหมดและเป็นวิธีนี้โดยการออกแบบเพื่อความปลอดภัย มิเช่นนั้นจะมีใครบางคนแกล้งทำเป็นว่าผู้ใช้แบ่งปันบางสิ่งที่เขา / เธอไม่ได้ทำ

ดูเหมือนจะไม่ส่งคืนจำนวนการแชร์สำหรับหน้าของฉัน ฉันอ่านในโพสต์นี้: " stackoverflow.com/questions/3581488/… " ที่คุณต้องมีปุ่ม Facebook / แชร์บนหน้าเพื่อให้การส่งออกของจุดสิ้นสุดนี้มีข้อมูลใด ๆ
WillyBurb

ตรวจสอบให้แน่ใจว่าแท็กอยู่ในส่วนหัวและไม่ใช่ส่วนของหน้าเว็บของคุณ - โปรแกรมดีบั๊กจะเตือนคุณเกี่ยวกับสิ่งนี้ แต่จะถูกละเว้น (ใช่ฉันรู้ว่าคุณพูดถึงเรื่องนี้ฉันแค่ต้องการเน้นประเด็น)
Simon_Weaver

@Oriol Esteban คุณหาวิธีอื่นในการอัปเดตรูปภาพหรือไม่
Petr

3
@Oriol เมื่อฉันพยายามทำสิ่งนี้เมื่อเร็ว ๆ นี้ฉันต้องโพสต์โพสต์ไปที่ URL นี้ (ตามdevelopers.facebook.com/docs/sharing/opengraph/ ...... )
เกลน T

1
แนวคิดใด ๆ เกี่ยวกับวิธีการลบแคชเมื่อเปลี่ยน URL ของ og: video ????? ฉันแก้ไขวิดีโอเล็กน้อยแล้วเปลี่ยน URL และ Facebook แสดงเวอร์ชั่นเก่าต่อไป! เห็นได้ชัดว่าฉันมีรอยขีดข่วนในการแก้ปัญหา ... นี่ทำให้ฉันบ้า!
RayOnAir

19

หากคุณมีหลายหน้าและไม่ต้องการรีเฟรชด้วยตนเอง - คุณสามารถทำได้โดยอัตโนมัติ

ให้บอกว่าคุณมีหน้าโปรไฟล์ผู้ใช้พร้อมรูปถ่าย:

$url = 'http://'.$_SERVER['HTTP_HOST'].'/'.$user_profile;
$user_photo = 'http://'.$_SERVER['HTTP_HOST'].'/'.$user_photo;

<meta property="og:url" content="<?php echo $url; ?>"/>
<meta property="og:image" content="<?php echo $user_photo; ?>"

เพียงเพิ่มลงในหน้าของคุณ:

// with jQuery
$.post(
    'https://graph.facebook.com',
    {
        id: '<?php echo $url; ?>',
        scrape: true
    },
    function(response){
        console.log(response);
    }
);

// with "vanilla" javascript
var fbxhr = new XMLHttpRequest();
fbxhr.open("POST", "https://graph.facebook.com", true);
fbxhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
fbxhr.send("id=<?php echo $url; ?>&scrape=true");

นี่จะรีเฟรชแคช Facebook หากคุณใช้โซลูชัน jQuery ให้ดูที่ "การตอบกลับ" ใน console.log - คุณจะพบว่ามีฟิลด์ "updated_time" และข้อมูลที่เป็นประโยชน์อื่น ๆ


นี่เป็นทางออกที่สอดคล้องกันเพียงอย่างเดียวที่จะทำให้ภาพแคชสำหรับฉัน การใช้fbrefreshไม่ได้ทำอะไรเพื่อปัญหาของฉัน
hellatan

สวัสดีฉันลองใช้วิธีนี้ แต่ฉันได้รับข้อผิดพลาดเอาท์พุท $ this-> ('<script type = "text / javascript"> $ (เอกสาร). ready (function () {$ .post (" กราฟ .facebook.com ", {id:" '. $ this-> content [' canonical '].' ", scrape: true}, ฟังก์ชัน (ตอบกลับ) {console.log (การตอบกลับ);});}); <) / script> ');
monsterboy

ฉันได้รับข้อผิดพลาดต่อไปนี้ Uncaught ReferenceError: $ ไม่ได้ถูกกำหนด (ฟังก์ชั่นที่ไม่ระบุชื่อ) ช่วยเหลือใด ๆ จะได้รับการชื่นชมมาก :)
monsterboy

@monsterboy $ - นี่คือทางลัดไปยังฟังก์ชั่น jQuery $ .post () เหมือนกับ jQuery.post () ในการใช้งานไลบรารี่นี้คุณจะต้องนำเข้าก่อน: <script src = " code.jquery.com/jquery-latest.min.js " type = "text / javascript "> </script>
Zhorzh Alexandr

@ZhorzhAlexandr ขอบคุณสำหรับคำตอบของคุณ แต่ฉันใช้ wordpress และฉันมีหนึ่งโพสต์ที่สามารถแก้ไขได้ทุกวันดังนั้นฉันจะใช้สคริปต์นี้ทุกครั้งก่อนแบ่งปันได้อย่างไร
Antwan

12

รูปขนาดย่อของ OG ดูเหมือนจะไม่รีเฟรชแม้ว่าจะผ่านตัวแปร fbrefresh ในการอัปเดตสิ่งนี้โดยไม่ต้องรอการล้างอัตโนมัติคุณจะต้องเปลี่ยนชื่อไฟล์ของค่าเมตาแท็กที่เกี่ยวข้องและรีเฟรช


ตามคำตอบอื่น ๆ คุณสามารถบังคับให้รีเฟรชโดยใช้fbrefreshพารามิเตอร์ URL
Sam Mussmann

1
@SamMussmann ดูเหมือนว่าจะเป็นเช่นนี้ (หากเป็นเช่นนั้น) จะรีเฟรชแคชของเนื้อหาแท็ก OG ไม่ใช่รูปภาพจริงที่พบได้จาก URL ของเนื้อหาที่กล่าวถึง EG: คุณรักษาแท็ก OG ไว้เหมือนเดิม แต่เปลี่ยนไฟล์รูปภาพ (คงชื่อเดิมไว้) และรูปภาพนั้นจะยังคงอยู่ในแคช ฉันไม่พบวิธีล้างข้อมูลนี้นอกเหนือจากที่ Seb บอกไว้คุณต้องเปลี่ยนชื่อไฟล์ภาพ
นิค M

@Nick M คุณพบวิธีแก้ไขปัญหาอื่น ๆ หรือไม่?
Petr

แก้ไข ฉันแก้ไขด้วยการเพิ่ม? t = TIMESTAMP ไปยัง URL รูปภาพของฉันในสคริปต์ PHP ซึ่งเราจะสร้างแท็ก สำหรับตอนนี้มันใช้งานได้
Petr

เพิ่งลองเปลี่ยนชื่อไฟล์ภาพและอัปเดตค่าเมตาแท็กก็ใช้งานไม่ได้
Antonio Ooi

7

ฉันมีปัญหาเดียวกันกับที่ใช้ og:imageหลายครั้งที่พยายามเปลี่ยนชื่อไฟล์หรือแคช FB ที่ชัดเจนไม่สามารถใช้งานได้ผ่านทาง facebook debugger หรือการทดสอบผ่านบัญชีจริง

แนวทาง Facebook ใหม่ระบุขนาดภาพควรเป็น 1200 x 630 หรือมีอัตราส่วนภาพนี้ดูเหมือนว่าผิดสิ่งเดียวที่ใช้ได้ผลสำหรับฉันคือการใช้รูปภาพที่มีขนาดเป็นสี่เหลี่ยมจัตุรัสตารางขนาด

แก้ไข * อีกไม่กี่ชั่วโมงฉันกลับไปใช้ 1200 x 630 และมันใช้งานได้อย่างวิเศษมันวิเศษมาก

ฉันเปลี่ยนชื่อไฟล์เป็น f * ^ * kfacebook.jpg ไม่แน่ใจว่าช่วยได้ แต่รู้สึกดี


6

โดยทั่วไปคำตอบคือความอดทน;)

ฉันตรวจสอบ Linter เมื่อเช้านี้และ og: ชื่อและ og: url แสดงอย่างถูกต้องโดยไม่มีค่าซ้ำซ้อน ฉันเดาว่า FaceBook จะล้างแคชโดยอัตโนมัติในบางช่วงเวลา ฉันต้องรอ

ป้อนคำอธิบายรูปภาพที่นี่


จากFacebook สำหรับนักพัฒนา , แคชวัตถุหมดอายุทุก 7 วันและ Facebook โดยอัตโนมัติจะเก็บข้อมูลอีกครั้งวัตถุเมื่อมีการใช้งานต่อไป
Venugopal

4

เราเพิ่งพบเจอสิ่งนี้เนื่องจากปรากฎว่าเราไม่ขยิบ URL ที่ถูกต้องเนื่องจาก URL ที่แท้จริงมีสตริงการสืบค้น (duh หน้าอื่น ๆ ที่เกี่ยวข้องกับบอท)

http://example.com/

! ==

http://example.com/?utm_campaign=foo

linter จะ recache หน้าของคุณคุณจะได้ไม่ต้องรอ


4

ใช่, Facebook โดยอัตโนมัติล้างแคชทุก 24 ชั่วโมง: ที่จริง Facebook scrapes หน้าและการปรับปรุงแคชทุก 24 ชั่วโมงhttps://developers.facebook.com/docs/reference/plugins/like/#scraperinfo


ตามเอกสารปัจจุบันระยะเวลาแคชคือ 30 วัน
patrickhawley

1
ลิงก์ที่อัปเดตสำหรับข้อมูลนี้ - developers.facebook.com/docs/plugins/faqs - คุณสามารถตั้งค่าให้ขูดบ่อยขึ้น
Mousey

4

Ooook ในที่สุดมันก็ช่วยได้ (ฉันใช้ IP.Board) สิ่งที่ฉันต้องทำคือ:

  1. เปลี่ยน URL ของ og: รูปภาพบนเว็บไซต์ของฉัน (การกำหนดค่าทั่วไป)
  2. ลองใช้วิธีนี้กับ? fbrefresh = 1154464gd56

ขอบคุณผู้เขียนหัวข้อนี้!

แก้ไข: มีอะไรอีกที่คุณต้องจำเกี่ยวกับข้อกำหนดของภาพ สำหรับตอนนี้ (มกราคม 2013) คือ: - อย่างน้อย 200 px ทั้งสองทิศทาง - อัตราส่วนสูงสุด 3: 1



3

สิ่งหนึ่งที่จะเพิ่ม url เป็นกรณีๆ ไป โปรดทราบว่า:

apps.facebook.com/ HELLO

แตกต่างในสายตาของ linter แล้ว

apps.facebook.com/ สวัสดี

ตรวจสอบให้แน่ใจว่าใช้ URL ไซต์ที่แน่นอนซึ่งป้อนไว้ในการตั้งค่านักพัฒนาซอฟต์แวร์สำหรับแอป linter จะส่งคืนคุณสมบัติเป็นอย่างอื่น แต่จะไม่รีเฟรชแคช


3

ฉันขอโทษผู้คน แต่คำตอบที่ถูกต้องคือ:

ไม่มีวิธีพิสูจน์คนโง่ที่จะอัปเดตกราฟแบบเปิด og: url รูปภาพพร้อมผลทันที มันถูกแคชจนกว่าจะมีการอัพเดต fb (ตามรายงานทุก 24 ชั่วโมง)

นี่คือสิ่งที่ผู้อื่นได้รับรายงานให้ทำงาน แต่ฉันประสบความสำเร็จเป็นศูนย์กับพวกเขา

  • การเลือก "ดึงข้อมูลขูดใหม่"
  • การเปลี่ยนชื่อไฟล์ภาพที่แท้จริงและ / หรือการลบต้นฉบับ
  • การเพิ่มสตริงการสืบค้นให้กับ URL ของภาพโดยการผนวก PHP TIMESTAMP หรืออะไรก็ได้
  • การเพิ่มสตริงข้อความค้นหา "... yoursite.com/?fbrefresh=anything" ให้กับ url การดึงข้อมูลดีบักเกอร์
  • การเลือกลิงค์กราฟ API ที่ด้านล่างของหน้า og dev
  • การเลือกที่จะดูสิ่งที่มีดโกนเห็น - ดูเหมือนจะไม่ขอข้อมูลขูดในเวลาจริง แต่ก็ยังแสดง URL รูปภาพที่แคชไว้แม้ว่าไฟล์นั้นจะไม่มีอยู่อีกต่อไป

การตรวจสอบรหัสของคุณเป็นวิธีที่ยืนยันได้เสมอว่าไม่มีปัญหากับแคชของเบราว์เซอร์หรือบริการแคชบางอย่าง หากข้อมูลเมตาจะขึ้นอยู่กับวันที่ในรหัสของคุณและคุณได้พยายามทั้งหมดข้างต้น (ยกเว้นกรณีที่ข้อเสนอแนะอื่นมาเพื่อการบรรลุผล) คำตอบที่ถูกต้องคือคุณสามารถทำอะไร แต่รอ


1

ฉันพบว่าหากภาพของคุณเป็น 72dpi มันจะทำให้คุณมีข้อผิดพลาดขนาดภาพ ใช้ 96dpi แทน หวังว่านี่จะช่วยได้


1
  1. ไปที่http://developers.facebook.com/tools/debug

  2. วาง URL ของหน้าและคลิกดีบั๊ก หากเว็บไซต์ของคุณใช้ชื่อแทน url ตรวจสอบให้แน่ใจว่าคุณใช้ URL เดียวกับที่ Facebook ใช้สำหรับหน้าเว็บที่คุณแบ่งปัน (ตัวอย่าง: ใน Drupal ใช้เส้นทาง node / * แทนชื่อแทนหากหน้านั้นถูกแชร์ผ่าน url นั้น)

  3. คลิกในส่วน "แชร์ตัวอย่าง" ในลิงก์ "ดูสิ่งนี้ในกล่องโต้ตอบแชร์"

ทางออกที่ดีที่สุด! ขอบคุณ
MeV

1

เอกสารสำหรับนักพัฒนาของ Facebook ระบุว่าคุณสมบัติกรรมสิทธิ์มีข้อยกเว้น:

เมื่อ 50 การกระทำ (กดไลค์แชร์และความคิดเห็น) เชื่อมโยงกับวัตถุคุณจะไม่สามารถอัปเดตชื่อได้

https://developers.facebook.com/docs/sharing/opengraph/using-objects#update


0

มีประสบการณ์ที่คล้ายกัน ลิงก์เว็บไซต์แสดง 404 ในหน้าตัวอย่างที่ facebook สร้างขึ้น เปลี่ยนข้อมูลเมตาของ og: url ผิด เราได้แก้ไขแล้วเมื่อไม่กี่วันก่อน แต่ก็ยังเห็น 404 ในหน้าตัวอย่าง เราใช้เครื่องมือนี้ที่https://developers.facebook.com/tools/debug/และบังคับให้รีเฟรช (ไม่ต้องต่อท้ายพารามิเตอร์ใด ๆ ) ในกรณีของเรา Facebook ไม่รีเฟรชแคชหลังจาก 24 ชั่วโมง แต่เครื่องมือช่วยบังคับมัน


0

มันคือแคชและมันจะรีเฟรชนั่นคือสิ่งที่แคชจะต้องทำเป็นครั้งคราว ดังนั้นในที่สุดการรอจะใช้งานได้ แต่ในบางครั้งคุณต้องทำเร็วกว่า การเปลี่ยนชื่อไฟล์ใช้งานได้


แล้วทำไม -1 ไม่มีใครตอบคำตอบที่ง่ายที่สุดในการเปลี่ยนชื่อไฟล์และมันใช้งานได้ไม่เหมือนคำตอบอื่น ๆ (+/- 5) ที่โหวตว่าไม่หรืออย่างน้อยพวกเขาก็ทำได้ แต่ล้าสมัยแล้ว แน่นอนถ้าคุณไม่สามารถเปลี่ยนชื่อไฟล์ด้วยเหตุผลบางอย่างคำตอบนี้จะไม่ช่วยคุณ
Srneczek

0

ฉันมีปัญหานี้ด้วย มีดโกนแสดงข้อมูลที่ถูกต้อง แต่ URL การแชร์ยังคงมีข้อมูลเก่าอยู่

วิธีที่ฉันได้รับสิ่งนี้คือการใช้วิธีฟีดแทนการแชร์แล้วเติมข้อมูลด้วยตนเอง (ซึ่งไม่ได้เปิดเผยด้วยวิธีการแชร์)

บางสิ่งเช่นนี้

shareToFB = () => {
    window.FB.ui({
    method: 'feed',
    link: `signup.yourdomain.com/?referrer=${this.props.subscriber.sid}`,
    name: 'THIS WILL OVERRIDE OG:TITLE TAG',
    description: 'THIS WILL OVERRIDE OG:DESCRIPTION TAG',
    caption: 'THIS WILL OVERRIDE THE OG:URL TAG'
  });
};

0

แก้ปัญหาได้ง่ายจริงๆ ผ่านการทดสอบและทำงาน คุณเพียงแค่ต้องสร้าง URL ใหม่เมื่อคุณอัปเดตเมตาแท็กของคุณ ง่ายพอ ๆ กับการเพิ่ม "& cacheBuster = 1" ลงใน url ของคุณ หากคุณเปลี่ยนเมตาแท็กเพียงแค่เพิ่ม "& cacheBuster = 2"

URL ดั้งเดิม

www.example.com

URL เมื่ออัปเดต og เมตาแท็ก:

www.example.com?cacheBuster=1

URL เมื่ออัปเดตแท็ก og meta อีกครั้ง:

www.example.com?cacheBuster=2

Facebook จะถือว่าเหมือน URL ใหม่และรับข้อมูล meta ใหม่


0

หลายปีต่อมาและนี่ยังเป็นปัญหาที่พบบ่อย แต่ไม่ได้เป็นแคชของเฟสบุ๊คเสมอ: มันเป็นข้อผิดพลาดของมนุษย์บ่อยมาก (อนุญาตให้ฉันทำอย่างละเอียด)

OG: TYPE มีผลต่อการขูดภาพของคุณ:

  1. https://ogp.me/#type_article ไม่เหมือนกับ https://ogp.me/#type_website

โปรดทราบว่าเว็บไซต์ og: type = จะทำให้ / sub-pages / ของ url นั้นกลายเป็น "canonical" ซึ่งหมายความว่าคุณจะมีปัญหาในการทำให้รูปภาพของคุณอัปเดตโดยใช้มีดโกนไม่ว่าคุณจะทำอะไร

พิจารณา "สมมติฐานและข้อผิดพลาดทั่วไป" นี้

- <meta property="og:type" content="website" />=> https://www.example.org (หลัก)
- <meta property="og:type" content="website" />=> https://www.example.org/sub-page/
- <meta property="og:type" content="website" />=> https://www.example.org/sub-page/child -2 /
- Ergo: /sub-page/และ/child-2/จะสืบทอดog:imageพ่อแม่

สิ่งเหล่านี้ไม่ใช่ "เว็บไซต์ทั้งหมด", 1 เป็นเว็บไซต์, อื่น ๆ เป็นบทความ

หากคุณทำเช่นนั้น Facebook จะคิดว่าสิ่งเหล่านี้ทั้งหมดเป็นที่ยอมรับและจะนำภาพแรกมาสู่ภาพทั้งหมด (ลองคุณจะเห็น) - ถ้าคุณตั้งค่า og: url ให้เป็นรูทหรือโดเมนหลักของคุณคุณได้บอกว่าเฟซบุ๊กเป็นที่ยอมรับ (มีเหตุผลที่ดีสำหรับสิ่งนั้น แต่เป็นหัวข้อที่ไม่เกี่ยวข้อง)

พิจารณาโซลูชันนี้ (ซึ่งเป็นสิ่งที่คนส่วนใหญ่ "ต้องการ" จริงๆ)

- <meta property="og:type" content="article" />=> https://www.example.org/sub-page/
- <meta property="og:type" content="article" />=> https://www.example.org/sub-page/child-2/

ถ้าคุณทำอย่างนั้นตอนนี้ Facebook จะให้ปัญหากับการขูดภาพใหม่ของคุณ

ในการปิดใช่บัสเตอร์แคช, vars สุ่มเปลี่ยน URL และข้อเสนอแนะที่นี่สามารถทำงานได้ แต่พวกเขาจะดูเหมือนว่า"วูดูไม่ต่อเนื่อง"ถ้าog:typeไม่ได้ระบุอย่างถูกต้อง

PS: โปรดจำไว้ว่าแคช CDN หรือเซิร์ฟเวอร์จะให้บริการกับมีดโกนของ Facebook แม้ว่าคุณจะ "คิด" คุณจะเห็นเวอร์ชันล่าสุด (ฉันจะไม่ใช้เวลานี้นอกเหนือจากการชี้ให้เห็นว่ามันจะเสียเวลาจำนวนมหาศาลของคุณถ้าไม่ได้ตรวจสอบสองครั้ง)


0

ฉันมีปัญหาที่แตกต่างกัน แต่มีปัญหาคล้ายกันกับ Facebook เมื่อเร็ว ๆ นี้และพบว่าหน้า scraper / debug ที่กล่าวถึงนั้นไม่ปรากฏว่าอ่านหน้าใด ๆ ได้อย่างครบถ้วน คุณสมบัติเมตาของฉันสำหรับ Open Graph อยู่ในส่วนหัวเพิ่มเติมและมีดโกนจะแจ้งให้ฉันทราบว่าข้อมูลจำเพาะของภาพไม่ถูกต้องและจะใช้เวอร์ชันที่แคชไว้โดยไม่คำนึงถึง ฉันย้ายแท็กกราฟเปิดขึ้นในโค้ดใกล้กับส่วนบนสุดของหน้าจากนั้นทุกอย่างทำงานได้อย่างสมบูรณ์แบบทุกครั้ง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.