Safaruddin, S.Kom
Teknisi Komputer, Programmer Web.
Yogyakarta, Indonesia.

I love the web
follow me on

Script Arsip Artikel Berdasarkan Bulan dan Tahun untuk AuraCMS

Jum`at, 20 Februari 2009 23:12:58
Rating: 8.7/10 (3 votes cast)

Programming.

 

Konsep kerja dari list arsip berdasarkan bulan dan tahun adalah, bila salah satu bulan dan tahun ini diklik, maka akan menampilkan list artikel yang diposting pada bulan dan tahun tersebut. Apabila kita menggunakan Wordpress atau Blogger, tentu untuk membuat arsip dalam bentuk bulan dan tahun tentunya tidak menjadi masalah karena hanya menggunakan widget, selesai… Namun bagaimana bila kita ingin membuatnya di AuraCMS? Nah… sekarang kita akan coba mencari ide untuk membuatnya.

Pertama kita membuat list bulan dan tahunnya terlebih dahulu. Harapan kita, nantinya dalam script akan muncul list sbb:

·        November 2008

·        December 2008

·        January 2009

·        February 2009

Kalau kita klik ‘December 2008′ maka akan muncul list artikel yang diposting pada bulan dan tahun tersebut. Demikian pula kalau yang diklik adalah ‘February 2009′.

Berikut ini script yang langsung bisa langsung di implementasikan di AuraCMS:

if(ereg(basename (__FILE__), $_SERVER['PHP_SELF']))

{

            header("HTTP/1.1 404 Not Found");

            exit;

}

ob_start();

 

global $koneksi_db;

$perintah = "SELECT DISTINCT date_format(tgl, '%M %Y') as bulantahun FROM artikel";

$hasil = $koneksi_db->sql_query( $perintah );

$topikbox = "

    ";

while ($data = $koneksi_db->sql_fetchrow($hasil)) {

$url=str_replace(" ", "_", $data[bulantahun]);

$topikbox.= "

  • ".$data['bulantahun']."
  • ";

                }

    $topikbox.= "";

    echo $topikbox;

    $out = ob_get_contents();

    ob_end_clean();

    ?>

    Silahkan copy paste script di atas kemudian simpan di folder mod/news dengan nama arsip.php

    Apakah script di atas sudah selesai? Belum ternyata. Sekarang yang menjadi pertanyaan adalah, bagaimana mengkaitkan antara link list bulan dan tahun dengan artikelnya. Kaitan ini digunakan untuk menentukan artikel apa yang akan muncul bila diklik salah satu bulan dan tahun. Nah… parameter yang diberikan pada link nantinya akan kita gunakan pada querynya untuk memfilter artikel yang sesuai bulan dan tahunnya.

    Sekarang coba kita buka file news.php yang ada di folder mod/news. Kemudian sisipkan script ini:

    if($_GET['aksi']=="blth"){

    $blth    = $_GET['blth'];

     

    $url=str_replace("_", " ", $blth);

    $hasil = $koneksi_db->sql_query( "SELECT * FROM artikel WHERE date_format(tgl, '%M %Y') ='$url' AND publikasi=1" );

     

    $data = $koneksi_db->sql_fetchrow($hasil);

    $tengah .='

    Arsip : '.$url.'

    ';

    if (empty ($url)){

     $tengah.='

    Access Denied
    ';

            $tengah .='';

    }else {

    $limit = 10;

    $offset = int_filter(@$_GET['offset']);

    $pg        = int_filter(@$_GET['pg']);

    $stg    = int_filter(@$_GET['stg']);

    $totals = $koneksi_db->sql_query( "SELECT id FROM artikel WHERE publikasi=1 AND date_format(tgl, '%M %Y') ='$url'" );

    $jumlah = $koneksi_db->sql_numrows( $totals );

    $a = new paging ($limit);

    if ($jumlah>0 ){

    $hasil = $koneksi_db->sql_query( "SELECT * FROM artikel WHERE publikasi=1 AND date_format(tgl, '%M %Y') ='$url' ORDER BY id DESC LIMIT $offset, $limit" );

    while ($data = $koneksi_db->sql_fetchrow($hasil)) {

    $data[5]= datetimes($data['tgl']);

    $tengah .='

    '.$data['1'].'

    '.limitTXT(strip_tags($data[2]),250).'

                             

                                                               

    Read more

    By '.$data[3].'

    '.$data[5].'           

     

    ';

     

     } //end while

    if($jumlah>10){

    $tengah .='

    ';

    $tengah.="";

    if (empty($_GET['offset']) and !isset ($_GET['offset'])) {

    $offset = 0;

    }

    if (empty($_GET['pg']) and !isset ($_GET['pg'])) {

    $pg = 1;

    }

    if (empty($_GET['stg']) and !isset ($_GET['stg'])) {

    $stg = 1;

    }

    $tengah.= $a-> getPaging($jumlah, $pg, $stg);

    $tengah.="";

    $tengah .='';

    }

    } else{

            $tengah.='

    Artikel Kosong!
    ';

            $style_include[] ='';

    }

    } //end if kosong

    } //end function

     

    Berhubung aksi=arsip sudah ada, maka untuk arsip bulan tahun ini saya beri aksi=blth, gpp kan.

    Selanjutnya anda tinggal login sebagai admin kemudian pilih menu modul manager trus buat blok modul baru isi judul blok terserah anda, isi file modul (*.php) dengan mod/news/arsip.php.

    Selamat mencoba.

     


    , arsip, auracms, modul
    Anda sedang membaca Script Arsip Artikel Berdasarkan Bulan dan Tahun untuk AuraCMS kategori Programming. Silahkan beri komentar, baik berupa Kritik, Saran, maupun Pertanyaan. Semoga bermanfaat.