Jauh sebelumnya, di dunia IT terutama yang berkaitan dengan dunia programming suduah dikenal istilah struktur data, saat ini struktur data ternyata sudah dilibatkan juga untuk memperbaiki struktur kode halaman web, istilah ini sering disebut dengan schema markup.

Tujuannya menyisipkan kode schema markup pada kode html halaman blog adalah agar mesin pencari seperti yahoo bing maupun google lebih mudah memahami maksud yang terdapat di sebuah halaman blog, bukan hanya sekedar tulisan saja, sehingga mesin pencari dapat memberikan hasil pencarian yang lebih informatif terhadap pengguna.

Aturan penulisan Struktur data atau schema markup untuk sebuah halaman situs memiliki standar penulisan khusus, kode schema markup yang digunakan saat ini adalah hasil kerjasama kolaborasi perusahaan mesin pencari terpopuler di dunia yaitu google, yandex, yahoo dan bing dengan communitas terbuka, referensi legkap mengenai cara penulisan dan perintah penulisannya di publikasikan di situs schema.org

Cara Memperbaiki Error pada struktur data blog: Lengkap

Saat ini blog-blog sudah banyak melibatkan schema markup pada struktur kodenya, bahkan bukan hanya digunakan untuk referensi mesin pencari saja, media sosial facebook twitter dan google+ menggunakan informasi struktur data schema markup untuk informasi ketika pengguna melakukan share di media sosial tersebut.

Agar schema org dapat berfungsi dengan baik, maka anda harus dapat memastikan bahwa struktur data schema markup pada kode halaman blog anda tidak error dan strukturnya tertata dengan baik dan benar.

Cara Mengecek Struktur data schema markup blog 

Cara mengencek apakah struktur data schema markup blog anda dalam keadaan baik atau error anda bisa menggunakan tool khusus yang disediakan oleh google, silahkan buka situshttps://search.google.com/structured-data/testing-tool,

kemudian masukan alamat blog anda, bisa alamat homepage atau alamat artikel, kemudian silahkan jalankan test.


Anda akan disajikan informasi struktur data schema markup yang dimiliki oleh halaman blog anda, kurang lebih mungkin akan seperti tampilan gambar di bawah ini:

chema markup error pada struktur data blog

Untuk blog saya pribdi ditemuka error di bagian BlogPosting dan Website, kita coba klik yang di bagian blogposting, maka ditemukan adanya error seperti gambar di bawah ini:


Itu artinya struktur data schema markup untuk halaman blog tersebut perlu diperbaiki.

Cara Memperbaiki Kesalahan (Error) Struktur data schema markup pada blog

Anda bisa menemukan banyak sekali error struktur data, error yang muncul bisa saja berbeda antara satu blog dengan blog lainnya, beberapa yang sering ditemukan seperti tampilan di atas, jika kebetulan anda menemukan error-error seperti di atas anda bisa memperbaikinya dengan langkah-langkah di bawah ini:

1. Mengatasi Error di bagian item type "WebSite" 

Jika anda menemukan error di bagian itemtype website, cara memperbaikinya adalah sebagai berikut:
cari kode </head pada template blog anda, kemudian masukan kode di bawah ini sebelum kode </head
<b:if cond='data:blog.pageType != &quot;error_page&quot;'>
<script type='application/ld+json'>{ &quot;@context&quot;: &quot;http://schema.org&quot;, &quot;@type&quot;: &quot;WebSite&quot;, &quot;url&quot;: &quot;<data:blog.homepageUrl/>&quot;, &quot;potentialAction&quot;: { &quot;@type&quot;: &quot;SearchAction&quot;, &quot;target&quot;: &quot;<data:blog.homepageUrl/>?q={search_term}&quot;, &quot;query-input&quot;: &quot;required name=search_term&quot; } }</script>
</b:if>

 

2. Mengatasi Error strukturdata pada "author"

Nilai propery "author" bisa kita isi dengan nama author atau penulis artikel postingan yang bersangkutan, jika di dalam halaman artikel blog anda anda menampilkan author, maka pada kode HTML untuk author bisa kita sisipkan kode schema markup untuk author.

Pada kode html blog anda silahkan cari kode di bawah ini:
<b:if cond='data:post.authorProfileUrl'>
    <a class='g-profile' expr:href='data:post.authorProfileUrl' rel='author' title='author profile'>
        <data:post.author/>
    </a>  
<b:else/>
Kemudian ubah menjadi:
<b:if cond='data:post.authorProfileUrl'>
    <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'>
        <meta expr:content='data:post.authorProfileUrl' itemprop='url'/>

        <a class='g-profile' expr:href='data:post.authorProfileUrl' rel='author' title='author profile'>
            <span itemprop='name'><data:post.author/></span>
        </a>
    </span>
<b:else/>
Jika halaman blog anda tidak menampilkan author maka anda bisa membuatnya sendiri:
Silahkan cari kode:
 <article class='post hentry' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
kemudian tambahkan di bawahnya kode berikut:
 <article class='post hentry' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
<span itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'>
     <meta expr:content='data:post.authorProfileUrl' itemprop='url'/>

     <meta expr:content='data:post.author' itemprop='name' />
</span> 

Jika seting di atas benar maka tampilan struktur data untuk "author" akan terlihat seperti gambar di bawah ini:
struktur data untuk author

3. Mengatasi Error Pada "datePublished" dan "dateModified"

Struktur data untuk item "datePublished" harus diisi dengan tanggal penerbitkan artikel, sedangkan dateModified bisa diisi dengan tanggal modifikasi artikel tersebut, jika didalam halaman artikel blog anda menampilkan tanggal penerbitan artikel maka kita bisa sisipkan datePublished dan dateModified pada kode HTML untuk tanggal artikel tersebut.
<time class='timestamp-link' expr:content='data:post.timestampISO8601'><data:post.timestamp/></time>

Kemudian ubah menjadi:
<time class='timestamp-link' expr:content='data:post.timestampISO8601' itemprop='datePublished dateModified'><data:post.timestamp/></time>

 

4. Mengatasi Error Pada strukturdata "image"

Nilai untuk struktur data property "image" harus berisi url gambar, jika di dalam artiktikel disisipkan image, maka url gambar tersebut bisa kita gunakan untuk nilai property "image".

Cari kode berikut:
 <article class='post hentry' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>

Kemudian tambahkan kode di bawah ini tepat setelah kode di atas menjadi:
<article class='post hentry' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
<b:if cond='data:post.firstImageUrl'>
<div itemprop='image' itemscope='itemscope' itemtype='https://schema.org/ImageObject'>

<meta expr:content='data:post.firstImageUrl' itemprop='url'/>
<meta content='320' itemprop='width'/>
<meta content='172' itemprop='height'/>
</div>
</b:if>
Sebenarnya kode di atas bisa anda tambahkan dimana saja di dalam bagian artikel tapi harus berada di lingkup tag HTML dengan itemtype='http://schema.org/BlogPosting'

Kode diatas akan mengisi nilai "image" dengan url gambar pertama yang anda sisipkan pada artikel blog anda, Nilai untuk itempprop='widht' dan itemprop='height' bisa anda ubah sesuaikan dengan nilai ukuran gambar yang biasa anda gunakan pada artikel postinga.

Jika berhasil maka strukturdata schema untuk kode di atas akan kelihatan seperti gambar di bawah ini:

schema markup untuk item image

5. Mengatasi Error struktur data "name" dan "headline"

item property "name" dan juga "headline" untuk itemtype='http://schema.org/BlogPosting', bisa kita isi dengan Judul artikel postingan yang bersangkutan, cara memperbaikinya adalah sebagai berikut:

Cari tag HTML yang digunakan untuk membungkus judul artikel postingan blog anda, misal tag title di blog saya adalah:
<h1 class='post-title entry-title'>
    <b:if cond='data:post.link or (data:post.url and data:blog.url != data:post.url)'>
        <a expr:href='data:post.link ? data:post.link : data:post.url'><data:post.title/></a>
    <b:else/>
        <data:post.title/>
    </b:if>
</h1>

kemudian kita ubah menjadi:
<h1 class='post-title entry-title' itemprop='headline name'>
    <b:if cond='data:post.link or (data:post.url and data:blog.url != data:post.url)'>
        <a expr:href='data:post.link ? data:post.link : data:post.url'><data:post.title/></a>
    <b:else/>
        <data:post.title/>
    </b:if>
</h1>
 Jika benar maka anda akan melihat hasilnya seperti tampilan di bawah ini:

schema markup name dan headline

6. Mengatasi Error struktur data "publisher"

Apa itu publisher dan apa bedanya dengan author ?,  publisher adalah pemegang hak paten dan penerbit seluruh postingan sedangkan author adalah penulis postingan.

item property "publisher" harus menggunakan itemtype='https://schema.org/Organization' atau itemtype='https://schema.org/Person', dan item type ini memiliki sub item property, name dan logo.
Untuk mengisi property ini saya biasanya menggunakan nama blog dan logo blog.

Cara memperbaikinya, cari tag html yang memiliki itemtype='http://schema.org/BlogPosting'

Misal untuk blog saya adalah:
<div class='post hentry' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
Tambahkan di bagian bawah kode menjadi:
<div class='post hentry' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
<span itemprop='publisher' itemscope='itemscope' itemtype='https://schema.org/Organization'>
    <meta expr:content='data:blog.title' itemprop='name'/>
    <span itemprop='logo' itemscope='itemscope' itemtype='https://schema.org/ImageObject'>
        <meta content='https://4.bp.blogspot.com/-8Gf7bf8EWJY/V2VnuUivU7I/AAAAAAAAAV0/Ii3e7IPSC2Ia7MkDCxuak0ItNEogsgW6ACLcB/s1600/pasien-bpjs.jpg' itemprop='url'/>
        <meta content='146' itemprop='width'/>
        <meta content='146' itemprop='height'/>
    </span>
</span>
    

yang warna biru adalah url logo blog, silahkan anda ganti dengan url gambar untuk logo blog anda.
angka 146 diatas untuk itemprop='width' dan itemprop='height' anda bisa sesuaikan dengan ukuran logo blog anda.

Kode di atas sebenarnya bisa diletakan dimana saja namun harus tetap berada di lingkup tag html yang memiliki itemtype='http://schema.org/BlogPosting'

schema markup item property publisher

7. Mengatasi Error Struktur data "mainEntityOfPage"

Item property "mainEntityOfPage" bisa kita isi dengan sebuah url atau creativeWork (webpage, article, dll)
Jika memilih url, kita bisa mengisinya dengan url artikel blog yang bersangkutan, jika memilih creativeWork webPage, maka kita bisa menggunakan itemType='https://schema.org/WebPage' untuk tag HTML yang digunakan untuk item property tersebut.

Kita akan coba mengisi mainEntityOfPage dengan url artikel blog yang bersangkutan.

Jika anda tidak menggunakan link untuk judul artikel maka silahkan cari kode:
<div class='post hentry' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
kemudian tambahkan di bagian bawahnya menjadi:
<div class='post hentry' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
<meta expr:content='data:post.url' itemprop='mainEntityOfPage' />

Jika kebetulan judul artikel postingan anda menggunakan link maka anda bisa menambahkan itemprop='mainEntityOfPage' pada tag HTML untuk link tersebut polanya akan menjadi:

<h1><a itemprop='mainEntityOfPage' href='xxx'>title</a></h1>

Jika berhasil maka akan terlihat seperti gambar di bawah ini:

schema markup mainEntityOfPage

Apakah Struktur data berpengaruh untuk SEO?

Menurut Moz: Jika dikaitkan dengan seo sampai saat ini pengaruh schema markup pada rangking hasil pencaian masih menjadi perdebatan, masih dalam proses ekperimen dan sampai saat ini kabarnya belum ada bukti yang dapat meyakinkan bahwa keberadaan struktur data markup dalam struktur html halaman blog dapat meningkatkan peringkat di hasil pencarian.


Tapi ada indikasi bahwa cuplikan hasil pencarian dari informasi schema org yang terdapat di halaman blog dapat meningkatkan click throught rate (CTR), akan lebih menarik pengguna untuk lebih mengklik judul di hasil pencarian.

Jika saya tidak terlambar mendapatkan informasi terbaru tentang schema markup ini, pernyataan yang sama di perkuat dari pihak google bahwa sampai saat ini schema org belum digunakan sebagai google rangking faktor, tapi kemungkinan besar menurut saya pribadi schema org ada kemungkinan akan digunakan sebagai google rangking faktor di kemudian hari.

Lantas Apa keuntungan melibatkan struktur data schema markup pada kode halaman blog?

Meskipun belum berpengaruh ke seo, Keberadaan schema markup ini menurut saya harus tetap kita libatkan di struktur htlm halaman blog, google menganjurkan blog untuk memiliki struktur data schema markup untuk tujuan agar mesin pencari lebih mudah menangkap maksud yang terkandung didalam halaman blog sehingga yang dipahami bukan hanya tulisan saja, tetap mesin pencari akan memahami apa maksud setiap bagian tulisan tersebut.

Dengan melibatkan struktur data yang baik, maka index google akan lebih cepat dan lebih baik, serta mesin pencari akan mampu memberikan hasil pencarian dengan informasi yang lebih baik, dan itu artinya blog akan lebih mudah dikenali, walaupun dampaknya tidak secara instan dapat kita rasakan

Khusus untuk publisher adsense Kita tau bukan bahwa terkadang bentuk penolakan google adsense adalah navigasi tidak jelas, ada kemungkinan penyebabnya adalah blog masih baru dan struktur data schema markup template yang digunakan tidak memberikan informasi keberadaan navigasi blog pada halaman tersebut.



Penutup

Perbaikan error pada schema markup memang sulit untuk disajikan karena akan tergantung pada struktur HTML yang digunakan di template blog anda, dan mungkin saja struktur htmlnya berbeda, dengan memahami aturan main kode schema markup sebenarnya sangat mudah sekali untuk menjadikan struktur blognya mendukung schema markup yang baik dan benar.

Artikel  tentang Panduan Cara Memperbaiki Error pada struktur data blog, setidaknya dapat memberikan tambahan wawasan dan petunjuk kepada anda untuk memperbaiki kesalahan struktur data pada template blog anda.

14 komentar:

  1. Bermanfaat sekali mas, utk poin perdebatan mmg saya akui, sebab beberapa blog dari blogspot sampai WP yg memiliki strukturdata tdk baik bisa selalu page 1 di mesin pencari. Bukan hanya itu, jika kita hilangkan data publih baik di WP dan Blogspot akan meninggalkan rekaman buruk di (error) di strukturdata. Blog ninoartikel dot com misalnya, dulu mengalami banyak error strukturdata, semua sdh sya perbaiki, setelah itu sya punya ide menyembunyikan date publih di hasil pencarian, saya cek struktured data nya mulai error lagi, beberapa org sya tanya utk meyakinkan saya. Artinya saya punya dua pilihan. Tanpa date/tanggal publish artikel tetapi error struktured nya atau tanggal publish sya sembunyikan tapi mendapati bnyak error yg akan selalu bertambah. Dari beberapa sesi tanya jawab yg bersifat privat sya disarankan utk mengabaikan hal itu, karena hal itu bukan tolak ukur kalah dan menangnya artikel di SERPs. Lagi-lagi saya dilema, saya memutuskan utk tetap menampilkan tanggal posting dihasil pencarian, walaupun menghilangkan tanggal bagian dari praktik SEO tapi memperbaiki strukturdata juga bagian SEO, saya putuskan memilih strukturdata pada Alat Google Webmaster tersebut. Entah pilihan saya ini benar atau salah, utk saat ini blog ninoartikel dot com bebas error.

    ReplyDelete
    Replies
    1. Memang dilema mas nino, date published adalah struktur data wajib harus ada, jika kita memperhatikan struktur data maka date published wajib ada, sebagian orang memilih menghilangkan datepublished untuk strategi seo.

      akhirnya tergantung sipemilik blog.

      Delete
  2. Hallo mas salam kenal, (^-^) !
    saya sedang mengalami eror x image struktur data pada halaman home page blog yg saya kelola gudang-pengetahuanmu.blogspot.com yang menggunakan fitur readmore otomatis 10 artikel pada halaman home page dan ke-10 potongan artikel yg tampil dihalaman homepage tersebut mengalami error sebagai berikut salah satunya :

    x image : https://2.bp.blogspot.com/-tlKSeGWtBEE/V2qkyEkr-PI/AAAAAAAABBo/aS3F2nOKy4EpgwYNY6x6gy8R8rKn31BgQCLcB/s1600/Kontes%2BBlog%2BTerbaru%2BPeriode%2B7%2BJuni%2B-%2B5%2BJuli%2B2016.png (Atribut itemtype memiliki nilai yang tidak valid.)

    Apa yg dapat saya lakukan untuk memperbaiki error tersebut mas, mohon pencerahannya !

    Thanks sebelumnya

    ReplyDelete
    Replies
    1. struktur data image ada perubahan, Image saat ini harus memiliki child: type, url,width dan height

      cari saja di templatenya
      http://schema.org/BlogPosting'

      di bawahnya kemudian tambahkan kode:

      <span itemprop='publisher' itemscope='itemscope' itemtype='https://schema.org/Organization'>
      <meta expr:content='data:blog.title' itemprop='name'/>
      <span itemprop='logo' itemscope='itemscope' itemtype='https://schema.org/ImageObject'>
      <meta content='URL GAMBAR' itemprop='url'/>
      <meta content='146' itemprop='width'/>
      <meta content='146' itemprop='height'/>
      </span>
      </span>

      146 bisa diganti sesuai ke inginan;
      URL GAMBAR, ganti dengan url gambar agan

      Delete
    2. Blog posting saya mengalami 9 kesalahan termasuk image_url, bagaimana cara memperbaikinya, sy coba utak atik masih belum berhasil juga, mohon pencerhannya. trims
      https://4.bp.blogspot.com/-haPB_dAAf7k/V4s1v6ShCnI/AAAAAAAAAOg/hPJnpTnASqsRe8Q12-QQFwxD45fKSEm8wCLcB/s1600/hp%2Bcros%2Bcina.jpg (Properti image_url tidak dikenali oleh Google untuk objek dengan jenis BlogPosting.)

      Delete
  3. Error saya ada 6 kesalahan tiap artikel pada blog saya. Total artikel ada 25 buah. Apakah tiap kesalahan harus di edit satu per satu? apa tidak ada cara yang langsung memperbaiki semua kesalahannya? Terima kasih

    ReplyDelete
    Replies
    1. Jika satu bagian sudah diperbaiki maka error yang lainnya akan hilang, cukup satu bagian saja yang diperbaiki

      Delete
  4. mantap tutor nya, cuma ngelakuin 1 langkah setiap struktur udah beres, tutor yang lain mah lebih dari 1 langkah setiap memperbaiki struktur nya (y) (y) (y)

    ReplyDelete
    Replies
    1. Sukurlah gan kalo sudah benar, padahal blog saya ini belum benar strukturnya karena malas memperbaiki ternyata sudah ada perubahan struktur schema markup sehingga error

      Delete
  5. mantap tutornya, lengkap banget blog saya jdi ngga ada error lagi nih ngikutin tips disini

    ReplyDelete
  6. tengkyu mas bro.. sudah saya coba dan berhasil semua..
    emang agak ribet karena kode BlogPosting itu ada banyak di template saya, harus jeli mana yg kode untuk halaman postingan dan mana kode yg untuk homepage..

    thanks broo

    ReplyDelete
  7. Makaaasih banyak yaaa, ini tutorialnya lengkap dan step by step banget. Jadi langsung beres semua.

    Terima kasih ya ^^

    ReplyDelete
  8. Mas didin, jika blog di pindah dari akun A ke akun B apakah wajib di rubah juga link authornya, atau ikuti langkah di atas sudah cukup? terima kasih

    ReplyDelete
  9. ma mohon di bantu untuk yang di image saya sudah mencoba dengan langkah tsb diatas tp masih saja eror ..

    ReplyDelete

Silahkan berkomentar yang sesuai dengan topik, Mohon Maaf komentar dengan nama komentator dan isi komentar yang berbau P*RN*GRAFI, OB*T, H*CK, J*DI dan komentar yang mengandung link aktif, Tidak akan ditampilkan!