• 15-10-2007, 22:32:57
    #1
    Üyeliği durduruldu
    2 gündür google sitemap için uğrasıyorum 100.000 url li bir site için sitemap oluşturmak için phpsitemapng yi kullanıyorum 5 saatde bitirdiği yok daha kısa sürede yapabilcek birsey var mı bnu?
  • 15-10-2007, 22:38:04
    #2
    bende bir aralar forum sahibiyken:P buna çok kafa yormuştum işini en iyi yapan
    phpsitemapng idi gene..
    sana yegane tavsiyem scriptte ilgili alanı doldurarak gereksiz urlleri indexletmezsen
    daha hızlı bitirebilir sitemapi
  • 15-10-2007, 22:39:29
    #3
    GSiteCrawler kullaniyorum ben gayet memnunum, birde onu dene istersen.
  • 20-10-2007, 15:30:51
    #4
    ExTrAorDiNaRY adlı üyeden alıntı: mesajı görüntüle
    GSiteCrawler kullaniyorum ben gayet memnunum, birde onu dene istersen.
    vistada bir türlü çalıştıramadım
  • 21-10-2007, 09:51:15
    #5
    ExTrAorDiNaRY adlı üyeden alıntı: mesajı görüntüle
    GSiteCrawler kullaniyorum ben gayet memnunum, birde onu dene istersen.
    Bende Bu Programı Kullanıyorum. Bilgisayari KApattıgın Zaman durdurabiliyosun. Daha sonra Tekrar Kaldıgı Yerden Devam Ediyo. Sanada Tavsiye Ederim moonlight007 Oldukcada Saglıklı Cıkariyo Sitemapı.
  • 21-10-2007, 10:22:24
    #6
    Ya benim problemimde gsitecrawlerda çok çabuk bitiyor, 2 dakka sürmüyor sitenin öyle fazla sayfası yok ondanmı ilk defa kullanmıyorum, altta 3 tane sayfa gösteriyor, sitemapini oluşturamadığı , orda kalıyor ondan sonra generate yapayımmi yoksa o sayfanın kapanmaınımı bekleyim, 1 kere 3 saat bekledim yine aynı sayfalar, ilk programın başında ana sayfaları gösteriyor yukarda okadar.
  • 21-10-2007, 10:50:11
    #7
    Üyeliği durduruldu
    bunu php uzantılı kaydet hostuna at çalılştır çıkan verileri xml olarak kaydet

    Not:smf de deneedim diğer sistemleri bilmiyorum

    <?php
    
    require_once('SSI.php');
    
    if ($modSettings['smfVersion'] < '1.1')
        ob_start('ob_sessrewrite');
    
    header('Content-Type: text/plain');
    
    echo '<?xml version="1.0" encoding="UTF-8"?' . '>
    <urlset xmlns="http://www.google.com/schemas/sitemap/0.84">';
    
    $request = db_query("
        SELECT posterTime
        FROM {$db_prefix}messages
        WHERE ID_MSG >= " . ($modSettings['maxMsgID'] - 30) . "
        ORDER BY ID_MSG DESC
        LIMIT 10", __FILE__, __LINE__);
    $latest_post_times = array(time());
    while ($row = mysql_fetch_assoc($request))
        $latest_post_times[] = $row['posterTime'];
    mysql_free_result($request);
    
    $request = db_query("
        SELECT ID_BOARD
        FROM {$db_prefix}boards", __FILE__, __LINE__);
    $boards = array();
    while ($row = mysql_fetch_assoc($request))
    {
        $request2 = db_query("
            SELECT posterTime
            FROM {$db_prefix}messages
            WHERE ID_BOARD = $row[ID_BOARD]" . ($modSettings['totalMessages'] > 100000 ? "
                AND ID_MSG >= " . ($modSettings['maxMsgID'] * 0.5) : '') . "
            ORDER BY ID_MSG DESC
            LIMIT 10", __FILE__, __LINE__);
        $board_post_times = array(time());
        while ($row2 = mysql_fetch_assoc($request2))
            $board_post_times[] = $row2['posterTime'];
        mysql_free_result($request2);
    
        $boards[] = array(
            'id' => $row['ID_BOARD'],
            'times' => $board_post_times,
        );
    }
    mysql_free_result($request);
    
    $request = db_query("
        SELECT ID_TOPIC
        FROM {$db_prefix}topics
        ORDER BY numViews + numReplies DESC
        LIMIT 1000", __FILE__, __LINE__);
    $topics = array();
    while ($row = mysql_fetch_assoc($request))
    {
        $request2 = db_query("
            SELECT posterTime
            FROM {$db_prefix}messages
            WHERE ID_TOPIC = $row[ID_TOPIC]
            ORDER BY ID_MSG DESC
            LIMIT 10", __FILE__, __LINE__);
        $topic_post_times = array(time());
        while ($row2 = mysql_fetch_assoc($request2))
            $topic_post_times[] = $row2['posterTime'];
        mysql_free_result($request2);
    
        $topics[] = array(
            'id' => $row['ID_TOPIC'],
            'times' => $topic_post_times,
        );
    }
    mysql_free_result($request);
    
    $request = db_query("
        SELECT ID_MEMBER
        FROM {$db_prefix}members
        ORDER BY totalTimeLoggedIn DESC
        LIMIT 20", __FILE__, __LINE__);
    $members = array();
    while ($row = mysql_fetch_assoc($request))
    {
        $request2 = db_query("
            SELECT posterTime
            FROM {$db_prefix}messages
            WHERE ID_MEMBER = $row[ID_MEMBER]" . ($modSettings['totalMessages'] > 100000 ? "
                AND ID_MSG >= " . ($modSettings['maxMsgID'] * 0.5) : '') . "
            ORDER BY ID_MSG DESC
            LIMIT 10", __FILE__, __LINE__);
        $member_post_times = array(time());
        while ($row2 = mysql_fetch_assoc($request2))
            $member_post_times[] = $row2['posterTime'];
        mysql_free_result($request2);
    
        $members[] = array(
            'id' => $row['ID_MEMBER'],
            'times' => $member_post_times,
        );
    }
    mysql_free_result($request);
    
    // First, the forum URL.  Highest priority!
    echo '
        <url>
            <loc>', $scripturl, '</loc>
            <lastmod>', posts_max_time($latest_post_times), '</lastmod>
            <changefreq>', posts_to_freq($latest_post_times), '</changefreq>
            <priority>1.0</priority>
        </url>';
    
    // Now the boards!
    foreach ($boards as $board)
    {
        echo '
        <url>
            <loc>', $scripturl, '?board=', $board['id'], '.0</loc>
            <lastmod>', posts_max_time($board['times']), '</lastmod>
            <changefreq>', posts_to_freq($board['times']), '</changefreq>
            <priority>', posts_to_priority(0.8, $board['times']), '</priority>
        </url>';
    }
    
    // Popular topics too...
    foreach ($topics as $topic)
    {
        echo '
        <url>
            <loc>', $scripturl, '?topic=', $topic['id'], '.0</loc>
            <lastmod>', posts_max_time($topic['times']), '</lastmod>
            <changefreq>', posts_to_freq($topic['times']), '</changefreq>
            <priority>', posts_to_priority(0.7, $board['times']), '</priority>
        </url>';
    }
    
    // Most active members?
    foreach ($members as $member)
    {
        echo '
        <url>
            <loc>', $scripturl, '?action=profile;u=', $member['id'], '</loc>
            <lastmod>', posts_max_time($member['times']), '</lastmod>
            <changefreq>', posts_to_freq($member['times']), '</changefreq>
            <priority>', posts_to_priority(0.5, $board['times']), '</priority>
        </url>';
    }
    
    echo '
    </urlset>';
    
    function posts_max_time($post_times)
    {
        if (empty($post_times) || count($post_times) == 1)
            return gmstrftime('%Y-%m-%dT%H:%M:%S+00:00', time() - 3600 * 24 * 10);
    
        return gmstrftime('%Y-%m-%dT%H:%M:%S+00:00', max($post_times));
    }
    
    function posts_to_priority($base, $post_times)
    {
        if (empty($post_times) || count($post_times) == 1)
            return sprintf('%1.1f', $base);
    
        $s = (max($post_times) - min($post_times)) / count($post_times);
    
        if ($s < 3600 * 24)
            $mod = 0.1;
        else
            $mod = 0;
    
        return sprintf('%1.1f', $base + $mod);
    }
    
    function posts_to_freq($post_times)
    {
        if (empty($post_times) || count($post_times) == 1)
            return 'yearly';
    
        $s = (max($post_times) - min($post_times)) / count($post_times);
    
        // Changes more often than every hour.
        if ($s < 3600)
            return 'always';
        elseif ($s < 3600 * 12)
            return 'hourly';
        elseif ($s < 3600 * 24 * 4)
            return 'daily';
        else
            return 'monthly';
    }
    
    ?>