سوال درباره موقعیتهای خالی قالب
سلام، مطلب آقای بلوردی عزیز درباره آموزش طراحی قالب جوملا 1.5 مطالعه کردم تویه انجمن هم سرچی زدم ولی ماشا الله با این همه سوال چیزی پیدانکردم(حتی با سرچ)
خب می خوام مثلا موقعی که ماژولهای سمت چپ قالبم خالی باشه به طور اتوماتیک ستون وسط بکشه و قسمت خالی صفحه رو هم ستون وسط در اختیار بگیره!
کد عدم نمایش ماژولها و موقعیتها رو نوشته بود ولی توضیح نداده بود که اینطوری میشه یا نه!
یه مسئله دیگه اینکه کدهای ترکیبی اینگونه چطوری هستن و برای چه جاهایی کاربرد داره؟
باتشکر
پاسخ : سوال درباره موقعیتهای خالی قالب
سلام
من به شخصه سعی میکنم اکثر آموزشهای قوی رو بخونم. و این آموزش رو نخوندم !
برای این منظور شما باید از div استفاده کنید ! بطور خودکار قالب شما وقتی در موقعیت مربوطه چیزی قرار نگیرد ! آن قسمت نمایش داده نمیشود ! این موارد بر میگرده به دانش شما از HTML و CSS .
هیچکس تنهاتر از خدا نیست
پاسخ : سوال درباره موقعیتهای خالی قالب
باتشکر از پاسختون مهدی عزیز، بله بنده از div استفاده میکنم دانشم زیاد نیست ولی خب با راهنمایی دوستان میشه کاری کرد.
اما یه قسمت از سوالم نگرفتم دوباره میپرسم:
شیوه بکارگیری کد و همچنین ترکیبی بودن اونهارو لطفا توضیح بدین.
ممنون.
پاسخ : سوال درباره موقعیتهای خالی قالب
دوست عزیز سوالتون رو واضحتر بیان کنید ! شیوه اینکار کاملاْ مشخص هست !
موارد ترکیبی برای موقعیتهای قالب نیز میتوانید از if , else ها در قالب استفاده کنید !
فکر نمیکنم تفاوتی داشته باشد اینکه اینجا مرحله به مرحله به شما html را آموزش دهیم یا اینکه خودتون تلاش کنید و مطالعه کنید !
هیچکس تنهاتر از خدا نیست
پاسخ : سوال درباره موقعیتهای خالی قالب
توی طراحی قالبتون از این کد استفاده کنید
کد:
<?php if($this->countModules('POSITION_NAME')) : ?>
و وجود یا عدم وجود موقعیت رو مشروط به این شرط کنید
اللبته اگر ماژولی فعال نشده در موقعیت مربوط باشه این ستور کار نمی کنه
امید وارم منظورتون رو درست متوجه شده باشم
پاسخ : سوال درباره موقعیتهای خالی قالب
بله باتشکر.
مثلا بخواسته باشم موقعی که قسمت ماژول چپ سایت خالی هست، قسمت کامپوننت و مطالب فضای ماژول چپ رو در اختیار بگیره!
پاسخ : سوال درباره موقعیتهای خالی قالب
سلام.
ابتدا قالبتون رو طوري بسازيد كه سه ستون نمايش داده بشن و درصورت حذف ستون سمت چپ، ستون وسط جاي اون رو بگيره.
اينكار رو با استفاده از div و css مي تونيد انجام بديد.
سپس قبل از باز شدن بالاترين تگ div مربوطه به ستون سمت چپ، كدي كه دوستان معرفي كردند رو قرار بديد.
POSITION_NAME اسم موقعيت موردنظر شماست.
سپس بلافاصله بعد از بسته شده شدن تگ divمورد نظر ، كد زير رو قرار بديد:
کد:
<?php endif; ?>
يا علي
پاسخ : سوال درباره موقعیتهای خالی قالب
[quote author=سعید link=topic=31658.msg157084#msg157084 date=1296362654]
سلام.
ابتدا قالبتون رو طوري بسازيد كه سه ستون نمايش داده بشن و درصورت حذف ستون سمت چپ، ستون وسط جاي اون رو بگيره.
اينكار رو با استفاده از div و css مي تونيد انجام بديد.
سپس قبل از باز شدن بالاترين تگ div مربوطه به ستون سمت چپ، كدي كه دوستان معرفي كردند رو قرار بديد.
POSITION_NAME اسم موقعيت موردنظر شماست.
سپس بلافاصله بعد از بسته شده شدن تگ divمورد نظر ، كد زير رو قرار بديد:
کد:
<?php endif; ?>
يا علي
[/quote]
بله، توضیح شما کاملتر بود و متوجه این امر شدم ولی حالا مشکلی که دارم بحث div و css هست چون که طبق فرموده شما انجام دادم ولی موقعی که ستون سمت چپ نباشدش ستون وسط و راست میان جای چپ قرار میگیرن اونوقت ستون سمت راست جاش خالی میشه (ستون وسط کشیده نمیشه!) هرچند مربوط به جوملا نمیشه و بحثhtml و css اگه میشه توضیح بدین در این حالت چیکار کنم!؟
سپاس فراوان
پاسخ : سوال درباره موقعیتهای خالی قالب
سلام.
احتمالا اندازه DIV ها رو بصورت ثابت وارد کردید.
در هر حال این موضوع خارج از حیطه تخصصی انجمن مامبولرن هست. بهتره به سایت های تخصصی همین حوزه مراجعه کنید.
یا علی
پاسخ : سوال درباره موقعیتهای خالی قالب
شما باید در هر مرحله چک کنید که آیا موقعیت ماژول وجود دارد یا نه و برای هر موقعیت یک کلاس تعریف کنید.
با این روش کاری دیگه نداره. کافیه هر کلاس رو متناسب با خودش تغییر اندازه بدین.
فکر کنم گیج شده باشین.
مثال میزنم:
کد:
<?php
$positionName = 'none-leftmodule';
if($this->countModules('POSITION_NAME')) {
$positionName = 'with-leftmodule';
}
?>
<div class="<?php echo $positionName; ?>"></div>
کد بالا میگه اگر ماژول های موقعیت POSITION_NAME وجود داشت اونوقت نام کلاس Div رو with-leftmodule بزار و گرنه نام کلاس رو none-leftmodule قرار بده
بقیش دیگه به خودتون بستگی داره که چقدر به CSS و HTML وارد هستین...