lug 05 2007

yabb-sitemap.asp : come creare la sitemap per YaBB su server windows

Published by Stampa Articolo Stampa Articolo

 Ecco lo script ASP per far generare la SiteMap di YaBB (Yet another Bulletin BoardYaBB!)
Lo script è molto semplice ma funziona benissimo.
Copia&Incolla il testo in Blocco Note e salva il file come yabb-sitemap.asp
Pubblicalo nella root del tuo sito e dallo in pasto a Google!

Visto che probabilmente WP non permetterà il Copy&Paste senza creare pasticci di formattazione e rimandi a capo di linea, ti consiglio di scaricare il sorgente di YaBB SiteMap Script

Se invece vuoi rischiare, ecco il sorgente da copiare:

——————————- COPIA DA QUI SOTTO —————————–

<%
'yabb-sitemap.asp - create your Sitemap for your YaBB Bulletin Board - http://www.yabb.com/
'Copyright (C) 2007 Andrea Spedale - http://www.spedale.com  
'This program is free software: you can redistribute it and/or modify it under the terms of
'the GNU General Public License as published by the Free Software Foundation,
'either version 3 of the License, or any later version.
'This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
'without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
'See the GNU General Public License for more details.
'You should have received a copy of the GNU General Public License along with this program.
'If not, see http://www.gnu.org/licenses/.
'Le variabili di cui avremo bisogno.
Dim boardescluse, percorso, urlyabb, arrBoard, righeXML, objFSO, objFile
Dim objFolder, strTemp, objOpenFile, strRead, strMessID, strBoard
' configura queste variabili per il tuo sito 
boardescluse = "filenameboard1,filenameboard2,filenameboard3"   'solo nome senza estensione
percorso = "/cgi-bin/unishop/yabb/boards/"                      ' ricordati / inizio e / fine
urlyabb = "http://www.tuosito.it/cgi-bin/yabb/YaBB.pl?board="   
arrBoard = Split(boardescluse, ",")
' non è necessario apportare alcun cambiamento
function FindItemInArray(arrItems, item)
  dim pos
  pos = -1
  dim i
  ' verifica che il primo parametro sia un array
  if isarray(arrItems) then
    ' scorri i valori dell'array...
    for i=0 to ubound(arrItems)
      ' corrispondenza trovata?
      if(arrItems(i)=item)then
        ' memorizza la posizione nell'array ed esci dal ciclo for
        pos = i
        exit for
      end if
    next
  end if
  ' restituisci la posizione nell'array (o -1 se valore non trovato)
  FindItemInArray = pos
end function
'Inizializziamo il FileSystemObject
set objFSO = Server.CreateObject("Scripting.FileSystemObject")
'Associamo la cartella contenente i file relativi ai
'forum alla variabile objFolder.
set objFolder = objFSO.GetFolder(Server.Mappath(percorso))
'Eseguiamo un ciclo per processare ogni file nella cartella.
For Each objFile in objFolder.Files
 'Otteniamo il nome chiave del forum togliendo ".txt" dal nome del file esaminato.
 strBoard = Replace(objFile.Name, Right(objFile.Name, 4), "")
 'Se fa parte delle board pubbliche presente avrà un valore diverso da -1
 presente = FindItemInArray(arrBoard, strBoard)
  'Selezioniamo solo i file di testo (estensione .txt) non vuoti (dimensione superiore a 0)
 If objFile.Size > 0 and objFSO.GetExtensionName(objFile.Name) = "txt" then
  'Apriamo il file
  set objOpenFile = objFSO.OpenTextFile(objFile.Path, 1)
  'Leggiamo le righe del file relative ai messaggi nel forum che stiamo analizzando.
  Do While Not objOpenFile.AtEndOfStream
   strTemp = objOpenFile.ReadLine
   'Otteniamo l'id del messaggio prendendo il primo elemento dell'array costruito
   'spezzando con il carattere "|" la riga letta.
   strMessID = Split(strTemp, "|")(0)
   'Otteniamo il titolo del messaggio selezionando il secondo elemento dell'array.
   strRead = Split(strTemp, "|")(1)
   'Se fa parte delle board pubbliche Costruiamo il collegamento e stampiamo
   'il risultato ottenuto.
   if presente = -1 then
    riga = urlyabb & strBoard & ";action=display;num=" & strMessID
    righeXML = righeXML & "<url>"
      righeXML = righeXML & "<loc>" & Server.HTMLencode(riga) & "</loc>"
    righeXML = righeXML & "</url>"
   end if
  Loop
  'Chiudiamo il file.
  objOpenFile.Close
   end if
Next
'Liberiamo le risorse
Set objFSO = Nothing
Set objFile = Nothing
Set objFolder = Nothing
Set objOpenFile = Nothing
Dim generaXML
generaXML = "<?xml version='1.0' encoding='UTF-8'?>"
generaXML = generaXML & "<urlset xmlns='http://www.google.com/schemas/sitemap/0.84'>"
generaXML = generaXML & righeXML
generaXML = generaXML & "</urlset>"
Response.ContentType = "text/xml"
Response.Write generaXML
%>
 ------------------------------- COPIA FINO A QUI SOPRA -----------------------------

2 responses so far

2 Risposte a “yabb-sitemap.asp : come creare la sitemap per YaBB su server windows”

  1. dschibuton 30 set 2008 at 04:49

    I started this discussion to discuss public available web proxies:

    Which are really anonymous?

    Which can unblock facebook, myspace etc, in other words: are fresh ?

    Which can you recommend?

    Thanks for your help,
    Dschibut

    P.S.: In my country, the freedom of speech is somehow constrained, please give me a hint, if you have doubts about your recommendation.

  2. FahUsanteenemon 05 ott 2008 at 23:12

    Hi, everybody!

    I think, that this is a great forum. Very intresting and useful.
    But I can’t find the search function, cause I want faster find the topics that could be intresting for me to express my opinion…
    Please help me with search function on this forum!

Trackback URI |

Get Adobe Flash player