- Home
- Categorie
- La Community Connect.gt
- News Ufficiali da Connect.gt
- Script. Funziona per i motori?
-
Script. Funziona per i motori?
Ho modificato questo script per far girare le pagine del mio sito, con un titolo e le keywords personalizzate ad ogni articolo
Credete che i motori di ricerca creino problemi per la posizione dei <meta> e del <title> ???
Sotto posto tutto il codice.
Grazie
questa è la Index:
[php]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it" lang="it">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /></head>
<body>
<h1>Prova titolo</h1>
<?php
$p="main"; //pagina di default per i contenuti centrali
if(isset($_GET['page'])){ //pagina passata via parametro
$p=$GET['page'];
if($p!=basename($p) || !preg_match("/^[A-Za-z0-9-]+$/",$p) || $p=="index" || !file_exists($p.".php"))
$p="error"; //pagina di errore
}
include($p.".php");echo "<title> $titolo </title>\n"; //titoli specifici per articoli echo "<meta name=\"Keywords\" content=\"$key da qui key generali del sito \" />\n"; // keywords specifiche per articoli
?>
</body>
</html>[/php]
Questa è la Main:
[php]
<?php $titolo= 'Titolo diverso ad ogni pagina';
$key= 'key specifiche degli articoli';
?><table width="300" border="2">
<tr>
<td>Questa è main 1</td>
<td>Prova titolo</td>
</tr>
</table>[/php]
-
Ho fatto una prova anche qui:
http://www.izzyweb.it/test/
Adesso vedo se Google mi da qualche errore !!
-
Ciao, Izzyweb...
Scusami, ma perchè hai bisogno del tag title e meta dentro al body, andrebbero dentro head...Forse funzionerà benissimo con i motori (e con quasi tutti i browser perchè flessibili) ma se emuli un browser testuale (ad esempio con Opera) ti ritrovi il testo del <title> in mezzo alla pagina...
-
funziona se metti tutto nell'head altrimenti non rimani valido allo standard.
io ho fatto qualcosa di più complesso, ti do uno spunto. Praticamente ho una lista di keyword che voglio indicizzare. Per ogni pagina effettuo una keyword density (è semplice da calcolare con il php se vuoi ti metto il codice di quello ke ho fatto) e poi faccio un match tra le parole con più alta keyword density e le keyword che voglio indicizzare. Fatto ciò estraggo le mie key e le inserisco nel meta keyword
buona fortuna
-
@domenico.biancardi said:
funziona se metti tutto nell'head altrimenti non rimani valido allo standard.
io ho fatto qualcosa di più complesso, ti do uno spunto. Praticamente ho una lista di keyword che voglio indicizzare. Per ogni pagina effettuo una keyword density (è semplice da calcolare con il php se vuoi ti metto il codice di quello ke ho fatto) e poi faccio un match tra le parole con più alta keyword density e le keyword che voglio indicizzare. Fatto ciò estraggo le mie key e le inserisco nel meta keyword
buona fortuna
Ciao domenico
Se mi posti il codice mi fai un piacere non sono tanto esperto di php è il mio primo sito...
Grazie
-
per la tua pagina fai così
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it" lang="it"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <?php $p="main"; //pagina di default per i contenuti centrali if(isset($_GET['page'])){ //pagina passata via parametro $p=$_GET['page']; if($p!=basename($p) || !preg_match("/^[A-Za-z0-9\-_]+$/",$p) || $p=="index" || !file_exists($p.".php")) $p="error"; //pagina di errore } include($p.".php"); echo "<title> $titolo </title>\n"; //titoli specifici per articoli echo "<meta name=\"Keywords\" content=\"$key da qui key generali del sito \" />\n"; // keywords specifiche per articoli ?> </head> <body> <h1>Prova titolo</h1> </body> </html>
una prima ottimizzazione del codice è questa
<?php ob_start(); echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it" lang="it"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> '; $p="main"; //pagina di default per i contenuti centrali if(isset($_GET['page'])){ //pagina passata via parametro $p=$_GET['page']; if($p!=basename($p) || !preg_match("/^[A-Za-z0-9\-_]+$/",$p) || $p=="index" || !file_exists($p.".php")) $p="error"; //pagina di errore } include($p.".php"); echo "<title> $titolo </title>\n"; //titoli specifici per articoli echo "<meta name=\"Keywords\" content=\"$key da qui key generali del sito \" />\n"; // keywords specifiche per articoli echo "</head> <body> <h1>Prova titolo</h1> </body> </html> "; ?>
in questo modo php si crea un buffer per la visualizzazione video e tutto quello ke viene bufferizzato viene visualizzato alla fine dello script (eviti vari problemi di IO con il video)
prova e fammi sapere
-
ho capito quello che ti serve. Una soluzione che posso darti è questa
[PHP]
function keyDensity($url){
$word = split("[[:space:][:blank:][:punct:][:space:]]",$html);
$result[] = null;
for ($i = 0;$i<count($word);$i++){
if (strlen($word*)>3)
$result[$word*] ++;
}
arsort($result);
$result = array_keys($result);
return $result;}
$keyword = keyDensity("http://www.tuodomini.it/".$_SERVER['REQUEST_URI']);
//ora hai un array con le keyword che compaiono di più nella tua pagina
$keyString = implode(' ',$keyword);
/**in questo modo ottieni una stringa da inserire nel meta keywod
*il resto del codice è uguale
*devi solo sostiture la stringa $key con la nuova stringa $keyString
**/
[/PHP]