Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: jQueryllä kielen valinta ongelma

TeNDoLLA [20.01.2009 10:42:10]

#

Eli tarkoitus olisi saada valittua kieli- ja locale-asetukset alasveto valikosta ja hoitaa kielenvaihto ajaxilla/jQueryllä. Oon aika noob vielä tuon jQueryn käytössä ja ongelmana on nyt hahmottaa, että miten (?) saan järkevästi sen kielen vaihdettua sillain, että sivu ladataan käyttäjälle alasveto valikosta valitulla kielellä aina käyttäjän valitessa kielen. Sivun eri kieliset templatet haetaan kannasta. Sivut on tehty php:lla.

ps. Laitoin tämän tännekin foorumille, kun tuntuu ettei apua oikein löydy ja asialla on hieman kiire.

Lebe80 [20.01.2009 11:44:05]

#

Ei kai siihen pidä ajaxia edes käyttää, vaan ihan javascriptillä (kirjastolla tai ilman) siirrät oikean kieliseen osoitteeseen valinnan yhteydessä.

Jos taas käytät ajaxia, niin tällöin pitäisi pitää huoli myös että osoite vaihtuu. Eli älä käytä samaa osoitetta suomen- ja enkun kielisillä sivuilla, sillä tämä haittaa erittäin paljon hakukoneiden indeksointia.

TeNDoLLA [20.01.2009 13:28:30]

#

Tässä vaiheessa sivustolla ei ole vielä omia osoitteita, eikä sivut ole online vaan kehityksen alkuvaiheessa. Ja tosiaan tarkoitus oli siis saada luotua semmoinen on-the-fly kielen valinta sivuille. Eli ei tarttis painella submittia jos haluaa vaihtaa kielen. Ongelmana tässä siis on mun puutteelliset javascript taidot sekä lähes nollissa olevat jQuery taidot. Projektissa on määrätty käytettäväksi jQueryä, tosin voi kait sen normi javascriptilläkin tehdä, mutta kun en osaa tehdä silläkään juuri mitään jostain perus stringien tulostelusta tai alertin tekemisestä monimutkaisempaa.

Olen kyllä lukenut tuolta jQueryn sivuilta sekä googlesta ohjeita, vaan ei oikein taivu. Hommahan menee niin, että käyttäjä valitsis alasvetovalikosta kielen ja tämä kieli muuttujan tieto pitäisi saada jotenkin on-the-fly ilman submittia front controllerille, joka sitten lataa sivun oikealla kielellä ja tulostaa käyttäjälle. Eli en saa tätä kielimuuttujan tietoa tuonne controllerille kirveelläkään käsiteltäväksi (ilman submittia, on-the-fly).

Lebe80 [20.01.2009 14:23:28]

#

Tarkoitin, että laita ihan jokin kieliparametri siihen urliin, niin hakukoneetkin (ja ihmiset) tietävät mikä kieli on kyseessä.

vrt.
fi:
munsivu.org/index.php?sivu=loremipsum

eng:
munsivu.org/index.php?sivu=loremipsum

vaikos

fi:
munsivu.org/index.php?sivu=loremipsum&language­=fi

eng:
munsivu.org/index.php?sivu=loremipsum&language­=en

tai vielä parempi
fi:
munsivu.org/fi/tietoa-yrityksesta

eng:
munsivu.org/en/about-us


AJAX on kyllä kiva, muttei ihan kaikkeen sitä kannata tunkea.

TeNDoLLA [20.01.2009 14:50:04]

#

Terve taas. Joo eli hain vähän turhan hankalan kaavan kautta ratkasua asiaan, kun ei ole tietoa javascriptin hienouksista. Tosiaan domainit tulee varmasti myöhemmin tyyliin en.site ja fi.site jne, mutta itse kyseiseen asiaan nyt mitä tarvitsin oli ratkaisu tälläinen:

<form method="get" action="">
<select name="lang" onchange="this.form.submit();">
  <option value="fi">Suomi
  <option value="se">Svenska
  <option value="en">English
</select>
</form>

Eli todella yksinkertainen, mutta kun ei tajunnut tuota javascript osaa tollain tehdä.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta