22 Ağustos 2008, 07:44:23 *
Forum-FormTurk-Smf-Vbulletin-Php-Seo-Program-Video-FormTurk.oRg
Merhaba, Ziyaretçi. Lütfen giriş yapın veya üye olun.

Kullanıcı adınızı, parolanızı ve aktif kalma süresini giriniz
   Ana Sayfa   Yardım Ara iletisim Giriş Yap Kayıt  

Reklamlar
Ayrıntılı Konu Bilgileri
Konu BaşlığıKonu: SMF forum indexlenmesi çok pratik.[Test edildi]
Cevap SayısıCevap Sayısı: 1 cevap var
Okunma SayısıOkunma Sayısı 250 defa
Konuyu Görüntüleyenler0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Sayfa: 1   Aşağı git
  Yazdır  
Gönderen Konu: SMF forum indexlenmesi çok pratik.[Test edildi]  (Okunma Sayısı 250 defa)
0 Üye ve 1 Ziyaretçi konuyu incelemekte.
10 Aralık 2007, 16:25:35
Site Kurucusu
*
Uye No: 1
Cinsiyet: Bay
Mesaj Sayısı: 2718
Nerden: İnönü Mah.
Karma: 4
WWW E-Posta
Takimim:

Kod:
<?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';
}

?>

yapmanız gerekenler
1 :

Kod:
LIMIT 1000", __FILE__, __LINE__);

üstte verdiğim cod da LIMIT 1000 sayısı sizin forumda kaç tane konu varsa onu belirtin

Kod:
LIMIT 20", __FILE__, __LINE__);

bu code de LIMIT 20 yazan yeri forumda kaç üyeniz varsa limit belirleyin.


1 dediğim : konu sayısını belirler.Bunu da konu sayının biraz daha üstüne ayarlarsan sorun olmaz.
2 dediğim :İkinci dediğimde kullanıcı profilleri kaç tane istersen ayarlayabilirsiniz.

SMF kullanan bir sürü arkadaş forum indexlenmiyor diye dert yanmıştı bende çok sıkıntı çekiyordum bu konuda bir sürü program denedim fakat çok uzun sürdüğü için hep yarıda bıraktım üssteki code ise herşeyi kolaşlaştırıyor.

yukardaki kodu boş tane .php dosyası oluşturun içine atın codeleri ve kaydettikten sonra ftp forum ana dizine atın .php dosyasını ondan sonra
siteadi.com/forum/xxx.php açın ve bekleyin size herşeyi hazırlıcak sitemap hazırlama işi bittikten sonra sitemap.xml diye dosya yaratın ve xxx.php deki tüm linkleri sitemap.xml içine aktarın gerisi biliyorsun google.com/webmasters/sitemap sitemap kaydedin 2 önce yaptım ve bugun kontrol ettim forum daki konular indexlenmiş

---------------------------------------------------------------------

en başta 'Linklerin Görülmesine Izin Verilmiyor
Linki Görebilmek Için Üye Ol veya Giris Yapı.com/sitemap.php"  seklinde sayfayı acıyoruz.sonra sitemap olusturlmaya başalıyor ve bittiginde mouseun sağ tuşuna tıklayıp Kaynağı Görüntüle diyoruz.Sonra bu kaynağı farklı kaydet diyip Sitemap.xml şeklinde kaydediyoruz ve sitemize yukluyoruz....

Yani sakın sizde benim gibi şunu yapmayın ;

Sitemap.php yi çalıstırıp orda olusturulan sitemapı kopyala yapıştır tekinigyle başka bi belgeye yapıştırıp onuda siteye yuklemeyin sonra o bahsettigimiz hata karısımıza cıkar!!!
Bu Sayfayı Paylaş
Google Ekle Yumile Ekle Yahoo Ekle Msn Ekle Netspace Ekle Ask Ekle Clesto Ekle Digg Ekle Reddit Ekle Furl Ekle Del.icio.us Ekle Submit to Jeqq Spurl Ekle Technorati Ekle Newsvine Ekle Simpy Ekle BlinkList Ekle Shadows Ekle
Logged
OnuЯ'in Imzasi

Linklerin Görülmesine Izin Verilmiyor
Linki Görebilmek Için Üye Ol veya Giris Yap
www.FormTurK.Org


FormTurk.Org

0wn3d
15 Nisan 2008, 19:01:07
Yeni Üye
*
Avatar Yok
Uye No: 2196
Mesaj Sayısı: 1
Karma: 0
Takimim:

 :)saol işe yarıyacak mı diye bakıcam şimdiden teşekkürler
Bu Sayfayı Paylaş
Google Ekle Yumile Ekle Yahoo Ekle Msn Ekle Netspace Ekle Ask Ekle Clesto Ekle Digg Ekle Reddit Ekle Furl Ekle Del.icio.us Ekle Submit to Jeqq Spurl Ekle Technorati Ekle Newsvine Ekle Simpy Ekle BlinkList Ekle Shadows Ekle
Logged
Sayfa: 1   Yukarı git
  Yazdır  
 
Gitmek istediğiniz yer:  

Benzer Konular
Konu Başlığı Başlatan Yanıtlar Görüntülenme Son Mesaj
SMF Forum KuruLum, Style ve Diger Forum BültenLerinden DB Dönüştürme ASP / PHP / CGI NapsT3r 0 208 Son Mesaj 07 Aralık 2007, 20:43:18
Gönderen: NapsT3r
Forum Üyeleri Fıkralar , Yazılar , Sözler lucifear 0 93 Son Mesaj 21 Şubat 2008, 17:45:10
Gönderen: lucifear
Yemek Yaparken Uygulayabileceğiniz Pratik Bilgiler Kadinlar-Erkekler Quarnaz 0 82 Son Mesaj 17 Mayıs 2008, 17:10:42
Gönderen: Quarnaz
Temizlik Yaparken Uygulayabileceğiniz Pratik Bilgiler Kadinlar-Erkekler Quarnaz 0 88 Son Mesaj 17 Mayıs 2008, 17:11:23
Gönderen: Quarnaz
Xp'de İyi Perofrmans İçin Pratik Bilgiler Windows İşletim Sistemi alikazan 0 61 Son Mesaj 18 Mayıs 2008, 11:10:02
Gönderen: alikazan
|Site Map | Arsiv | Arsiv 2 | Wap | Wap2 | Wap Forum | XML | Rss
eXTReMe Tracker
Bu Sayfa 0.604 Saniyede 22 Sorgu ile Oluşturuldu