Cara Membuat Sitemap News Google Menggunakan PHP
Muh. Ashhar Bustan

Cara Membuat Sitemap News Google Menggunakan PHP

Berdasarkan penjelasan yang ada di sitemap.org, Sitemaps atau yang dalam Bahasa Indonesia disebut Peta Situs adalah cara mudah bagi seorang webmaster untuk memberi tahu mesin pencari seperti Google bahwa halaman di situs mereka tersedia untuk dirayapi. Umumnya format sitemaps adalah file XML yang mencantumkan URL dari sebuah situs beserta metadata tambahan seperti kapan url tersebut terakhir diperbaharui, seberapa sering halaman tersebut diperbaharui, dan seberapa penting halaman web tersebut sehingga mesin pencari bisa merayapi situs tersebut dengan baik.

Perayap web biasanya menemukan halaman dari tautan di dalam situs dan dari situs lain. Sitemaps atau Peta Situs melengkapi data ini untuk memungkinkan perayap yang mendukung Sitemaps (Peta Situs) untuk mengambil semua URL yang ada di Sitemaps (Peta Situs) dan mempelajari tentang URL tersebut menggunakan metadata yang terkait. Menggunakan protokol atau aturan Sitemaps (Peta Situs) tidak menjamin bahwa halaman web akan disertakan atau diindeks kedalam mesin pencari, akan tetapi setidaknya memberikan petunjuk bagi perayap web sehingga mampu menelusuri sebuah situs dengan lebih baik.

Baca Juga: Tutorial CSS: Membuat Tampilan Blog/Website Seragam di Semua Browser Dengan CSS RESET


Agar sebuah situs bisa muncul pada mesin pencari seperti Google maka sangat disarankan untuk menggunakan sitemaps. Di sini kita akan membahas cara membuat Sitemaps News Google menggunakan PHP. Sitemaps news Google sangat berguna untuk situs-situs berita yang selalu update setiap harinya. Kompas dan Detik yang merupakan salah satu situs berita online terbesar menggunakan sitemaps news google. Sebelum menggunakan sitemaps news ada beberapa syarat yang ditentukan oleh Google yaitu:

  • Peta Situs Berita Anda hanya dapat berisi URL untuk artikel yang dipublikasikan dalam dua hari terakhir. Anda dapat menghapus artikel yang berumur lebih dari dua hari dari peta situs Berita, namun artikel tersebut akan tetap ada di indeks Berita selama 30 hari.
  • Sebaiknya perbarui Peta Situs Berita secara terus-menerus dengan artikel-artikel baru setelah dipublikasikan. Google Berita merayapi Peta Situs Berita dalam frekuensi yang sama dengan perayapan seluruh situs Anda.
  • Peta Situs Berita tidak dapat berisi lebih dari 1.000 URL. Jika Anda ingin menyertakan lebih banyak URL, Anda dapat membagi URL tersebut ke beberapa Peta Situs dan menggunakan file indeks Peta Situs untuk mengelolanya. Gunakan format XML yang disediakan dalam protokol Peta Situs. File indeks Peta Situs Anda hanya dapat mencantumkan hingga 50.000 Peta Situs. Batasan ini membantu memastikan bahwa server web Anda tidak dibebankan berlebihan karena menyajikan banyak file ke Google Berita.
  • Saat memublikasikan artikel baru, jangan buat satu Peta Situs Berita baru setiap saat. Sebagai gantinya, perbarui peta situs Anda saat ini dengan URL artikel yang baru.
  • Generator Peta Situs Google tidak dapat digunakan untuk membuat Peta Situs Berita, karena generator tersebut akan menyertakan URL yang tidak berhubungan dengan artikel berita tertentu. Ada beberapa alat pihak ketiga yang dapat membantu Anda membuat Peta Situs Google Berita.

Berikut contoh tag Sitemaps (Peta Situs) News:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:news="http://www.google.com/schemas/sitemap-news/0.9">
  <url>
    <loc>http://www.example.org/business/article55.html</loc>
    <news:news>
      <news:publication>
        <news:name>The Example Times</news:name>
        <news:language>en</news:language>
      </news:publication>
      <news:genres>PressRelease, Blog</news:genres>
      <news:publication_date>2008-12-23</news:publication_date>
      <news:title>Companies A, B in Merger Talks</news:title>
      <news:keywords>business, merger, acquisition, A, B</news:keywords>
      <news:stock_tickers>NASDAQ:A, NASDAQ:B</news:stock_tickers>
    </news:news>
  </url>
</urlset>


Saya rasa penjelasan mengenai Sitemaps News sudah cukup, sekarang kita akan membahas cara membuat sitemaps news menggunakan PHP. Untuk membuat sitemaps news Google caranya hampir sama ketika kita membuat file XML menggunakan PHP seperti yang sudah kita bahas di artikel sebelumnya yaitu cara membuat file xml menggunakan PHP perbedaanya hanya terletak pada tag yang digunakan. Namun kali ini kita akan membahasnya jauh lebih lengkap dari yang sebelumnya.

Baca Juga: Kompiler dan Interpreter Java


Buat Database dan Tabel.

CREATE DATABASE berita;
--membuat database dengan nama berita
-- membuat tabel dengan nama artikel

CREATE TABLE `artikel` (
  `kode` int(5) NOT NULL,
  `judul` varchar(250) DEFAULT NULL,
  `tanggal` datetime DEFAULT NULL,
  `penulis` varchar(50) DEFAULT NULL,
  `isi` text,
  `tags` text,
  `url` varchar(250) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

ALTER TABLE `artikel`
  ADD PRIMARY KEY (`kode`);

ALTER TABLE `artikel`
  MODIFY `kode` int(5) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=17;

 

Membuat File Sitemap.xml

Setelah membuat database sekarang kita akan menggunakan data yang ada didalamnya untuk dijadikan sebuah sitemap news.

$sql = mysql_query("SELECT * FROM artikel Order By kode DESC LIMIT 30");

header("Content-Type: text/xml");
$xmlDoc = new DOMDocument('1.0','UTF-8');

$root = $xmlDoc->appendChild(
	$xmlDoc->createElement("urlset")
);

$root->appendChild(
	$xmlDoc->createAttribute("xmlns"))->appendChild(
		$xmlDoc->createTextNode('http://www.sitemaps.org/schemas/sitemap/0.9'));
		
$root->appendChild(
	$xmlDoc->createAttribute("xmlns:news"))->appendChild(
		$xmlDoc->createTextNode('http://www.google.com/schemas/sitemap-news/0.9'));

while(($cont =  mysql_fetch_assoc($sql))) {
	
	$tutTag = $root->appendChild($xmlDoc->createElement("url"));
	
	$url = $tutTag->appendChild($xmlDoc->createElement("loc"));
		$url->appendChild($xmlDoc->createCDataSection($cont['url']));
	
	$news = $tutTag->appendChild($xmlDoc->createElement("news:news"));
		$publication = $news->appendChild($xmlDoc->createElement("news:publication"));
			$name = $publication->appendChild($xmlDoc->createElement("news:name"));
				$name->appendChild($xmlDoc->createCDataSection('Ashharbustan.com')); 
			$lang = $publication->appendChild($xmlDoc->createElement("news:language"));
				$lang->appendChild($xmlDoc->createCDataSection('id'));
				
		$tgl = $news->appendChild($xmlDoc->createElement("news:publication_date"));
			$tgl->appendChild($xmlDoc->createCDataSection($cont['tanggal']));
			
		$judul = $news->appendChild($xmlDoc->createElement("news:title"));
			$judul->appendChild($xmlDoc->createCDataSection($cont['judul_content']));
			
		$tags = $news->appendChild($xmlDoc->createElement("news:keywords"));
			$tags->appendChild($xmlDoc->createCDataSection($cont['tags']));
}

$xmlDoc->formatOutput = true;
$xmlDoc->save("sitemap.xml");

Baca Juga: Cara Membuat Rowspan Dinamis Pada Tabel Dengan PHP


YANG LAIN:

Komentar

Cari Artikel Lainnya Disini