% ' ------------------------------------------------------------------------------------------------------------------ sub PageTitle( sDefaultTitle , sBefore , sAfter ) ' ------------------------------------------------------------------------------------------------------------------ ' ' restituisco il nome del file dal quale fine chiamato ' sostituendo "-" e "_" con degli spazi ' eliminando l'estensione del file ' ipostando la prima lettera maiuscola ' ' il parametro opzionale sDefaultTitle viene usato nel caso che la pagina sia index e negli altri casi viene aggiunto in coda ' optionalmente si puņ indicare anche del testo prima e dopo sScriptName = lcase(Request.ServerVariables("script_name")) aPageTitle = split(sScriptName,"/") sPageTitle = aPageTitle(ubound(aPageTitle)) sPageTitle = replace(sPageTitle,"_"," ") sPageTitle = replace(sPageTitle,"-"," ") sPageTitle = replace(sPageTitle,".asp","") if not isvoid(sDefaultTitle) then sPageTitle = sPageTitle & " | " if mid(sPageTitle,1,5) = "index" then sPageTitle = "" sPageTitle = ucase(Left(sPageTitle,1)) & Mid(sPageTitle,2) & sDefaultTitle echo sBefore & sPageTitle & sAfter end sub ' ------------------------------------------------------------------------------------------------------------------ sub Meta( bDescription , bKeywords ) ' ------------------------------------------------------------------------------------------------------------------ ' ' scrive 4 meta tag: generator , robots , description , keywords ' i meta description e keywords sono opzionali ' il contenuto dei tag viene generato prendendo il sorgente della pagina da cui viene richiamato ' ' per description prendo il contenuto del tag h1 , h2 , h3 , in coda aggiungo il nome della pagina ' e se presente il contenuto del file description.meta presente nella stessa directory ' ' per keywords prendo il contenuto del tag strong , em , b , i e se presente il contenuto del file ' keywords.meta presente nella stessa directory ' sScriptName = lcase(Request.ServerVariables("script_name")) aPageTitle = split(sScriptName,"/") sPageTitle = aPageTitle(ubound(aPageTitle)) sPageText = inputfile( sPageTitle , "r" , "") sPageText = RemoveTag(sPageText,"\%") sPageText = RemoveTag(sPageText,"a") sPageTitle = replace(sPageTitle,"_"," ") sPageTitle = replace(sPageTitle,"-"," ") sPageTitle = replace(sPageTitle,".asp","") sPageTitle = replace(sPageTitle,"index","") sMetaDescription = "" & _ GetTagMatches( sPageText , "h1" ) & _ GetTagMatches( sPageText , "h2" ) & _ GetTagMatches( sPageText , "h3" ) & _ inputfile( "description.meta" , "r" , "") & _ sPageTitle sMetaKeywords = "" & _ GetTagMatches( sPageText , "strong" ) & _ GetTagMatches( sPageText , "b" ) & _ GetTagMatches( sPageText , "i" ) & _ GetTagMatches( sPageText , "em" ) & _ inputfile( "keywords.meta" , "r" , "") print " " print "" if bDescription and not isvoid(sMetaDescription) then print "" end if if bKeywords and not isvoid(sMetaKeywords) then print "" end if end sub ' ------------------------------------------------------------------------------------------------------------------ Function GetTagMatches( sText , sTag ) ' ------------------------------------------------------------------------------------------------------------------ ' funzione di supporto ' restituisce il contenuto del tag indicato all'interno della stringa separato da uno spazio ' es. ' GetTagMatches( "
fraseLorem ipsum dolor sit amet, consectetuer adipiscing elit
" ,"strong" ) ' >> dolor adipiscing GetTagMatches = "" Dim re Set re = New RegExp re.Pattern = "<" & sTag & "(.*?)<\/" & sTag & ">" re.IgnoreCase = True re.Global = True For Each ma In re.Execute(sText) GetTagMatches = RemoveTag( ma.Value , "" ) & " " & GetTagMatches Next end function %>