پاسخ : چند زبانه کردن multilanguage content manager - Nokkeaw
با سلام و خسته نباشید خدمت مدیران و دوستان بسیار خوبم در مامبولرن
از بابت این کمپوننت بسیار خوبی که معرفی کردین بسیار ممنون و سپاسگذارم , برای استفاده از این کامپوننت کدی را که مهدی جان داده بودن رو برای قالب ja-sabina به فرم زیر تغییر داده و در قالب گذاشتم .
کد:
<?php if( mosIsRTL()==true) { ?> <link href="<?php echo $ja_template_path;?>/css/template_css.css" rel="stylesheet" type="text/css" media="screen" /> <?php }
else { ?> <link href="<?php echo $mosConfig_live_site;?>/templates/unico2008/css/template_css2.css" rel="stylesheet" type="text/css" /> <?php }?>
و سی اس اس قالب را هم یک کد direction:ltr در قسمت بادی اش قرار داده و با نام template_css2 در همان جا ذخیره کردم , اما هیچ اتفاقی نیافتاد , فکر کنم خیلی ساده فرض کردم موضوع رو نه ؟ :D , سپاسگذار می شوم دوستان یکمی بیشتر من رو راهنمایی کنند , آخه یک مدتی بود از مامبو دور بودم و الان برای یکی از همکاران قصد دارم از مامبو استفاده کنم .
[مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید]
با سپاس از شما
پاسخ : چند زبانه کردن multilanguage content manager - Nokkeaw
درود
من فایل install.php رو یکمی بررسی اش کردم و تنها کدی رو که دیدم به این قسمت مربوط می شد رو برداشتم و به شکل زیر تغییر دادم :
کد:
<link href="template_css<?php if($text_direction=='ltr') echo '_'.$text_direction ?>.css" rel="stylesheet" type="text/css" />
بعد هم از این آدرس قالب ja_sabina نسخه انگلیش را دان کرده و فایل css اش را با نام template_css_ltr در پوشه ی css ذخیره کردم .
تنها اتفاقی که افتاد منوی اصلی و سایر منوها به سمت چپ رفتند و فونت ها همه بزرگ شدند .
اگر دوستی مشکل مارا فهمید , لطف کنه راهنمایی کنه , ممنون
پاسخ : چند زبانه کردن multilanguage content manager - Nokkeaw
دوست عزیز شما نیاز به دو تا template_css دارین ، یکی به نام template_css_rtl و یکی به نام template_css_ltr که باید rtl برا فارسی باشه و اون یکی برای انگلیسی ، پی تو حالت فارسی باید منو سمت راست باشه و تو حالت انگلیسی سمت چپ ( برای این قالب) رو این حساب باید css هارو تنظیم کنید . برا تعریف css هم می تونین از کد زیر تو قالبتون استفاده کنید:
کد:
<link rel="stylesheet" type="text/css" href="<?php echo $mosConfig_live_site; ?>/templates/akowinterportal/css/template_css_<?php echo $text_direction;?>.css" />
فقط دقت کنید که از direction:rtl; فقط در جاهای لزوم استفاده کنید ، چون ممکنه بعدا همین شما را دچار مشکل کنه، یه نکته دیگه هم اینه که اگه می خواین جایی تو قالب ، قالب رو نشون بده ، باید با یه if, else اون رو برای حالت فارسی و انگلیسی جدا کنید ، برا فارسی از همون jdate معروف ...
بار هم اگه مشکلی بود بگین من در خدمت هستم ، البته فکر کنم توضیحات کامل بوده باشه...
پاسخ : چند زبانه کردن multilanguage content manager - Nokkeaw
البته حواستون باشه که کد نمونه بود و باید آدرس css خودتون را جاش قرار بدید...
پاسخ : چند زبانه کردن multilanguage content manager - Nokkeaw
علی آقای عزیز , ممنون
من دقیقا همین کد را با تغییر در نام قالب در صفحه index.php قالبم در لوکال قرار دادم , دو تا سی اس اس هم دارم یکی فارسی یکی هم که مال خود قالب انگلیسی است که نامش را به template_css_ltr تغییر داده ام اما بعد از ذخیره کردن , فونت ها بزرگ شده و جدول سمت راست ( در حال فارسی ) با انتخاب انگلیش به سمت چپ نمی رود و تنا یکمی منوی اصلی چپ چین می شود و فونت ها همه درشت می شوند . و دیگر با انتخاب هر زبانی هیچ تغییری نمی کنند .
آیا مشکل از لوکال بودن نیست ؟ تصاویر زیر را لطفا ببینید .
پاسخ : چند زبانه کردن multilanguage content manager - Nokkeaw
خوب این مسئله طبیعی هست ، 2 روش دارین ، یا می تونین direction:ltr رو برای انگلیسی اعمال کنین، یا اینکه داخل کد های index.php قالب دست ببرین و بگین اگر ltr بود بیاد و ماژول های انتشار یافته در اون جدول رو در سمت چپ انتشار بده به جای سمت راست. ( روش دوم را پیشنهاد می کنم )
در مورد فونت هم باید در css های مربوطه ( برای انگلیسی _ltr و برای فارسی _rtl رو ویرایش کنید) آموزش های css هم موجود هست یه نگاه بهشون بندازین ضرر نداره!!
پاسخ : چند زبانه کردن multilanguage content manager - Nokkeaw
با سپاس از شما علی آقای عزیزم
من این کد را ابتدا در بالای صفحه قالبم گذاشتم :
کد:
<html xmlns="[مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] dir="<?php echo $text_direction;?>">
بعد هم از این کد استفاده کردم :
کد:
<?php if( mosIsRTL()==true) { ?> <link href="<?php echo $ja_template_path;?>/css/template_css_rtl.css" rel="stylesheet" type="text/css" media="screen" /> <?php }
else { ?> <link href="<?php echo $mosConfig_live_site;?>/templates/ja_sabina/css/template_css_ltr.css" rel="stylesheet" type="text/css" /> <?php }?>
و درست شد , با تشکر و سپاس فراوان از شما دوست خوبم , اما فقط الا مشکلم اینه که جدول اصلی قالب در حالت انگلیش از سمت راست به چپ نمی ره و فقط ماژول ها چپ چین می شوند , این جا کجا رو باید تغییر بدم . ببخشید که اینقدر سوال می پرسم .ممنون
پاسخ : چند زبانه کردن multilanguage content manager - Nokkeaw
اما الان که این کد ها را روی سرور هم اضافه کردم همه چیز به هم ریخت , ببینید :
[مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید]
پاسخ : چند زبانه کردن multilanguage content manager - Nokkeaw
خوب شما اصلا روش مناسبی رو انتخاب نکردین ، اضافه کردن دایرکشن در تگ <html کار رو بعدا خراب می کنه ( الان متوجه نمی شین ، بعدا تو نمایش در فایرفاکس در برخی کامپوننت ها کارتون رو لنگ می ذاره...)
به منظور انتقال از سمت راست به چپ که گفتم باید یه شرط بذارین در قالب که در حالت انگلیسی این td باشه و در حالت فارسی اون td ...
پاسخ : چند زبانه کردن multilanguage content manager - Nokkeaw
گفتم که این روش کار رو خراب می کنه ، حالا شانس اوردین که همین حالا خودش رو نشون داد، تو بعضی قالب ها الآن درسته اما برا برخی کامپوننت ها مثل fireboard مشکل پیدا می کنه که اون وقت اصلا نمی فهمین چی شده...