-
مشکل در تغییر فایل index قالب ؟؟؟
با سلام به تمامی دوستان عزیز ...
داخل هر فولدر قالب مامبو یه فایل Index.php هست که وقتی سایت لود میشه از این فایل استفاده میشه ...
و اما مشکل من !!! :: :-\
حالا من میخوام دو تا فایل مثلاً به نام های indexf.php و indexie.php درست کنم و محتویات index.php رو حذف کنم و درونش کدی قرار بدم که وقتی کاربر فایرفکس وارد سایت میشه فایل indexf.php اجرا بشه و وقتی با ie وارد میشه فایل indexie.php اجرا بشه !!! 
راستی یه توضیح دیگه هم اضافه کنم ، اینکه من مشکلی با قالب در firefox و ie ندارم و نمیخوام css تغییر کنه بلکه من میخوام کاری کنم که بازدیدکنندگان از سایت وقتی با فایرفکس وارد میشن به کل یه قالب دیگه رو مشاهده کنن که بازدیدکنندگان ie اون رو نمیبینن !!! O0
خوب حالا مشکل اینجاست که درون فایل index.php باید چه کدی بنویسم که در صورتی که مرورگر firefox بود بره به indexf.php و اگه مرورگر ie بود بره به indexie.php ؟؟؟ :'(
ببحشید که سوالم خیلی طولانی شد . :-[
با تشکر .
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
-
01-17-2009 05:03 PM
# ADS
تبلیغات در جوملا فارسی
-
پاسخ : مشکل در تغییر فایل index قالب ؟؟؟
اگه به نتیجه ای رسیدی به ما هم بگو
O0
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
-
پاسخ : مشکل در تغییر فایل index قالب ؟؟؟
باید از آرایه های فوق سراسری و USER AGENT استفاده کنید.
راهنمایی کردم می تونید در انجمن های دیگه به دنبال این موضوع باشید.
یا علی
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
-
پاسخ : مشکل در تغییر فایل index قالب ؟؟؟
من سرچ کردم ولی چیزی که بنظرم به این موضوع مربوط بشه پیدا نکردم !!!
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
-
پاسخ : مشکل در تغییر فایل index قالب ؟؟؟
سلام اینجا رو ببینید:
این همه نتیجه !
اینجا هم می تونه کمکتون کنه :
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
-
پاسخ : مشکل در تغییر فایل index قالب ؟؟؟
با سلام مجدد خدمت تمامی دوستان عزیز ...
خوب با کمک و راهنمایی دوستان من تونستم این قضیه رو حل کنم ، برای همین دیدم که بد نیست اگه راه حل رو با توضیحات مختصری اینجا بیان کنم :
من به صورت زیر عمل کردم و کاملاً جواب گرفتم :
1 - در شاخه اصلی مامبو سه تا فایل به نام های index.php و index2.php و index3.php قرار دارد . ( از این فایل ها Backup تهیه کنید تا اگر مشکلی پیش اومد بتونید جایگزین کنید )
2 - فایل index.php رو با نام های indexie.php و indexf.php ذخیره مجدد کنید و بعد محتویات فایل index.php رو کاملاً پاک کرده و با کد زیر جایگزین کنید :
کد:
<html>
<script>
if(navigator.userAgent.indexOf("Firefox") != -1)
{
window.location = "indexf.php";
}
else if(navigator.userAgent.indexOf("MSIE") != -1)
{
window.location = "indexie.php";
}
else
{
window.location = "indexie.php";
}
</script>
</html>
خوب فقط دقت کنید که در شرط آخر یعنی :
کد:
else
{
window.location = "indexie.php";
}
مقدار indexie.php رو میتونید indexf.php هم قرار بدید که در اینصورت اگر مرورگر کاربر غیر از Internet Explorer و Firefox باشه مانند صفحه Firefox به اون نمایش داده میشه ...( در صورتی که دقیقاً کد بالا رو استفاده کنید صفحه ساخته شده برای InternetExplorer نمایش داده خواهد شد .
3 - خوب حالا فایل indexf.php رو باز کرده و کد زیر رو در اون پیدا کنید ( حدوداً انتهای فایل است ) :
کد:
require_once( 'templates/'. $cur_template .'/index.php' );
و بعد این کد رو با کد زیر جایگزین کنید :
کد:
require_once( 'templates/'. $cur_template .'/indexfire.php' );
4 - خوب حالا نوبت به دو فایل index2.php و index3.php میرسه :
فایل index2.php رو باز کنید و کد زیر رو در اون پیدا کنید :
کد:
$indextype = 2;
include ('index.php');
و کد زیر رو جایگزین کد بالا کنید :
کد:
<?php
function browser_detection( $selectbrowser ) {
$browser = '';
$navigator_user_agent = ( isset( $_SERVER['HTTP_USER_AGENT'] ) ) ? strtolower( $_SERVER['HTTP_USER_AGENT'] ) : '';
if (stristr($navigator_user_agent, "msie"))
{
$browser = 'msie';
}
elseif (stristr($navigator_user_agent, "gecko"))
{
$browser = 'mozilla';
}
if ( $selectbrowser == 'browser' )
{
return $browser;
}
}
$user_browser = browser_detection('browser');
if ( $user_browser == 'msie' )
{
$indextype = 2;
include ('indexie.php');
}
elseif ( $user_browser == 'mozilla' )
{
$indextype = 2;
include ('indexf.php');
}
else
{
$indextype = 2;
include ('indexie.php');
}
?>
5 - حالا در فایل index3.php کد زیر رو پیدا کنید :
کد:
$indextype = 3;
include ('index.php');
و کد زیر رو جایگزین کد بالا کنید :
کد:
<?php
function browser_detection( $selectbrowser ) {
$browser = '';
$navigator_user_agent = ( isset( $_SERVER['HTTP_USER_AGENT'] ) ) ? strtolower( $_SERVER['HTTP_USER_AGENT'] ) : '';
if (stristr($navigator_user_agent, "msie"))
{
$browser = 'msie';
}
elseif (stristr($navigator_user_agent, "gecko"))
{
$browser = 'mozilla';
}
if ( $selectbrowser == 'browser' )
{
return $browser;
}
}
$user_browser = browser_detection('browser');
if ( $user_browser == 'msie' )
{
$indextype = 3;
include ('indexie.php');
}
elseif ( $user_browser == 'mozilla' )
{
$indextype = 3;
include ('indexf.php');
}
else
{
$indextype = 3;
include ('indexie.php');
}
?>
6 - و اما در آخر باید در داخل فولدر قالبتون فایل قالب مخصوص Firefox یعنی indexfire.php رو ایجاد کنید .
*** توجه کنید که اگر کاربر با مرورگر IE یا مرورگری غیر از Firefox وارد سایت شما شود قالب اصلی یعنی index.php موجود در فولدر قالبتون نمایش داده میشود و اگر با Firefox وارد شود فایل indexfire.php موجود در فولدر قالب نمایش داده خواهد شد .
این کد ها رو میتوانید برای مرورگرهای دیگر هم اختصاصی کنید .
امیدوارم این آموزش مورد استفاده شما قرار گیرد .
منتظر نظرات شما در مورد این شیوه برای جداسازی قالب مامبو برای مرورگرهای مختلف هستم .
آرمان تشکر
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
-
پاسخ : مشکل در تغییر فایل index قالب ؟؟؟
سلام.
خوشحالم که به نتیجه رسیدید.
اما تغییر در فایل های مامبو به هیچ عنوان توصیه نمی شه.
می تونید در قالب، فایل index.php رو فقط برای تشخیص مرورگر درنظر بگیرید و بسته به هر نوع مرورگر یک فایل رو include کنید.
مثلا اگر فایرفاکس بود index_ff.php رو include کنید.
یا علی
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
-
پاسخ : مشکل در تغییر فایل index قالب ؟؟؟
سلام مجدد به تمامی دوستان عزیز ،
اول از همه باید از سعید عزیز صمیمانه تشکر کنم و بعد هم از تمامی دوستان بابت عملیات بالا که خیلی طولانی بود عذرخواهی کنم ... ( دلیلش بی تجربگی هست ... به بزرگی خودتون ببخشید ;D :
)
خوب اما راه حل بسیار کوتاه و عالی که سعید عزیز پیشنهاد کردن و من هم از اون خیلی خوشم اومد :
1 - داخل فولدر قالب فایل index.php رو برای جلوگیری از اشتباه احتمالی backup بگیرید .
2 - فایل index.php رو به indexie.php تغییر نام دهید .
3 - فایلی به نام indexf.php که قالب اختصاصی برای Firefox هست ایجاد کنید و درون فولدر قالبتون قرار بدید .
4 - یک فایل php با نام index.php ایجاد کنید و کدهای زیر رو درون اون قرار بدید :
کد:
<?php
function browser_detection( $selectbrowser ) {
$browser = '';
$navigator_user_agent = ( isset( $_SERVER['HTTP_USER_AGENT'] ) ) ? strtolower( $_SERVER['HTTP_USER_AGENT'] ) : '';
if (stristr($navigator_user_agent, "msie"))
{
$browser = 'msie';
}
elseif (stristr($navigator_user_agent, "gecko"))
{
$browser = 'mozilla';
}
if ( $selectbrowser == 'browser' )
{
return $browser;
}
}
$user_browser = browser_detection('browser');
if ( $user_browser == 'msie' )
{
include ('indexie.php');
}
elseif ( $user_browser == 'mozilla' )
{
include ('indexf.php');
}
else
{
include ('indexie.php');
}
?>
خوب در پایان هم این فایل رو ذخیره کنید و در فولدر قالبتون قرار بدید .
به همین سادگی ... تموم شد . ( وقتی خودم راه حل اول رو به نسبت این راه حل دیدم میخواستم به حال خودم گریه کنم ...!!! :'( :-[ :-\ )
از این آموزش هم لذت ببرید ...
با سپاس فراوان از آقا سعید عزیز .
منتظر نظرات شما هستم ...
راستی یه سوال هم برای من پیش اومده ... این روش خیلی خوبه ولی آیا برای موتورهای جستجو و Ranking مشکلی ایجاد نمیکنه ؟
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
-
پاسخ : مشکل در تغییر فایل index قالب ؟؟؟
سلام
ممنون كه اين آموزش رو نوشتيد و قرار داديد در انجمن، اگر مايليد در ويكي مامبولرن هم منتشر كنيد ... .
در رابطه با سوالتون هم بايد بگم كه به احتمال قوي ربات هاي جستجوگرها به indexie ريدايركت بشن.(چون در انتها اونرو معرفي كرديد)
يا حق
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
-
پاسخ : مشکل در تغییر فایل index قالب ؟؟؟
کاش انجمن دکمه ی تشکر داشت که از هر دوتاتون بهتر تشکر میکردیم .. :'( :'( :'( :'( :'( :'(
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
علاقه مندی ها (Bookmarks)