Kes on esimene tõeline teadlane maailmas?

Ma tahan teha veebisaidi kahes keeles. Olen ringi vaadanud ja mõelnud mõlema keele eraldamise kataloogivalikule. Kuidas ma selle tööle panen?

Oletame, et mul on sihtlehe, ingliskeelse ja hispaaniakeelse lehe jaoks järgmised kolm faili:

http://www.domain.com/index.html http://www.domain.com/en/index.html http://www.domain.com/es/index.html 

Ütleme ka nii /index.html ilmub inglise keeles koos lingiga /es/index.html. Vastutasuks, /es/index.html on link ingliskeelse versiooni juurde. Kas see oleks tagasi /index.html või /en/index.html? Kuidas saada mõlemad ingliskeelsed versioonid (üks juurest ja kataloogist) tegelikult samaks failiks samas kataloogis?

Olen selles uus, seega ei kasuta ma veel ühtegi skripti. Minu jaoks on ilmne lahendus kopeerida mõlemad ingliskeelsed versioonid ja lasta see faili juurpunktis faili alla /en/ kataloogi, kuid ma ei ole dubleerimise fänn ja sain teada, et otsingumootorid panevad selle peale tõsiselt pahaks. Keegi juhatab mind õiges suunas?

  • Tegelikult ei peeta seda, millest te tehniliselt räägite, dubleerimist sellistele otsingumootoritele nagu Google. See on dubleeriv sisu ainult juhul, kui näiteks navigeerimine ja mõned saidi perifeersed tekstid on tõlgitud, kuid põhisisu on identne (st sama keel, sama tekst). Kasutage lihtsalt sobivat link atribuudid (<link rel='alternate' hreflang='de' .../>), et anda otsingumootoritele teada, kus erinevad tõlked asuvad.

Ma arvan, et olete siin õigel teel. Selle toimingut olen näinud mitmel viisil:

  1. Kas teil on www.domain.com/index.html leht on lihtne keelevaliku leht, millel on ainult lingid saidile en ja es avalehed. Mulle isiklikult tundub see tüütu, kuid näen seda siiski kogu aeg.

  2. Saatsid lihtsalt kõik ingliskeelse versiooni juurde ja leidke sealt link hispaaniakeelsele versioonile.See on ilmselt parim valik, kui suur osa teie kasutajatest räägib inglise keelt.

  3. Proovige mõnes serveripoolses koodis keelt automaatselt tuvastada, tõenäoliselt vaadates Accept-Language päisest, et näha, millist keelt kasutaja eelistab, ja seejärel saatke see sobivale lehele.

  • Samuti leian, et nr 1 on tüütu ja kasutan selle projekti jaoks lõpuks # 2 ning lasen kasutajal valida oma valitud keel. Aitäh!

Vältimaks vajadust kopeerida index.html peal www.domeen.com/index.html ja www.domain.com/en/index.html , parim SEO-sõbralik lahendus on 301. ümbersuunamise kasutamine oma .htaccess-failis (töötab ainult Apache'i serverites).

Muutke või looge oma .htaccess-fail, lisades järgmise rea:

redirect 301 /en/index.html http://www.domain.com 

Sel viisil, kui keegi üritab sellele juurde pääseda www.domain.com/en/index.html suunatakse automaatselt domeenindeksisse ning te ei pea muretsema selle pärast, et sama faili või analüütika erinevad versioonid ja järjestus jagatakse dubleeritud indeksi vahel.

Isegi kui olete selles asjas uus, soovitan kasutada selle käsitsemiseks PHP-skripti.

Sa võid kasutada mod_rewrite URL-id ümber kirjutada /en/, /es/jne öelda language.php?lang=en, määrake keelele küpsis ja suunake tagasi saidile index.php või isegi mod_rewrite tagasi /en/index.php.

Vastasel juhul on @Eric Petroelje vastus teie parim valik.

  • Tänud mod_rewrite vihje. Ma pean seda meeles serveri seadistamisel, mis juhtub tõenäoliselt varem, kui ma eeldan. Praegu jään html-css-i juurde ilma serveripoolsete tehinguteta.
  • np. Hea meel pakkuda ettepanekuid.

none: Charles Robertson | none

none