Rss Den Sitemap Yapimi

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ilnatsob
    ilnatsob's avatar
    Kayıt Tarihi: 22/Mayıs/2008
    Erkek

    Bazıları rss den sitemap yapıyorlarmış, birkaç değişiklik yeterli diyorlar
    çok uğraştım ama olmadı, kodları aynen ekleyip sitemap.xml olarak kaydedince google kabul etmiyor

    Aşağıdaki kodlarda ne değişikler yaparsam sitemap olarak kullanabilirim?

    A.vid desc LIMIT 0,20 kısmını 50000 yapmayı planlıyorum çok mu olur?






    include("configs/config.php");
    if($config[rss_feeds]=="0") { header("Location: $config[base_url]/main"); exit; }
    header("Content-Type: text/xml");
    header("Expires: 0");
    print "
    \n";
    //print " \n";
    $show=filter_descr($_GET[show]);
    $type=filter_descr($_GET[type]);

    if ($type=="audios") { $tbl="files_audio"; $tit="audios"; $file="audio"; $act="played"; $act1=$lang['rss_act1']; }
    elseif ($type=="images") { $tbl="files_image"; $tit="images"; $file="image"; $act="viewed"; $act1=$lang['rss_act2']; }
    elseif ($type=="videos") { $tbl="files_video"; $tit="videos"; $file="video"; $act="viewed"; $act1=$lang['rss_act2']; }
    else { illegal_op(); }

    if ($show == "newest")
    {
    $see="1";
    $query = "SELECT A.*,B.uid,B.username FROM ".$tbl." A, members B WHERE A.uid=B.uid AND A.vtype='public' and A.active='1' and A.is_inapp='no' ORDER BY A.vid desc LIMIT 0,20";
    if ($type=="audios") { $title = $lang['rss_audio1_title1']; }
    elseif ($type=="images") { $title = $lang['rss_image1_title1']; }
    elseif ($type=="videos") { $title = $lang['rss_video1_title1']; }
    $url = $config['base_url']."/rss/".$tit."/".$show."";
    }
    elseif ($show == "most_played")
    {
    $see="1";
    $query = "SELECT A.*,B.uid,B.username FROM files_audio A, members B WHERE A.uid=B.uid AND A.vtype='public' and A.active='1' and A.is_inapp='no' ORDER BY A.views desc LIMIT 0,20";
    if ($type=="audios") { $title = $lang['rss_audio2_title2']; }
    elseif ($type=="images") { $title = $lang['rss_image2_title2']; }
    elseif ($type=="videos") { $title = $lang['rss_video2_title2']; }
    $url = $config['base_url']."/rss/".$tit."/".$show."";
    }
    elseif ($show == "most_viewed")
    {
    $see="1";
    $query = "SELECT A.*,B.uid,B.username FROM ".$tbl." A, members B WHERE A.uid=B.uid AND A.vtype='public' and A.active='1' and A.is_inapp='no' ORDER BY A.views desc LIMIT 0,20";
    if ($type=="audios") { $title = $lang['rss_audio2_title2']; }
    elseif ($type=="images") { $title = $lang['rss_image2_title2']; }
    elseif ($type=="videos") { $title = $lang['rss_video2_title2']; }
    $url = $config['base_url']."/rss/".$tit."/".$show."";
    }
    elseif ($show == "top_rated")
    {
    $see="0";
    $query = "SELECT A.*,B.uid,B.username FROM ".$tbl." A, members B WHERE A.uid=B.uid AND A.vtype='public' and A.active='1' and A.is_inapp='no' ORDER BY A.rate desc LIMIT 0,20";
    if ($type=="audios") { $title = $lang['rss_audio3_title3']; }
    elseif ($type=="images") { $title = $lang['rss_image3_title3']; }
    elseif ($type=="videos") { $title = $lang['rss_video3_title3']; }
    $url = $config['base_url']."/rss/".$tit."/".$show."";
    }
    else { illegal_op(); }

    print "<rss version=\"2.0\" xmlns:media=\"http://search.yahoo.com/mrss\">\n";
    print "<channel>\n";
    print "<title>".$title."title>\n";
    print "<link>".$url."link>\n";
    print "<copyright>".$lang['rss_copyright']."copyright>\n";

    $db=mysql_connect ($db_host,$db_user,$db_pass) or die ('I cannot connect to the database because: ' . mysql_error());
    mysql_select_db ($db_name);

    $num_rows = mysql_num_rows(mysql_query("select * from ".$tbl." where vtype='public' and active='1' and is_inapp='no'"));

    $result = mysql_query($query) or die ('Query Error: ' . mysql_error());
    if ( $config['views_delim'] == 'comma' ) $delim = ','; else $delim = '.';

    if ($config['def_thumb'] == '1') $bn=rand(1,1);
    elseif ($config['def_thumb'] == '2') $bn=rand(2,2);
    elseif ($config['def_thumb'] == '3') $bn=rand(3,3);
    elseif ($config['def_thumb'] == '4') $bn=rand(1,3);

    while ($results = mysql_fetch_array($result))
    {
    if ($type=="audios") { $rnd=substr(md5($results['vid']),11,7); $photo = $config['tmb_url']."/user".$results['uid']."/".$bn."_".$results['vid'].$rnd.".jpg"; if ($see=="1") $seen = $act1."".number_format($results['views'],0,",",$delim)."".$lang['rss_times'].""; elseif ($see=="0") { if ($results['rate']=="0") $seen=$lang['rss_notrated']; else $seen = "".$lang['rss_rated']."".$results['rate']."".$lang['rss_rated_outof']."".$results['total_votes']."".$lang['rss_votes'].""; }}
    elseif ($type=="images") { $photo = $config['tmb_url']."/user".$results['uid']."/".$results['vflvname']; if ($see=="1") $seen = $act1."".number_format($results['views'],0,",",$delim)."".$lang['rss_times'].""; elseif ($see=="0") { if ($results['rate']=="0") $seen=$lang['rss_notrated']; else $seen = "".$lang['rss_rated']."".$results['rate']."".$lang['rss_rated_outof']."".$results['total_votes']."".$lang['rss_votes'].""; }}
    elseif ($type=="videos") { $rnd=substr(md5($results['vid']),13,7); $photo = $config['tmb_url']."/user".$results['uid']."/".$bn."_".$results['vid'].$rnd.".jpg"; if ($see=="1") $seen = $act1."".number_format($results['views'],0,",",$delim)."".$lang['rss_times'].""; elseif ($see=="0") { if ($results['rate']=="0") $seen=$lang['rss_notrated']; else $seen = "".$lang['rss_rated']."".$results['rate']."".$lang['rss_rated_outof']."".$results['total_votes']."".$lang['rss_votes'].""; }}
    if ($config[same_title_uploads]=="0") $title = ereg_replace(" {1,}", "_", $results['vtitle']);
    else $title = $results['vkey'];
    $video = $config['base_url']."/".$file."/".$title;
    $description = modifier_spchar($results['vdescr']);
    $photo = str_replace ("&amp","&amp",htmlspecialchars(stripslashes($photo)));

    print "<item>\n";
    print " <title>".$results['vtitle']."title>\n";
    print " <link>".$video."link>\n";
    print " <description>\n";
    print " if ($config[same_title_uploads]=="0") {
    print "

    ".$lang['rss_descr']." ".$description."


    ".$lang['rss_addedby']." ".$results['username']."
    ".$seen."



    ".$lang['rss_tags']." ";
    }
    else {
    print "

    ".$lang['rss_descr']." ".$description."


    ".$lang['rss_addedby']." ".$results['username']."
    ".$seen."



    ".$lang['rss_tags']." ";
    }
    $tok = strtok($results['vtags'], " ");
    while ($tok !== false)
    {
    print "".$tok." ";
    $tok = strtok(" ");
    }
    print "
    ".$lang['rss_addedon']."".$results['adddate']."



    ";
    print " ]]>
    \n";
    print " description>\n";
    print " <author>".addslashes(htmlentities(strip_tags($results[username]),ENT_QUOTES,'UTF-8'))."author>\n";
    print "item>\n";
    }
    mysql_close();
    print "channel>";
    print "rss>";
    ?>

     


    ====>
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    JohnD
    JohnD's avatar
    Banlanmış Üye
    Kayıt Tarihi: 19/Ekim/2008
    Erkek

    rss den sitemap ne lan.yukarıdaki kodları yazan arkadaş gereksiz süslemiş olayı.

    sitemap yapımını anlatayım:

    veritabanından veri çekilir (tavsiyem:desc,5000),xml formatında bastırılır(xml kalıp:http://sitemaps.org/protocol.php ) header bilgisinede text/xml yazılır,google amjaya gönderilir.dosya php uzantısında olduğundan google amja kabul etmezse .htaccess yardımıyla dosya xml gibi gösterilir.

    bu yolla en az 20 sitemap yaptım sorun çıkmadı,eğer kabarık bir veritabanın varsa ceil yardımıyla sitemap ı böl,sitemap.xml i sitemap index olarak kullan.

    xml formatında sadece loc ve priority bilgilerini vermen örümcekler için yeterli olur.


    DOM..
Toplam Hit: 1148 Toplam Mesaj: 2