[WordPress] Fix Missing required field entry-title,Update,hCard author จาก Tools “Google Structured Data testing tools”

ช่วงหยุดยาวปีใหม่ ผมได้ทำหลายๆอย่างเกี่ยวกับ Blog ครับ โดยตอนที่จะทำสถิติของ Blog ในปี 2014 บังเอิญไปสังเกตุข้อมูลใน Google Web Master Tools ส่วนของ Search Appearance >> Structured Data แล้วเจอ Error ถึง 203 รายการนี่ มันผิดปกตินะ (แต่ผมดองไว้เกือบปี ถึงมาแก้ไข 555) ก่อนที่เข้าไปถึงวิธีแก้ลองมาำความเข้าใจกับ Structured Data กันก่อนว่ามัน คือ อะไร แล้วเอาไปใช้ทำอะไรกันก่อนครับ

เจ้าตัว Structured Data คือ ข้อมูลที่มีโครงสร้างมีรูปแบบ เพื่อบอกให้ Bot ของ Search เก็บข้อมูล และเข้าใจได้ว่าข้อมูลที่ได้โพสไว้เป็น Blog ด้าน IT หรือ Review อาหาร เป็นต้น ถ้าพูดในภาษาไฮโชหน่อยมันเป็นการทำ SEO (Search Engine Optimization) รูปแบบหนึ่งครับ โดย Google ได้กำหนด Schema ไว้แล้วว่าเว็บของเราควรมี Structured Data อะไรบ้าง แต่เราไม่ต้องสนใจมันหรอกว่ามีรายละเอียดอย่างไร ถ้าอยากรู้สามารถเข้าไปใช้ Tools ของ Google ครับ เอาไว้ตรวจสอบว่าอันไหนมันขาดไปครับ เดี๋ยวถ้าอธิบายรายละเอียดแต่ละตัวไปยาวๆแน่ๆครับ ขอเปิดอีก Blog และกัน ถ้าว่างนะ)

ย้อนกลับมาที่ WordPress บ้างว่ามี Structured Data หรือไม่ ? คำตอบ คือ มีครับ โดยจะแทรกอยู่ใน Theme ของ WordPress ครับ แต่จะมีข้อมูลครบตามที่ Google กำหนดไว้ หรือไม่ก็อีกเรื่องนึงครับ (ปกติถ้าเป็น Theme ที่เสียตังค์ ทาง Developer มักจะทำเรียบร้อย แล้วเพิ่ม Feature SEO Support ฮ่าๆ)

คราวนี้กลับมาดูที่ Theme เราบ้างหละว่า Support หรือไม่ครับ โดยใช้ Tools ของ Google ครับ สำหรับเว็บ Blog ของผมมีปัญหา 1 เรื่อง Error: Missing required field “updated”. ครับ แต่ไหนๆก็จะเขียน Blog แล้ว ผมเลยของเขียน Error ที่มักพบกัน 3 ตัว ได้แก่

  • Error: Missing required field “entry-title”.
  • Error: Missing required field “updated”.
  • Error: Missing required hCard “author”.

การแก้ไข Error ทั้งสามจุดนี้สามารถแก้ไขได้จาก Theme ของ WordPress ซึ่งส่วนใหญ่ Code ที่เราต้องแก้ไขมักอยู่ในไฟล์ single.php โดย Error แต่ละแบบสามารถแก้ไขได้ ดังนี้ครับ

  • Fix Error: Missing required field “entry-title”.
    “entry-title” คือ หัวข้อของ Content
    แก้ไขโดย หา Code ที่มี Pattern ดังนี้

    [php]<h1 class="title single-title"><?php the_title(); ?></h1>[/php]

    จากนั้นปรับแก้ Code เป็น

    [php]<h1 class="title single-title entry-title"><?php the_title(); ?></h1>[/php]

  • Fix Error: Missing required field “updated”.
    “updated” คือ เวลาที่ Update Content ล่าสุดครับ
    แก้ไขโดย หา Code ที่มี Pattern ดังนี้

    [php]<span class="post_date"><?php the_time('j F,Y'); ?></span>[/php]

    จากนั้นปรับแก้ Code เป็น

    [php]<span class="post_date date updated"><?php the_time('j F,Y'); ?></span>[/php]

  • Error: Missing required hCard “author”.
    “author” คือ คนเขียน Content
    แก้ไขโดย หา Code ที่มี Pattern ดังนี้

    [php]<span class="theauthor"><?php the_author(); ?></span>[/php]

    จากนั้นปรับแก้ Code เป็น

    [php]<span class="vcard author">
    <span class="fn"><?php the_author(); ?></span>
    </span>[/php]

หลายคนอาจจะบอกว่า เปิดไฟล์แก้แล้วหาจุดที่แก้ไม่เจอ ให้กลับไปสำรวจ Content ในเว็บครับ หาส่วนที่มีความหมายคล้ายกับสิ่งที่ Error Message ต้องการ แล้วใน Tools อย่าง Firebugs, Developer Tools (Chrome) หรือ Inspect Element (Firefox) จากนั้นก็ โมเพิ่มใส่ attribute ลงไปใน class เลยครับ และทดสอบผ่าน Tools ของ Google ครับ จบแล้วครับสำหรับ Blog ในตอนนี้ ตอนหน้าเป็นการแก้ไข Theme จริงที่มีปัญหาของ Blog ผมเองครับ ที่ไม่สามารถแก้ไขตรงๆ ตาม Solution ที่ผมแก้ให้คนอื่น

 

 


Discover more from naiwaen@DebuggingSoft

Subscribe to get the latest posts to your email.