PDA

View Full Version : مشکل در ساخت سایت دوزبانه



Mostafa_
یک شنبه 14 اردیبهشت 1393, 17:01 عصر
با سلام خدمت اساتید
یه سوال
من میخوام یه سایت دوزبانه درست کنم
اما اصلا نمیدونم چطوری
راه حل هایی که به دهن خودم رسید این بود که 2تا قالب بنویسم یا اینکه از افزونه اسفتاده کنم
اما قالب نوشتن که وقت زیاده میبره و افزونه هم خوشم نمیاد چون تو سئو خیلی تاثیر منفی داره
حالا اگه راه دگ ای هست راهنمایی کنین و بگین چون واقعا نیازه و مهم
ممنون

masoud_pnu
یک شنبه 14 اردیبهشت 1393, 17:41 عصر
با کمک برادر گوگل ترنسلیت!دوتا قالبم نمیخواد.فقط تکست های هر پیج رو انگلیسی بنویس..از هر پیج دوتا بساز.منتها یه پسوندenبهش بزن.سخته،ولی می ارزه.راههای دیگرو دوستان بگن.

Mostafa_
یک شنبه 14 اردیبهشت 1393, 18:11 عصر
خوب از هر صفحه 2تا بسازم یعنی چی ؟؟؟
بعد منظور از پسوند EN چی بود ؟؟ پسوند فایلهای سایت رو میگین ؟؟
یعنی به جای html , php باشه En ?????? :متفکر::متفکر:

omidabedi
یک شنبه 14 اردیبهشت 1393, 18:16 عصر
با سلام خدمت اساتید
یه سوال
من میخوام یه سایت دوزبانه درست کنم
اما اصلا نمیدونم چطوری
راه حل هایی که به دهن خودم رسید این بود که 2تا قالب بنویسم یا اینکه از افزونه اسفتاده کنم
اما قالب نوشتن که وقت زیاده میبره و افزونه هم خوشم نمیاد چون تو سئو خیلی تاثیر منفی داره
حالا اگه راه دگ ای هست راهنمایی کنین و بگین چون واقعا نیازه و مهم
ممنون

چندتا راه داره که 2تای معمولش اینا هستن:
فایل تکست
ارایه

فایل تکست:
برای اینکار استانداردی درنظر گرفته شده و رایج هست.فایل هایی با پسوند .po و .mo ساخته میشه و معادل هر عبارت اونجا نوشته میشه و بعد با php فایل رو باز میکنی و معادلارو بررسی و جایگزاری میکنی.

ارایه:
رشته رو در ارایه میزاری و معادلارو قرار میدی برای هر زبان شما یک فایل داری مثلا en.php و fa.php و در اونا ارایه تعریف میکنی و معادلای رشته رو مینویسی

برای الگوریتم برنامه هم بنظر من باید url رو بررسی کنی و از رو url تشخیص بدی که زبان انتخابی چی هست و فایل های همون زبان رو بخونه.
یا نه میتونی بوسیله ی سشن زبان انتخابی کاربر رو به صفحات مختلف انتقال بدی.یک نمونه کوچک براتون میزارم تا متوجه بشید چگونه کار میکنه.

نیاز به کارای تکراری مثل طراحی 2 قالب نیست فقط باید علاوه بر قالب اصلی که انگلیسی باید باشه یک قالب فارسی هم در نظر میگیرید که فقط جهت هارو راست به چپ کنه.

omidabedi
یک شنبه 14 اردیبهشت 1393, 18:46 عصر
خب من برای مثال اینو اماده کردم
5تا فایل داریم بنام های
en.php رشته های انگلیسی
fa.php رشته های فارسی
index.php
style.css
rtl.css قالب برای راست به چپ

محتویات index.php


<?phpob_start();session_start();if(isset($_GET['lang'])){$lang= $_GET['lang'];$lang =strip_tags($lang);$lang =htmlentities($lang);$_SESSION['lang'] = $lang;}if(isset($lang) && $lang == 'fa'){ include_once('fa.php');}else{ include_once('en.php');}?><!doctype html><html lang="<? echo $lang;?>"><head> <meta charset="UTF-8"> <title></title> <link rel="stylesheet" type="text/css" href="style.css"> <? if(isset($lang) && $lang == 'fa'):?> <link rel="stylesheet" type="text/css" href="rtl.css"> <? endif; ?></head><body> <a href="?lang=en">en</a>|<a href="?lang=fa">fa</a> <p><? echo $string['hello']; ?></p> <p><? echo $string['how are you?']; ?></p> <p><? echo $string['multi lingual site'] ; ?></p> <p><? echo $string['this is test']; ?></p> <p><? echo $string['hello']; ?></p></body></html><? ob_end_flush();?>


en.php:


<?php
$string['hello'] = 'hello';$string['how are you?']= 'how are you?';$string['multi lingual site'] = 'multi lingual site';$string['this is test'] = 'this is test';

fa.php: توجه برای فارسی اینلودینگ فایل باید utf8 without BOM باشه


<?$string['hello'] = 'سلام';$string['how are you?']= 'حال شما خوب است؟';$string['multi lingual site'] = 'سایت چند زبانه';$string['this is test'] = 'این یک تست است';


style.css:


p{ color:red; direction:ltr; text-align:left; font-family:arial;}

rtl.css:


p{ color:blue; direction:rtl; text-align:right; font-family:verdana;}

omidabedi
یک شنبه 14 اردیبهشت 1393, 18:53 عصر
در ضمن این سوال مربوط به بخش php میشه.
+ اینکه توی هر تالار نباید تاپیک بزنید!

لطفا مدیران انتقال بدن به بخش php

Mostafa_
دوشنبه 15 اردیبهشت 1393, 00:29 صبح
سلام
عزیز خیلی خیلی تشکر
تست میکنم اگه مشکل داشتم مزاحمت میشم :)

e_a_23
دوشنبه 15 اردیبهشت 1393, 07:17 صبح
من قبلا این کارو انجام دادم. با استفاده از App_LocalResources . به این صورت که برای هر صفحه دو تا فایل resource ایجاد کردم، یکی متن های انگلیسی توش بود و دیگری متن های فارسی.
دو تا master page ایجاد کرده بودم. یکی واسه فارسی و یکی انگلیسی.
و همینطور دو تا css .......
اگر لازمه بیشتر توضیح بدم.

Mostafa_
دوشنبه 15 اردیبهشت 1393, 11:03 صبح
این میشه دقیقا دوتا قالب
اگه نتونم اون کاری که اقای عابدی عزیز گفتن رو انجام بدم باید باید همین کارو انجام بدم
بازم ممنون
اگه مشکل داشتم حتما مزاحم میشم :*