Web design, web development e seo
20 Nov
Italian WebDesign, uno dei più autorevoli blog italiani di webdesign ha organizzato un contest per rifare la propria grafica.
Il contest, che scade il 20 Gennaio 2008, premia il vincitore con un link nel footer del sito.
Buon contest a tutti!
15 Nov
mod_rewrite sulla directory Freeglobes seguite questi semplici passaggi.
Andate nel vostro pannello di amministrazione della directory, poi plugins ed infine URL rewrite, cliccate su enable.
Quando ritornerete nella home della directory avrete tutti i link cambiati col finale che finisce .html, ci cliccate sopra e vi darà sicuramente un errore 404.
Non spaventatevi, nulla di grave!
Dovete semplicemente editare il file .htaccess, quindi:
aprite il file .htaccess (che risulterà vuoto) presente nella cartella della directory che avete sul vostro PC e andate ad inserire il seguente codice:
RewriteEngine on
RewriteBase /directoryRewriteRule ^(.*)-f-([0-9]*)-([0-9]*).html$ feed.php?feedid=$2&linkid=$3 [L]
RewriteRule ^(.*)-s-([0-9]*).html$ single.php?id=$2 [L]
RewriteRule ^(.*)-t-([0-9]*).html$ tag.php?name=$1&id=$2 [L]
RewriteRule ^(.*)-c-([0-9]*).html$ index.php?name=$1&dir=$2 [L]
RewriteRule ^(.*)-k-([0-9]*).html$ index.php?do=keywords&words=$1&id=$2 [L]
RewriteRule ^(.*)-c-([0-9]*)-p-([0-9]*).html$ index.php?name=$1&dir=$2&start=$3 [L]
RewriteRule ^top-rank([0-9]{1,2}).html$ index.php?do=top-rank&pr=$1 [L]
RewriteRule ^(([a-z]|-)*).html$ index.php?do=$1 [L]
Fatto ciò, salvate il file e uploadatelo nella root della directory.
Un altro modo per editare l’.htaccess è questo: andate nel pannello di controllo del vostro sito su AV, gestione file, root dove avete messo i file della directory, il primo file che vi troverete è l’.htaccess, cliccate sull’immagine che rappresenta degli ingranaggi ed entrate nel file per editarlo.
Qui troverete un file non vuoto e che presenterà questo codice:
RewriteEngine on
RewriteRule ^(.*)-f-([0-9]*)-([0-9]*).html$ feed.php?feedid=$2&linkid=$3 [L]
RewriteRule ^(.*)-s-([0-9]*).html$ single.php?id=$2 [L]
RewriteRule ^(.*)-t-([0-9]*).html$ tag.php?name=$1&id=$2 [L]
RewriteRule ^(.*)-c-([0-9]*).html$ index.php?name=$1&dir=$2 [L]
RewriteRule ^(.*)-k-([0-9]*).html$ index.php?do=keywords&words=$1&id=$2 [L]
RewriteRule ^(.*)-c-([0-9]*)-p-([0-9]*).html$ index.php?name=$1&dir=$2&start=$3 [L]
RewriteRule ^top-rank([0-9]{1,2}).html$ index.php?do=top-rank&pr=$1 [L]
RewriteRule ^(([a-z]|-)*).html$ index.php?do=$1 [L]
a questo codice dovrete aggiungere sotto RewriteEngine on il RewriteBase /directory: il risultato sarà uguale.
Un’ultima cosa. Quando inserite il RewriteBase /directory, quest’ultima parola e cioè directory è il nome della root dove avete i file della stessa, quindi se il nome della root è diverso dovete cambiarlo con quello che utilizzate voi, altrimenti vi continuerà a dare errore 404.
A questo punto la vostra directory è pronta per essere indicizzata al meglio dai motori di ricerca.
Ciao!!!
14 Nov
La foto che segue è stata scattata all’ultimo IAB Forum di Milano… e conferma una situazione palese: Google ha qualche difficoltà di posizionamento.
Per vedere la foto, saltate alla seconda parte…

Statemi bene…
(ripreso da una segnalazione di WebNews.it)
13 Nov
Ho tradotto (con l’aiuto dello staff, spero al meglio
) il tutorial sulle API maps di Google presente su questo blog.
Eccolo
Prima di addentrarsi in questo complicato tutorial, si raccomanda di guardarde una Google Map già sviluppata.
Dopo aver risposto su una discussione nel forum Godbit, l’utente ha creato questa breve guida sulle Google Maps API.
Dopo aver letto questo tutorial sarai capace di:
Vedi un esempio prima di iniziare.
Puoi anche vedere qui, c’è la Google map Vance Auto Sales.
Nota Bene: Google ha aggiornato la propria API il 3 aprile 2006. L’autore della guida ha modificato questo codice prima di scrivere questo tutorial per l’utilizzo della nuova API, quindi tutte le caratteristiche della versione 2 dell’API dovrebbero essere disponibili se si vuole inserirle. Inoltre, Google non fornisce alcun tipo di algoritmo di routing nelle API, quindi, se un utente digita un indirizzo e chiede le indicazioni stradali per arrivarvi, si apre una nuova finestra di Google Maps (originale) con tali indicazioni.
Step 1 - Registra una key API
Prima di inserire una mappa sul tuo sito cerca di registrare una Google API key.
Per registrarti, dovrai inserire l’url del sito che sta usando questa key. La scelta migliore per tale URL è la cartella principale del tuo sito, in questo modo potrai utilizzare la mappa anche in tutte le sue sottocartelle (piuttosto che l’indirizzo assoluto della pagina che userà la mappa). Facendo in questo modo sarà possibile far girare su tutte le pagine del sito la mappa. Ad esempio inserisci http://www.mandladventures.com
Lascia la pagina contentente la key aperta, cosi tu puoi copiare ed incollare la key in più step.
Ricorda che se stai testando su un server localhost, quando upperai in un server online avrai bisogno di due separate key API.
Step 2 - individua le coordinate geografiche
Google attualmente non ha un “geocoding”. Quindi bisogna usare un alternativo.
Geocoder.us è quello consigliato.
Semplicemente inserisci l’indirizzo di cui cerchi le coordinate, e Geocoder.us ti restituisce la latitudine e la longitudine.
Geocoder.us però fornisce solo gli indirizzi degli Stati Uniti. Per cercare altri indirizzi cerca free geocoder su Google.
Step 3 - Creare un file XML
Questo file XML riporterà tutti i punti che marcherai nella mappa. Questo file prevede anche il testo che apparirà quando il marcatore è selezionato. Nel nostro esempio creeremo solo un marcatore. Se vuoi più di un marcatore nella mappa basta aggiungerne nel codice XML qui sotto.
<markers><marker lat="35.827818" lng="-86.072576" html="<b/>First Baptist Church</b/> <br /> 405 West Main Street, <br /> Woodbury, TN 37190" label="FBC"/></markers>
Sostituisci lat=”35.827818″ con la latitudine del tuo indirizzo
Sostituisci lng=”-86.072576″ con la longitudine del tuo indirizzo
Sostituisci “First Baptist Church” con il nome della tua città.
Cambia “405 West Main Street, <br /> Woodbury, TN 37190″ con il tuo indirizzo.
Cambia il label=”FBC” con quello che vuoi.
Salva il file con nome “map.xml” e uppalo nella stessa directory dove inserirai la pagina della mappa. Potresti inserirlo in un’altra directory, però poi dovresti cambiare tutti i riferimenti in “map.xml” allo step 7 del codice per farlo puntare alla tua directory.
Ricorda: il linguaggio XML richiede tutti caratteri “speciali” di HTML.
Si elenca una lista comune di caratteri “speciali”.
< = < ;
> = > ;/ = / ;
] = ] ;[ = [ ;
" = " ;
' = ' ;
Step 4 - Richiama l’API con la tua key
Inserisci il codice seguente nell’head della tua pagina web, ponendo la tua key API al posto di key=ABQIAAAAbTgUqmDVtw6KNosttYwutxR-kQiDMsqewHdPfI0JvuxAHQRqVhQsEF-filcfK_gQIlIUCIcFhtJH0Q”
<script src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAbTgUqmDVtw6KNosttYwutxR-kQiDMsqewHdPfI0JvuxAHQRqVhQsEF-filcfK_gQIlIUCIcFhtJH0Q" mce_src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAbTgUqmDVtw6KNosttYwutxR-kQiDMsqewHdPfI0JvuxAHQRqVhQsEF-filcfK_gQIlIUCIcFhtJH0Q" type="text/javascript"></script>
Step 5 - Aggiungi un evento onunload nel tag body
<body onunload=”GUnload()”>
Step 6 - Posiziona il div contenente la mappa
<div id="map" style="width: 550px; height: 450px; border: 1px solid #000000;"></div><!Questo messaggio sarà visualizzato se JavaScript è disabilitato dal browser dell'utente-->
<noscript><strong>JavaScript deve essere abitiliato affinche lei possa usare le API Maps di Google.</strong><br />Sembra che JavaScript è disabilitato o non è supportato dal suo browser. <br />
Per visualizzare la Google Maps, abiliti JavaScript cambiando le opzioni del browser, e riprovi.<br /><br />
</noscript>
Inserisci questo div dove vuoi che la mappa compaia
Cambia lo stile per adattarlo a quello del tuo sito.
Step 7 - Inserisci la parte finale di codice
Inserisci questo codice prima dei tag di chiusura </body> e </html> della pagina in cui hai inserito la mappa
<script type="text/javascript">
//<![CDATA[//the original code had a GMapSidebar to pick the markers from, I eliminated the GMapSidebar,
//but deleting the code that referenced the bar corrupted the rest of the code
//so just ignore references to GMapSidebar, unless you're really with JavaScript
if (GBrowserIsCompatible()) {
// this variable will collect the html which will eventually be placed in the GMapSidebar
var GMapSidebar_html = "";// arrays to hold copies of the markers and html used by the GMapSidebar
// because the function closure trick doesnt work therevar gmarkers = [];
var htmls = [];
var i = 0;
// arrays to hold variants of the info window html with get direction forms open
var to_htmls = [];
var from_htmls = [];// A function to create the marker and set up the event window
function createMarker(point,name,html) {var marker = new GMarker(point);
// The info window version with the “to here” form open (The Directions Form part.)
to_htmls[i] = html + ‘<br>Directions: <b>To here</b> - <a href=”javascript:fromhere(’ + i + ‘)”>From here</a>’ +‘<br>Start address:<form action=”http://maps.google.com/maps” method=”get” target=”_blank”>’ +
‘<input type=”text” size=40 maxlength=40 name=”saddr” id=”saddr” value=”" /><br>’ +
‘<input value=”Get Directions” TYPE=”submit”>’ +‘<input type=”hidden” name=”daddr” value=”‘ + point.lat() + ‘,’ + point.lng() +
// “(” + name + “)” +
‘”/>’;
// The info window version with the “to here” form open
from_htmls[i] = html + ‘<br>Directions: <a href=”javascript:tohere(’ + i + ‘)”>To here</a> - <b>From here</b>’ +‘<br>End address:<form action=”http://maps.google.com/maps” method=”get”" target=”_blank”>’ +
‘<input type=”text” size=40 maxlength=40 name=”daddr” id=”daddr” value=”" /><br>’ +
‘<input value=”Get Directions” type=”SUBMIT”>’ +‘<input type=”hidden” name=”saddr” value=”‘ + point.lat() + ‘,’ + point.lng() +
// “(” + name + “)” +
‘”/>’;
// The inactive version of the direction info
html = html + ‘<br>Directions: <a href=”javascript:tohere(’+i+’)” mce_href=”javascript:tohere(’+i+’)”>To here</a> - <a href=”javascript:fromhere(’+i+’)” mce_href=”javascript:fromhere(’+i+’)”>From here</a>’;GEvent.addListener(marker, “click”, function() {
marker.openInfoWindowHtml(html);
});
// save the info we need to use later for the GMapSidebar
gmarkers[i] = marker;
htmls[i] = html;
// add a line to the GMapSidebar html
GMapSidebar_html += ‘<a href=”javascript:myclick(’ + i + ‘)”>’ + name + ‘</a><br>’;i++;
return marker;
}// This function picks up the click and opens the corresponding info window
function myclick(i) {
gmarkers[i].openInfoWindowHtml(htmls[i]);
}// functions that open the directions forms
function tohere(i) {
gmarkers[i].openInfoWindowHtml(to_htmls[i]);
}
function fromhere(i) {
gmarkers[i].openInfoWindowHtml(from_htmls[i]);
}//******************************************************
//Edit these options to CONFIGURE THE MAP
// create the map
var map = new GMap2(document.getElementById(”map”));
//GLargeMapControl adds large zoom and pan controls on the left,
//you can change it by picking from two of the options described below
//there is a GSmallMapControl for a smaller pan/zoom control
//also there is GSmallZoomControl - a small zoom control (no panning controls)
map.addControl(new GLargeMapControl());//this adds the Map, Satellite, and Hybrid buttons, delete line if you don’t want it
map.addControl(new GMapTypeControl());
//this adds a scale to the bottom left of the map, delete line if you don’t want it
map.addControl(new GScaleControl());//type in the Geo Coordinates and default zoom level below. (Latitude, Longitude), Zoom level);
//these Coordinates set the center of the map, they do not place the marker.
//that is done in the map.xml file. If you want a marker to be centered, type//the same coordinates here that are used for that marker in the map.xml file
//0 is zoomed all the way out.map.setCenter(new GLatLng(35.827818,-86.072576), 12);
//******************************************************// Read the data from map.xml
var request = GXmlHttp.create();
request.open(”GET”, “map.xml”, true);
request.onreadystatechange = function() {if (request.readyState == 4) {
var xmlDoc = request.responseXML;// obtain the array of markers and loop through it
var markers = xmlDoc.documentElement.getElementsByTagName(”marker”);for (var i = 0; i < markers.length; i++) {
// obtain the attribues of each marker
var lat = parseFloat(markers[i].getAttribute(”lat”));var lng = parseFloat(markers[i].getAttribute(”lng”));
var point = new GLatLng(lat,lng);var html = markers[i].getAttribute(”html”);
var label = markers[i].getAttribute(”label”);
// create the marker
var marker = createMarker(point,label,html);
map.addOverlay(marker);
}
// put the assembled GMapSidebar_html contents into the GMapSidebar divdocument.getElementById(”GMapSidebar”).innerHTML = GMapSidebar_html;
}}
request.send(null);
}else {
alert(”Sorry, the Google Maps API is not compatible with this browser”);
}// This Javascript is based on code provided by the
// Blackpool Community Church Javascript Team// http://www.commchurch.freeserve.co.uk/
// http://www.econym.demon.co.uk/googlemaps/
//slight modifications by Matt from http://www.mandladventures.com///]]>
</script>
Step 8 - Configura la mappa
Modifica il codice della sezione sottostante per configurare la mappa a tuo piacimento.
//******************************************************
//Edit these options to CONFIGURE THE MAP
// create the map
var map = new GMap2(document.getElementById(”map”));
//GLargeMapControl adds large zoom and pan controls on the left,//you can change it by picking to of the options described below
//there is a GSmallMapControl for a smaller pan/zoom control//also there is GSmallZoomControl - a small zoom control (no panning controls)
map.addControl(new GLargeMapControl());//this adds the Map, Satellite, and Hybrid buttons, delete line if you don’t want it
map.addControl(new GMapTypeControl());//this adds a scale to the bottom left of the map, delete line if you don’t want it
map.addControl(new GScaleControl());//type in the Geo Coordinates and default zoom level below. (Latitude, Longitude), Zoom level);
//these Coordinates set the center of the map, they do not place the marker.
//that is done in the map.xml file. If you want a marker to be centered, type
//the same coordinates here that are used for that marker in the map.xml file
//0 is zoomed all the way out.
map.setCenter(new GLatLng(35.827818,-86.072576), 12);
//******************************************************
Imposta un punto centrale della mappa, ed il livello di zoom.
Sostituisci 35.827818 con la tua latitudine
Sostituisci -86.072576 con la tua longitudine.
Sostituisci 12 con il tuo livello desiderato di zoom. 0 corrisponde alla più larga visuale disponibile( ovvero il territorio visibile è il maggiore possibile).
Per cancellare un controllo rimuovi la riga di codice corrispondente.
Inoltre puoi cambiare i tipi di controllo usati sulla mappa.
Ad esempio, alcuni controlli possono essere più grandi o più piccoli: regolarli può essere utile se hai una mappa piccola. Nel codice sono inseriti come commenti i nomi dei controlli alternativi. Prova, ad esempio, a sostituire GLargeMapControl con GSmallMapControl.
Step 9 - Tutorial Completo
Goditi il risultato!
Scarica il Sorgente usato dalla versione originale del tutorial.
Per saperne di più vedi anche le seguenti risorse:
Un ringraziemento speciale va a:
13 Nov
Quella che segue è una mia traduzione di una presentazione PowerPoint di Matt Cutts, ingegnere software di Google, presentata al Wordcamp del 21/07/2007. Questa presentazione è stata pensata principalmente per Wordpress, ma i consigli (a parte quelli degli ultimi paragrafi), possono ritenersi validi anche per altre piattaforme di blogging.
Buona lettura!
1. MISCREDENZE
Google odia alcuni siti?
Il caso:
http://www.alexchiu.com/spread.htm
http://alexchiu.com/eternallife/
Il riscontro:
http://www.mattcutts.com/blog/avoid-keyword-stuffing/
2. PLUGIN UTILIZZATI
- Akismet
-
Protezione matematica da spam sui commenti
- Google Analytics
- sostituzione nei feed di FeedBurner
-
Democracy (sondaggi)
- SEO Title
- WP cache (con riserva)
3. PLUGIN IN CONSIDERAZIONE
- Brian’s Threaded Comments
- Karma sui commenti (è un sistema di valutazione collettiva, vedi ad esempio i commenti in http://www.tvblog.it/)
- evidenziazione dell’autore
- redirezione WWW
- redirezione con permalink
- entrate correlate
(more…)
12 Nov
Per installare FreeGlobes RC2 su AV, basta seguire questi semplici passaggi:
Uploadare i file in una cartella del vostro spazio web che chiamerete directory o dir o come più vi piace.
Una volta eseguito l’upload fare partire l’installazione scrivendo nel broswer http://nomesito.altervista.org/directory/install/
Seguire le istruzioni molto semplici ed intuitive.
Ci sarà da inserire le seguenti informazioni:
Fatto ciò si andrà ad impostare l’amministratore della directory e quindi dovrete inserire le seguenti informazioni:
Con ciò avete completato l’installazione e sarete indirizzati nella pagina dove andrete a creare la vostra directory.
Nel browser avrete un indirizzo tipo: nomesito.altervista.org/directory/admin/index.php
Una volta completata la vostra directory riscontrerete subito un problema con la Ricerca e i Top Tags.
Nel primo appena effettuerete una ricerca avrete un messaggio d’errore tipo:
Fatal error: Call to undefined function: mb_convert_encoding() in /membri/nickaltervista/directory/include/common.php on line 733
nel secondo semplicemente non saranno visibili.
Ciò perchè AV non supporta le librerie mbstring.
Per risolvere questo problema bisogna aprire il file include/recherche.php e andare ad eliminare questa linea di codice:
{if(isUTF8($seek)) {
$seek = utf8_decode($seek);
}
quindi salvare.
Poi aprire include/common.php e andare ad eliminare questa riga:
function isUTF8($str) {
if ($str === mb_convert_encoding(mb_convert_encoding($str, “UTF-32″, “UTF-8″), “UTF-8″, “UTF-32″)) {
return true;
} else {return false;
}
}
quindi salvare.
Ricopiare i file nella cartella dove avete la directory e quindi directory/include.
Ora la ricerca funzionerà senza problemi.
Oltre la ricerca avrete risolto anche i problemi di visualizzazione dei Top Tags che ovviamente prima non erano visibili.
Ciò vale per la versione Freeglobes RC2.
Ora potrete godervi la vostra directory!
11 Nov
Quando installate joomla, durante la procedura di installazione vi chiederà di dare un nome al sito che comparirà in ogni pagina del vostro sito e dal punto di vista S.E.O. è molto sbagliato perchè il titolo non deve essere uguale su tutte le pagineIl “tag” title (Quello che compare sulla barra blu in alto in Internet Explorer) deve identificare il contenuto della pagina e, cosa molto più importante, è il “tag” più importante per i motori di ricerca, visto che si basano “quasi” solo su questo “tag” per determinare la posizione della pagina nelle loro “serp”, di conseguenza il titolo dovrà essere una frase di senso compiuto con la chiave di ricerca principale ed eventualmente anche secondaria insertita nel titolo. Joomla il titolo lo crea dinamicamente “prendendolo” dal link, es link giochi: il titolo della pagina diverrà : nome sito (che poi vi spiego come eliminarlo) seguito da “giochi”
Nel pannello di controllo del sito selezionate “configurazione globale” e poi “sito” Troverete la voce : Nome Sito. Cancellate la scritta che troverete. Ora la vostra home page avrà come titolo : “-home-” (Naturalmente poi vi spiego come sostituire “home” con un titolo più appropriato)
Sempre nella configurazione globale selezionate “metadata” e li troverete : Meta description e meta keyword globale del sito (globale vuol dire in tutte le pagine del sito) Lasciateli vuoti perchè altrimenti vi ritroverete in ogni pagina oltre al meta description della stessa anche quella globale… (Perchè non ho scritto anche meta keyword?Perchè oramai non viene più preso in considerazione dai motori di ricerca)
Come sostituire “-home-” con un titolo più appropriato
Aprite le seguenti cartelle : components/ com_content e li dentro troverete il file : content.php, apritelo con macromedia dreamweaver opp un altro editor, nella riga 221 troverete :
$mainframe->SetPageTitle( $menu->name );
sostituitelo con :
$mainframe->SetPageTitle( 'Keyfrase principale - Keyword da posizionare su Google' );
Ps i ‘ ‘ sono da lasciare.
Ora eliminiamo il trattino (-) aprite la cartella “includes” troverete il file “joomla.php” apritelo e nella riga : 509 troverete scritto :
$this->_head['title'] = $title ? $GLOBALS['mosConfig_sitename'] . ‘ - ‘. $title : $GLOBALS['mosConfig_sitename'];
sostituitelo con :
$this->_head['title'] = $title ? $GLOBALS['mosConfig_sitename'] . ‘ ‘. $title : $GLOBALS['mosConfig_sitename'];
Salvate i due file e updateli nelle rispettive cartelle. Ricordatevi sempre che il titolo della home è quello più importante, scrivete una frase di senso compiuto con la chiave di ricerca principale ed eventualmente anche secondaria del sito. Ora la vostra home page avrà un titolo appropriato e ottimizzato, così verrete trovati dai motori di ricerca in base alle chiavi che avete inserito nel titolo della home page.
Come noterete le url non sono proprio un granchè… per migliorarle scaricate e installate il componente Sh404sef, attivate l’opzione seo del componente e di Joomla. Sostituite il file htaccess.txt con questo:
##
# @version $Id: htaccess.txt 1570 2005-12-29 05:53:33Z eddieajau $
# @package Joomla
# @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
# @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
# Joomla! is Free Software##
#
# mod_rewrite in use
#RewriteEngine On
##
## NOTE!
## When using multiple Joomla sites or other web applications in sub-folders,
## you must explicitly turn the RewriteEngine off or use the settings## recommended for the application
### Uncomment following line if your webserver’s URL
# is not directly related to physical file paths.
# Update YourJoomlaDirectory (just / for root)RewriteBase /
#
rewriteCond %{HTTP_HOST} !^www\. [NC]
rewriteRule (.*) http://www.%{HTTP_HOST}/$1 [R=301,L]rewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([index]+)\.htm [NC]
rewriteRule ^(index.*)$ / [NC,R=301,L]RewriteCond %{REQUEST_FILENAME} !\.(jpg|jpeg|gif|png|css|js|pl|txt)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php
e rinominatelo .htaccess e e mettetelo nella root del sito con un client ftp. Con con le url ottimizzate in questo modo si favorisce il posizionamento nei motori di ricerca.
Il resto della guida per ragioni tecniche è visibile sul forum.
Articolo scritto da sielfree, admin di Sielfree.Com e di altri siti…
10 Nov
Ecco il mio primo post sul blog… niente di nuovo, questo tutorial sui gestori di evento in JavaScript era già apparso sul forum di Punto Web… ma ripubblicato sul blog splende di una nuova luce, non trovate? A proposito, mi scuso per eventuali errori di formattazione, ma devo ancora prendere MOLTA confidenza con l’editor di WordPress…
Finito il dovuto preambolo, iniziamo… per prima cosa cerchiamo di definire (cosa non proprio semplice) cos’è un evento: lo possiamo definire come un comportamento dell’utente monitorabile dal browser, come ad esempio il passaggio del mouse in una determinata area della pagina o la selezione di un elemento di un modulo. In JavaScript, quindi, un gestore di eventi è una modalità per intercettare questi eventi ed eseguire delle routine particolari in risposta ad essi.
Spiegata così, la cosa è molto generica, quindi sarà meglio illustrare il tutto con degli esempi qui di seguito.
Per iniziare: come specificare una risposta ad un evento
Per scrivere un gestore di evento, ci sono vari modi:
- il primo consiste nel dichiarare una funzione JavaScript e poi di assegnarla all’interno dello stesso script nel modo seguente:
function carica ()
{
…
}window.onload = carica;
è un metodo poco utilizzato perché non così immediato e perché supporta pochi tipi di evento, ma ha il vantaggio che, copiando il codice precedente in un file separato, è possibile includerlo uguale in varie pagine semplicemente collegando un file di script
- il secondo metodo usa un approccio opposto al precedente: si specifica ciò che deve essere fatto in risposta all’evento direttamente sull’elemento corrispondente, ad esempio:
<img src="..." alt="..." onclick="alert('Hello, World!')" />
- il terzo metodo è una via di mezzo tra i due precedenti ed è quello più utilizzato: si crea una funzione separata dal corpo della pagina (volendo, anche in un file JavaScript esterno) e poi si richiama questa funzione in risposta ad un evento. Ecco un esempio:
function trim_spaces (text)
{
…
return …
}…
<input type=”text” name=”…” onblur=”this.value=trim_spaces(this.value)” />
Nella seconda parte dell’articolo, passeremo in rassegna i principali gestori di evento e le rispettive funzioni.
Eventi di caricamento e distruzione
Iniziamo adesso a passare in rassegna i principali gestori di eventi:
Ecco, ad esempio, come potete realizzare una semplice accoppiata di saluti con gli alert di JavaScript (per inciso: di norma sono piuttosto fastidiosi. Quindi cercate di valutarne l’aspetto didattico piuttosto che trovarvi un’idea da copiare):
<body onload="alert('Benvenuto sul mio sito!')" onunload="alert('Torna presto a visitarmi!')">
…
</body>
Eventi riguardanti passaggio e clic del mouse
Con il mouse ci si può sbizzarrire, ci sono tante cose gestibili in questo senso soprattutto per quanto riguarda le immagini. Ecco le principali:
A titolo di esempio, il “classico” rollover di immagini con un qualcosa in più:
<a href="...">
<img src=”off.jpg” onmouseover=”this.src=’on.jpg’” onmouseout=”this.src=’off.jpg’” onmousedown=”this.src=’push.jpg’” onmouseup=”this.src=’off.jpg’” />
</a>
Eventi di puntamento ad oggetti di modulo
Avete mai pensato a come su certi siti sia possibile che JavaScript verifichi all’istante i valori dei campi di un modulo? Probabilmente attraverso uno di questi gestori di evento:
Un esempio con onblur è già stato illustrato sopra: immaginate che la funzione trim_spaces() sia un algoritmo che elimini gli spazi bianchi iniziali e finali di una stringa. Come in parte detto, però, con JavaScript potete anche verificare i dati un modulo prima di inviarlo al server, ecco come:
function check_form ()
{
if (…) // condizione non valida
return false
if (…) // altra condizione non validareturn false
// tutto a posto? allora convalida
return true
}…
<form name=”…” action=”…” method=”…” onsubmit=”return check_form()”>
…
</form>
Eventi relativi alla tastiera
Infine, due chicche che vi consentono di monitorare la pressione dei tasti della tastiera:
Volete realizzare un convertitore di valute in tempo reale? Niente di più semplice:
<input type="text" id="lire" onkeydown="document.getElementById('euro').value=parseFloat(this.value)/1936.27" />
<input type=”text” id=”euro” onkeydown=”document.getElementById(’lire’).value=parseFloat(this.value)*1936.27″ />
È tutto. Spero che questa mini guida possa risultarvi utile, in qualche modo. Per eventuali commenti o imprecazioni, i commenti del blog e il topic originale del forum sono a vostra disposizione.
Statemi bene…
8 Nov
Leggendo svariati post e blog che parlano di SEO e Web marketing, non ho fatto a meno di notare che molti utenti e webmaster, non hanno ben chiara la differenza fra sito bannato e sito penalizzato. Inoltre da un po’ di tempo, un calo nelle Serp (risultati delle ricerche), viene immediatamente associato ad una penalizzazione: non è così e questo post spero delinei al meglio i due significati e come capire se il proprio sito è penalizzato o bannato.
Differenza fra penalizzazione e ban di un sito
PENALIZZAZIONE: il sito internet è presente almeno con una pagina all’interno degli indici di Google, ma viene “retrocesso” di posizioni all’interno delle SERP in cui prima appariva nei primi risultati (prime 2 pagine). In questi termini, vi sono varie forme di penalizzazione (-30 penality, -950 penality, etc.) e, solitamente, la maggior parte delle penalizzazioni sono scovate al 70% grazie agli algoritmi anti-spam e viene risolta (tolta) altrettanto frequentemente con modalità algoritmiche.
Solitamente le penalizzazioni avvengono quando si utilizzano tecniche spam (poco invasive e massicce) per falsare i risultati in SERP.
BAN: il sito viene completamente escluso dagli indici di Google (non è in alcun modo indicizzato, anche per ricerche contenenti il nome del dominio). Questa esclusione dagli indici avviene, più o meno, al 40% in modo algoritmico, ma più frequentemente è un’operazione manuale dovuta a segnalazioni che giungono ai quality rater che studiano i siti presenti fra i risultati di ricerca. Un sito può essere bannato per svariate motivazioni, elenco solo quelle più frequenti:
Sempre in modo personale, io utilizzo queste semplici tecniche per valutare se un sito è stato bannato da Google:
1) soluzione più semplice ed immediata: effettuare una ricerca col comando “site:” + il nome di dominio, ad esempio “site:www.nomesito.it”. Se non vi sono risultati trovati, allora la probabilità che il sito sia bannato è molto alta. Attenzione però, questo potrebbe anche solamente significare che il sito non è stato ancora indicizzato.
2) iscrivendo il sito al Webmastertool di Google, nell’homepage relativo al sito internet (dopo la verifica) è possibile vedere alcune indicazioni da parte del crawler di Google che indica chiaramente la motivazione del perchè il sito non sia presente negli indici (ricorda che dal web master tool è possibile anche richiedere la reinclusione di un sito bannato).
Spero davvero di aver fatto chiarezza a tutti i webmaster ed appassionati che controllano periodicamente le SERP ed i risultati dei propri siti internet in funzione del ranking raggiunto su Google.
Fonte: Marketing sui motori di ricerca
Articolo a cura di Michele De Capitani
Prima Posizione Srl - Marketing online
Article Source:F-articles.com - free articles directory
8 Nov
Vediamo di cogliere i punti fondamentali di questa interessante analsi, sulle supposizioni ed esperienze in merito di posizionamento nel motore di ricerca più popolare al mondo: Google.I partecipanti al sondaggio, sono stati invitati ad attribuire un punteggio (da 0 a 5) ad ogni fattore preso in analisi: ecco il responso in ordine decrescente d’importanza (va ad ogni modo sottolineato il fatto che si tratta d’ipotesi prettamente soggettive, infatti si reputa che Google consideri più di 200 fattori per il calcolo del ranking dei siti nei propri risultati delle ricerche - dette SERP).
CARATTERISTICHE POSITIVE AL POSIZIONAMENTO
a) Posizione della parola chiave
Avere le proprie keywords fra questi tag di intestazione migliora la tematizzazione della pagina e di conseguenza la posizione nelle SERP
Numero totale dei link in entrata al sito.
A cura di Michele De Capitani
Prima Posizione Srl - Agenzia web Marketing
Article Source:F-articles.com - free articles direcoty