1. Halo Guest, pastikan Anda selalu menaati peraturan forum sebelum mengirimkan post atau thread baru.

Cara menampilkan iklan adsense berdasarkan GEO IP

Discussion in 'Pemrograman Web' started by Dudayz, Jan 13, 2012.

  1. Dudayz

    Dudayz Super Hero

    Joined:
    Feb 6, 2009
    Messages:
    3,847
    Likes Received:
    522
    Location:
    Bogor Kota Panas
    Selamat pagi,

    Sesuai dengan judul ane ingin berbagi mengenai filter iklan adsense berdasarkan GEO IP, didasarkan pengalaman yang selalu kena click fraud oleh tangan-tangan jahil maka dari itu ane mencari script filtering adsense by geo IP. Setelah mencari kesana dan kemari banyak sekali tutorial tapi tidak semuanya berjalan dengan baik, kemudian ane temukan cara filter ini menggunakan fasilitas hxxp://www.ip2nation.com setelah ane coba utak atik script tersebut berjalan dengan baik.

    Oke tanpa basa basi ane kasih tutorialnya dibawah ini

    1. Import/Upload SQL Ip2Nation ke database ente, download disini hxxp://www.ip2nation.com/ip2nation/Download
    2. Setelah selesai upload dibawah ini adalah script untuk memfilter iklan berdasarkan GEO IP

    Jika anda ingin menyisipkan iklan adsense dibagian konten gunakan script dibawah ini

    PHP:
    <?php
    /*
    Plugin Name: Adsense in Content
    Description: Insert an add after the Xth paragraph. Configure in the plugin file.
    Version: 1.1
    Author: Ruud Hein
    */


    add_filter('the_content''article_ad');

    function 
    article_ad($post_content) {
       global 
    $wp_query$post;

       if (!
    is_single() ) return $post_content;

       
    // After which paragraph to insert the ad

       
    $afterParagraph 1;
       
    $server   'TARO NAMA HOST DATABASE'// MySQL hostname
       
    $username 'TARO USERNAME MYSQL'// MySQL username
       
    $password 'TARO MSYSQL PASSWORD'// MySQL password
       
    $dbname   'TARO MYSQL DATABASE'// MySQL db name

       
    $db mysql_connect($server$username$password) or die(mysql_error());
              
    mysql_select_db($dbname) or die(mysql_error());

       
    $sql 'SELECT
                    country
                FROM
                    ip2nation
                WHERE
                    ip < INET_ATON("'
    .$_SERVER['REMOTE_ADDR'].'")
                ORDER BY
                    ip DESC
                LIMIT 0,1'
    ;

        list(
    $country) = mysql_fetch_row(mysql_query($sql));

       switch(
    $country){

    case 
    'cn':
    case 
    'in':
    case 
    'id':

       
    $ppclain='TARO PPC SELAIN ADSENSE DISINI';

       
    // $matches is an array of paragraph number and [1] character length

       
    preg_match_all('/(?:\r\n|\r|\n)/'$post_content$matchesPREG_OFFSET_CAPTURE );
       
    $insert_at $matches[0][$afterParagraph][1];

       return 
    substr($post_content,0,$insert_at). $ppclain substr($post_content,$insert_at,strlen($post_content));

    exit;

    default:

    $adsense='TARO IKLAN GOOGLE ADSENSE DISINI';

       
    // $matches is an array of paragraph number and [1] character length

       
    preg_match_all('/(?:\r\n|\r|\n)/'$post_content$matchesPREG_OFFSET_CAPTURE );
       
    $insert_at $matches[0][$afterParagraph][1];

       return 
    substr($post_content,0,$insert_at). $adsense substr($post_content,$insert_at,strlen($post_content));

    exit;

    }
    }
    ?>
    Beri nama script tersebut terserah namanya apa asal ekstensinya php, kemudian upload script tersebut kebagian wp-content/plugins, setelah anda upload maka aktifkan plugin tersebut.

    Bagaimana cara kerja script diatas, anda lihat fungsi switch

    case 'cn':
    case 'in':
    case 'id':

    Berdasarkan case diatas maka kode CN = China, IN = India, ID = Indonesia hanya akan melihat iklan PPC lain selain adsense, Sedangkan defaultnya selain ketiga negara tersebut akan melihat iklan google adsense. Case tersebut bisa anda tambah sesuka hati asal Kode nya ngikutin yang ada didatabse Ip2Nation, Script plugin diatas saya tampilkan setelah paragraf 1 kalau misalnya mau dipaling atas bisa diset dengan value 0 atau -1. Terus gimana kalau misalnya gak mau plugin pengen naro di sembarang tempat??

    Kalau pengen naro script ini disembarang tempat ente bisa pake script dibawah ini

    PHP:
    <?php
        
        $server   
    ''// MySQL hostname
        
    $username ''// MySQL username
        
    $password ''// MySQL password
        
    $dbname   ''// MySQL db name
        
        
        
    $db mysql_connect($server$username$password) or die(mysql_error());
              
    mysql_select_db($dbname) or die(mysql_error());
                
        
    $sql 'SELECT 
                    country
                FROM 
                    ip2nation
                WHERE 
                    ip < INET_ATON("'
    .$_SERVER['REMOTE_ADDR'].'") 
                ORDER BY 
                    ip DESC 
                LIMIT 0,1'
    ;
        
        list(
    $country) = mysql_fetch_row(mysql_query($sql));
        
        switch (
    $country) {
            case 
    'se':
                
    // Get the Swedish to a Swedish newssite
                
    header('Location: http://www.thelocal.se/');
                exit;
            case 
    'us':
                
    // And redirect US visitors to CNN
                
    header('Location: http://www.cnn.com/');
                exit;
            default:
                
    // The rest of the world can go to BBC
                
    header('Location: http://www.bbc.co.uk/');
                exit;
        }
        
    ?>    

    Atau

    PHP:
    <?php
        
        $server   
    ''// MySQL hostname
        
    $username ''// MySQL username
        
    $password ''// MySQL password
        
    $dbname   ''// MySQL db name
        
        
        
    $db mysql_connect($server$username$password) or die(mysql_error());
              
    mysql_select_db($dbname) or die(mysql_error());
        
        
    $sql 'SELECT 
                    c.country 
                FROM 
                    ip2nationCountries c,
                    ip2nation i 
                WHERE 
                    i.ip < INET_ATON("'
    .$_SERVER['REMOTE_ADDR'].'") 
                    AND 
                    c.code = i.country 
                ORDER BY 
                    i.ip DESC 
                LIMIT 0,1'
    ;
        
        list(
    $countryName) = mysql_fetch_row(mysql_query($sql));
        
        
    // Output full country name
        
    echo $countryName;
        
    ?>            
    Oke itu penjelasan singkatnya, Ente bisa kembangkan lagi script ini sesuai dengan kebutuhan. Kita bisa diskusikan disini kalau ada masalah. Mudah2an Bermanfaat :senyum:

    Regards,
    Dudy Adityawan
     
    Last edited: Jan 13, 2012
  2. sugank

    sugank Hero

    Joined:
    Mar 15, 2010
    Messages:
    633
    Likes Received:
    26
    Location:
    East Java
    alhamdulillah ada tutorialnya....
    masih nugguin approval yg kesekian kalinya dari adsense :D
     
  3. alimurtado

    alimurtado Ads.id Starter

    Joined:
    Jan 5, 2011
    Messages:
    66
    Likes Received:
    22
    Bookmark dulu om sambil nunggu trafik naik lagi nie.. :D
    Thanks Before :D
     
  4. red army

    red army Dalih Webmaster Hangout team

    Joined:
    Mar 20, 2011
    Messages:
    1,653
    Likes Received:
    45
    Location:
    lagi bertapa
    wah, manteb tutorialnya mas.. :D
    musti melajarin dlu.. :D
     
  5. amixpamot

    amixpamot Super Hero

    Joined:
    Jun 20, 2010
    Messages:
    966
    Likes Received:
    24
    Location:
    Ngarep Komputer
    Thanks turorialnya om, insyaallah ke depan berguna nih klo blog ane dah bayak pengunjungnya buat antisipasi orang2 iseng.
     
  6. Rina Anjarwati

    Rina Anjarwati Hero

    Joined:
    Dec 21, 2011
    Messages:
    684
    Likes Received:
    115
    emang kalau dah diganti...lalu pake imacros blomclick ga kena banned juga ya?

    Coba dong saya mau UJI...coba situs yg udah make code diatas?

    ---------- Post added at 09:57 AM ---------- Previous post was at 09:55 AM ----------

    emang kalau dah diganti...lalu pake imacros bomclick ga kena banned juga ya?

    Coba dong saya mau UJI...coba situs yg udah make code diatas?
     
  7. attametro

    attametro Super Hero

    Joined:
    Feb 18, 2010
    Messages:
    1,753
    Likes Received:
    50
    Location:
    Metro, Di Kamar Kos
    wah bookmark dulu neh, tapi sayang sekarang lagi pake blogcepot, wp nya kena deindex semua...
     
  8. Dudayz

    Dudayz Super Hero

    Joined:
    Feb 6, 2009
    Messages:
    3,847
    Likes Received:
    522
    Location:
    Bogor Kota Panas
    Ya tergantung ente pake imacrosnya ngeloadnya pake IP apa, ini kan filter by geo IP. Ketika load site yang didetect pertama kali IP address Provider inetnya. Kalau orang nya niat busuk ngejahilin sih bisa aja pake proxy tetep di bombardir. Ya ini semua tergantung sama orang itu sendiri kalau basic dah IRI dan Jahat mah script ginian jg gak bakal ngaruh. Karena tujuannya ya bikin si empu pemilik akun google adsensenya di banned. Setidak nya script ini meminimalisir kegiatan click fraud :)
     
  9. irw4nz3r0

    irw4nz3r0 Ads.id Fan

    Joined:
    Dec 6, 2011
    Messages:
    204
    Likes Received:
    0
    Location:
    Palembang
    mantaaap benar infoonya, pelajari pelaan pelan
     
  10. sweetpaseo

    sweetpaseo Super Hero

    Joined:
    May 20, 2009
    Messages:
    756
    Likes Received:
    10
    Sip om bos.. mudah2an kagak ada lagi click fraud kayak yg om kena kemaren.. sialan bener tuh pelakunya..
     
  11. TH35191T

    TH35191T Ads.id Pro

    Joined:
    Apr 16, 2011
    Messages:
    266
    Likes Received:
    20
    Ctrl+D dulu ya gan .. blm punya acc adsense soalnya ,lg belajar neh :)
     
  12. navokifaut

    navokifaut Ads.id Fan

    Joined:
    Apr 15, 2008
    Messages:
    145
    Likes Received:
    4
    mantab tutorialnya, kang... mau ngasih cendol cuman koq ya ndak bisa.
     
  13. pwchinaga

    pwchinaga Hero

    Joined:
    Apr 14, 2011
    Messages:
    591
    Likes Received:
    13
    top tenan
    like take off
     
  14. pinginsehat

    pinginsehat Banned

    Joined:
    Jul 27, 2010
    Messages:
    3,151
    Likes Received:
    279
    Location:
    Surabaya
    thx infonya mastah..
     
  15. itsmefurzy

    itsmefurzy Super Hero

    Joined:
    Dec 5, 2009
    Messages:
    789
    Likes Received:
    89
    weww. keren, jadi bisa targetin ads jadi adsnya gak kebuang sia - sia
     
  16. idiotcode

    idiotcode Super Hero

    Joined:
    Mar 4, 2010
    Messages:
    1,465
    Likes Received:
    982
    Location:
    Venice, Italy
    ooo buat filter visitor ya bro?,

    anyway you can also put a line of code just to make sure that the ip is not a proxy,

    elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']

    :D
     
  17. jawsplanet

    jawsplanet Super Hero

    Joined:
    Apr 12, 2011
    Messages:
    1,776
    Likes Received:
    104
    Location:
    Tangerang
    wah,thanks sob ilmunya
     
  18. irw4nz3r0

    irw4nz3r0 Ads.id Fan

    Joined:
    Dec 6, 2011
    Messages:
    204
    Likes Received:
    0
    Location:
    Palembang
    ilmu yg berguna niih
     
  19. adsensemania

    adsensemania Ads.id Pro

    Joined:
    Oct 15, 2010
    Messages:
    265
    Likes Received:
    6
    Location:
    Indonesia
    om dudayz, klo mau taro penyaring adsense by country di page statis gmn ya coding nya? bingung...
    jd bukan CMS wordpress melainkan page statis biasa.. pengen buat saring khusus adsense aj..
    klo traffic asal Negara A maka adsense tak muncul..
     
  20. Dudayz

    Dudayz Super Hero

    Joined:
    Feb 6, 2009
    Messages:
    3,847
    Likes Received:
    522
    Location:
    Bogor Kota Panas
    Pake yang dibawah ini kan bisa pren, tinggal dirubah aja fungsi switch nya jadi

    PHP:
    <?php
        
        $server   
    ''// MySQL hostname
        
    $username ''// MySQL username
        
    $password ''// MySQL password
        
    $dbname   ''// MySQL db name
        
        
        
    $db mysql_connect($server$username$password) or die(mysql_error());
              
    mysql_select_db($dbname) or die(mysql_error());
                
        
    $sql 'SELECT 
                    country
                FROM 
                    ip2nation
                WHERE 
                    ip < INET_ATON("'
    .$_SERVER['REMOTE_ADDR'].'") 
                ORDER BY 
                    ip DESC 
                LIMIT 0,1'
    ;
        
        list(
    $country) = mysql_fetch_row(mysql_query($sql));
        
        switch(
    $country){ 
     
    case 
    'cn'
    case 
    'in'
    case 
    'id'
     
       
    $ppclain='TARO PPC SELAIN ADSENSE DISINI'
       echo 
    $ppclain;

    exit; 

    default: 
     
    $adsense='TARO IKLAN GOOGLE ADSENSE DISINI'

    echo 
    $adsense;

    exit;     
    ?>
     
    adsensemania likes this.

Share This Page