Hov. Du er ikke logget ind.
DU SKAL VÆRE LOGGET IND, FOR AT INTERAGERE PÅ DENNE SIDE

Hvor klog er Google?

Side 1 ud af 2 (14 indlæg)
Fra Aarhus V
Tilmeldt 16. Jul 07
Indlæg ialt: 347
Skrevet kl. 13:21
Hvor mange stjerner giver du? :

Her de sidste par dage har jeg gået og tænkt over om følgende scenarie vil blive betegnet som duplicated content af google, eller om man ville blive straffet for det.

Jeg har overvejet at kode navigationen om på nogle af mine sites, så ikke hele sitet bliver refreshet, kun den del af sitet hvor det er relevant. Men det skal jo stadig være muligt for google at indekse sitet så siden er synlig på google, så havde tænkt mig at gøre følgende:

Omkode navigationen med javascript, så href ændres til '#' + href når siden loades, dette vil gøre det muligt for folk / crawlere som ikke har Javascript mulighed for at browse sitet normalt, mens folk med javascript vil kunne browse siden hurtigere, da det kun vil være dele af sitet der opdateres med nyt indhold.

Javascript koden vil f.eks. ændre href='/about/' til href='#/about/', client-side.

Men så er det at jeg tænker, Google Crawleren er jo blevet klogere og læser dele af javascript og kører det.

Derfor er spørgsmålet, vil google læse både http://domain.dk/about/ og http://domain.dk/#about/?

P.S Beklager hvis det er dårlig forklaret og / eller lidt for teknisk for nogen :)

 

Mads Madsen

Fra København
Tilmeldt 19. Jun 07
Indlæg ialt: 560
Skrevet kl. 13:27
Hvor mange stjerner giver du? :

Det er en forkert måde at gøre det på.

Den rigtige måde, som vil tilfredsstille både dem med javascript, dem uden og Google er at lave dine links sådan her:

<a href="/about" onclick="klikFunktion('about'); return false">Bøh!</a>

.. hvor klikFunktion er din javascript-funktion, der håndterer kliks'ne!

På den måde, vil javascript blive brugt, hvis det er til stede, ellers vil linket fungere almindeligt.

Fra Aarhus V
Tilmeldt 16. Jul 07
Indlæg ialt: 347
Skrevet kl. 13:28
Hvor mange stjerner giver du? :

patrickb:

Det er en forkert måde at gøre det på.

Den rigtige måde, som vil tilfredsstille både dem med javascript, dem uden og Google er at lave dine links sådan her:

<a href="/about" onclick="klikFunktion('about'); return false">Bøh!</a>

.. hvor klikFunktion er din javascript-funktion, der håndterer kliks'ne!

På den måde, vil javascript blive brugt, hvis det er til stede, ellers vil linket fungere almindeligt.

Det vil ødelægge sitet, hvis du gør det på den måde, så vil brugerne ikke kunne poste links på forums, IM's mm.

Så det er ikke en mulighed :)

EDIT:

Tror også du overså "Javascript koden vil f.eks. ændre href='/about/' til href='#/about/', client-side.", navigationen bliver kun ændret hvis der er javascript til stede :)

Mads Madsen

Fra København
Tilmeldt 19. Jun 07
Indlæg ialt: 560
Skrevet kl. 13:40
Hvor mange stjerner giver du? :

Mads Madsen:

Det vil ødelægge sitet, hvis du gør det på den måde, så vil brugerne ikke kunne poste links på forums, IM's mm.

Så det er ikke en mulighed :)

Nu skal jeg lige være sikker på, hvad du mener?! ... Huh? ... Jeg går ud fra, at du tænker på, at brugerne skal have lov til at poste deres egne links i dit forum osv.? I så fald:

- Jeg går ikke ud fra, at brugerne skal sidde og poste interne links til dit site, men istedet eksterne - som du jo ikke skal lave om til javascript!
- Selv hvis en bruger postede et internt link, så er det da uden betydning, at lige det link ikke benyttede javascript.
- Du bør under alle omstændigheder filtrere den HTML, som dine brugere poster, for at undgå XSS hacking. Så hvis du af en eller anden grund partout ville gøre linket til javascript, kan du jo sagtens gøre det dynamisk, når linket bliver postet.

Mads Madsen:
Tror også du overså "Javascript koden vil f.eks. ændre href='/about/' til href='#/about/', client-side.", navigationen bliver kun ændret hvis der er javascript til stede :)

Nej, jeg overså det ikke. Jeg har bare aldrig hørt noget så vanvittigt! Smile

Fra Aarhus V
Tilmeldt 16. Jul 07
Indlæg ialt: 347
Skrevet kl. 14:18
Hvor mange stjerner giver du? :

patrickb:

- Jeg går ikke ud fra, at brugerne skal sidde og poste interne links til dit site, men istedet eksterne - som du jo ikke skal lave om til javascript!

Med den model jeg beskriver, så vil http://domain.dk/about/ og http://domain.dk/#/about/ give præcis det samme resultat, da det muligt ved hjælp af Javascript at læse en URI, og derved loaded det korrekte indhold. Dvs. hvis en bruger linker til http://domain.dk/#/about/ på et forum, så vil dem der klikker på linket stadig få det korrekte indhold vist.

Linket vil nok ikke få PR, måske vil http://domain.dk/ få PR, men det er ikke vigtigt for mig.

patrickb:

- Selv hvis en bruger postede et internt link, så er det da uden betydning, at lige det link ikke benyttede javascript.

Må du hellere uddybe lidt.

patrickb:

- Du bør under alle omstændigheder filtrere den HTML, som dine brugere poster, for at undgå XSS hacking. Så hvis du af en eller anden grund partout ville gøre linket til javascript, kan du jo sagtens gøre det dynamisk, når linket bliver postet.

Umiddelbart har det du skriver der ingen relevans til mit spørgsmål. :)

Men du må gerne uddybe det lidt, gerne mere teknisk, da det i mit hoved ikke giver mening. :)

patrickb:

Nej, jeg overså det ikke. Jeg har bare aldrig hørt noget så vanvittigt! Smile

Deviantart, Facebook mf. benytter den "teknologi" jeg beskriver. Ved godt det ikke er god argumentation, men vanvittigt er det ikke, det er blot et spørgsmål om at udnytte den teknologi man har tilrådighed. :)

Mads Madsen

Fra København
Tilmeldt 19. Jun 07
Indlæg ialt: 560
Skrevet kl. 16:15
Hvor mange stjerner giver du? :

Altså, jeg forstår simpelten ikke, hvad det er, du vil opnå?! Jeg er med på, at javascript kan bruges til at "overtage" funktionen af et link, så visse ting kan ske hurtigere. Det bruges normalt i forbindelse med AJAX - altså hvor kun dele af en side indhold genindlæses, istedet for at hele siden skal genindlæses, hvilket jo tager længere tid.

Vi bruger det til netop det formål her: http://www.kosmetiskguide.dk/klinikker/plastikkirurger/

Hvis du klikker på de links med navne på byer og lande i den grønne boks, så vil kun noget af sidens indhold skifte ved hjælp af AJAX. Hvis du til gengæld ikke har javascript, eller hvis du hedder googlebot, så vil linket fungere som et gammeldags link.

Det jeg så ikke helt forstår er, hvorfor du vil loade en hel side ind med javascript frem for at bruge et normalt link? Det kommer det jo ikke til at gå hurtigere af!

Mads Madsen:
Quote mig: Du bør under alle omstændigheder filtrere den HTML, som dine brugere poster, for at undgå XSS hacking. Så hvis du af en eller anden grund partout ville gøre linket til javascript, kan du jo sagtens gøre det dynamisk, når linket bliver postet.

Hvad jeg mener er bare, at du kan jo ikke bare lade brugere poste links uden at filtrere deres HTML-kode. Så kan de lægge alverdens javascript- og stylesheet-hacks ind i din kode, og din hjemmeside bliver hurtigt en virus-central, der smitter brugerne med virus, når de kigger i din debat.

Mads Madsen:

Deviantart, Facebook mf. benytter den "teknologi" jeg beskriver.

Det lyder utroligt. Måske har du misforstået eller set det som noget andet, end det var.

Men for at prøve at hjælpe dig, kan du ikke beskrive HELT præcis, hvad formålet er ved at bruge javascript til links'ne. Måske kan du give mig et link til din side. Så vil jeg måske bedre kunne sætte mig ind i, hvor du gerne vil hen...

Fra Aarhus V
Tilmeldt 16. Jul 07
Indlæg ialt: 347
Skrevet kl. 17:14
Hvor mange stjerner giver du? :

Patrick Blasone:

Vi bruger det til netop det formål her: http://www.kosmetiskguide.dk/klinikker/plastikkirurger/

Hvis du klikker på de links med navne på byer og lande i den grønne boks, så vil kun noget af sidens indhold skifte ved hjælp af AJAX. Hvis du til gengæld ikke har javascript, eller hvis du hedder googlebot, så vil linket fungere som et gammeldags link.

Det er jo heller ikke brugbart, hvis jeg finder noget godt under punktet "Århus" og vil sende det videre til nogen, så kopier jeg blot adressebaren og sender det, men linket jeg sender hedder "http://www.kosmetiskguide.dk/klinikker/plastikkirurger/", men det relevante link er faktisk "http://www.kosmetiskguide.dk/klinikker/plastikkirurger/?i=aarhus". Btw. det virker ikke i Firefox, måtte åbne IE.

Men pga. den her diskussion, så har jeg valgt at illustere det, http://amino01.dev.gotweb.dk/.

Som du nok kan se, så vil "http://amino01.dev.gotweb.dk/#/page2/" og "http://amino01.dev.gotweb.dk/page2/" vise det samme indhold, derfor er eksterne links ikke et problem. Men det smarte er at det er kun "Content" der ændres når du bruger den nye navigation, hvor imod ved den gamle så hentes hele siden.

Patrick Blasone:

Det jeg så ikke helt forstår er, hvorfor du vil loade en hel side ind med javascript frem for at bruge et normalt link? Det kommer det jo ikke til at gå hurtigere af!

Hvor har jeg skrevet det?

 

Men anyway, det her er langt fra hvad mit orginale spørgsmål var, nemlig, vil google læse http://domain.dk/#/about/ ?

Mads Madsen

Fra København
Tilmeldt 19. Jun 07
Indlæg ialt: 560
Skrevet kl. 18:08
Hvor mange stjerner giver du? :

Mads Madsen:

Hvor har jeg skrevet det?

Det ved jeg ikke. Det var bare min opfattelse. Smile .. Men jeg er stadig ikke helt med på, hvad det så er, du vil bruge det til?

Men som jeg forstår det nu, er det du vil gøre i princippet at lave URL rewriting med javascript!

Jeg har også kigget på facebook, og det, de gør, er at lægge de rigtige links ud på siden, så Google ser dem som rigtige links, men idet man klikker på dem, så går en javascript-funktion ind og laver requestet om. Det vil sige, at den gør det on the fly!

Mads Madsen:
Men anyway, det her er langt fra hvad mit orginale spørgsmål var, nemlig, vil google læse http://domain.dk/#/about/ ?

Google kan sagtens læse et sådant link, men det kræver jo, at nogen fodrer Google med det. For når du først ændrer linket med javascript på din side, så vil Google jo ikke se det ændrede link, men istedet det oprindelige.

Google vil kun opfatte den del af linket, som kommer før "#" som en selvstændig side. Det, der kommer efter, opfatter den som en sektion på siden. Det, der så vil ske er, at Google vil se bort fra alt det efter #, så der vil ikke komme duplicate content. Det er klart at foretrække at lade Google få rigtige links, og så kan du holde din "#" til at give dine brugere mulighed for at linke til dynamisk indhold.

Hvis du vil bruge denne rewriting, bør du derfor hardcode de originale links, og så sætte dine "#" ind med javascript - f.eks. on the fly som facebook. Så indekserer google kun de originale links, og så sker der ikke noget ved det.

Fra Aarhus V
Tilmeldt 16. Jul 07
Indlæg ialt: 347
Skrevet kl. 19:27
Hvor mange stjerner giver du? :

Patrick Blasone:

Men som jeg forstår det nu, er det du vil gøre i princippet at lave URL rewriting med javascript!

Jeg har også kigget på facebook, og det, de gør, er at lægge de rigtige links ud på siden, så Google ser dem som rigtige links, men idet man klikker på dem, så går en javascript-funktion ind og laver requestet om. Det vil sige, at den gør det on the fly!

Mads Madsen:

Javascript koden vil f.eks. ændre href='/about/' til href='#/about/', client-side.

Patrick Blasone:

Problemet opstår dog så ved, at Google vil jo se f.eks. disse 3 links:

http://amino01.dev.gotweb.dk/page3/#/
http://amino01.dev.gotweb.dk/page3/#/page2/
http://amino01.dev.gotweb.dk/page3/#/page3/

... som den samme side. Og derved vil den opfatte det som duplicate content. Derfor duer det ikke, at lade Google indeksere links, der først skal parses af javascript for at lede det rigtige sted hen.

Hvis du vil bruge denne rewriting, bliver du derfor nødt til kun at hardcode de originale links, og så sætte dine "#" ind med javascript. Så indekserer google kun de originale links, og så sker der ikke noget ved det.

Se på mit eksempel igen, hint userBase.js :) Samt kig kildekoden igennem uden javascript, så vil du se at både New navigation og Latency navigation er identiske, ud over der er en class på New navigation :)

Men det er også derfor jeg spørg om Google i det hele taget kører Javascript'en så de links i New navigation vil få tilføjet '#' + href.

Men kan jo være at google nu prøver at indekse de 3 links skrevet længere oppe, og så må vi jo se. :)

Mads Madsen

Fra København
Tilmeldt 19. Jun 07
Indlæg ialt: 560
Skrevet kl. 19:33
Hvor mange stjerner giver du? :

Forresten tak fordi du opdagede fejlen i FF på vores side! Det har dog ikke noget med omtalte teknik at gøre, men skyldes noget med, hvordan Google-map'et loades ind.

Jeg kunne ikke lade være med at undre mig, hvorfor facebook har lavet den konstruktion, de har, og nu har jeg fundet frem til det.

Det bliver meget godt beskrevet i denne tråd:
http://www.codingforums.com/showthread.php?t=151257

Og som der siges:

So facebook actually do a page change like this:

* You click a link
* Facebook catch the click and find where you wanted to go
* Facebook create an iframe which goes off and gets the new page content from the server
* Facebook replace the current main area of the page with the new content
* Facebook change the hash part of the url so that back and forward browser buttons still work and bookmarking is possible.
* Facebook remove the temporary iframe

Formålet ser ud til at være, at en ny side kan indlæses for brugeren, samtidig med, at deres instant messenger i bunden ikke behøves at blive genindlæst. Det er jo genialt fundet på, for det tillader, at de kan have en live chat, der bliver ved med at køre, selv om man skifter side.

Men igen - linkene laves ikke om, når siden loades. Det er click-eventen, der fanges og laves om! Desuden så sker der netop ikke noget nyt request, og selve #-URL'en bliver jo ikke brugt til noget, når siden skal loades ind. Siden loades dynamisk ind af javascript, så der er ikke tale om egentlig URL-rewriting.

Side 1 ud af 2 (14 indlæg)