anarshia

گرفتاری در شرطی سازی موقعیتهای قالب

5 پست در این موضوع

ارسال شده در (ویرایش شده)

درود

روی یک قالب جوملا-3 با بوت استرپ کار می کنم الان برای اینکه موقعیت های ساید چپ و راست و کانتنت شرطی بشه یعنی اگر یکی موجود نبود دیگری جای اون رو پر کنه در نوشتن کدش به مشکل برخوردم

این تکه کد من هست

<div class="row-fluid">
     <?php if ($this->countModules('sidebar-a')): ?>
           <div class="span3">
               <jdoc:include type="modules" name="sidebar-a" style="html5" />
           </div>
       <?php endif; ?>
	        <?php if ($this->countModules( 'sidebar-a + sidebar-b' )) : ?>
               <div class="span6">  
		     <jdoc:include type="message" />
                <jdoc:include type="component" /> </div>
           <?php else : if (this->countModules('sidebar-b'))  ?>
               <div class="span9">       
			 <jdoc:include type="message" />
                <jdoc:include type="component" /> </div>
           <?php else : else if ($this->countModules('sidebar-a'))  ?>
               <div class="span9">				 
			 <jdoc:include type="message" />
                <jdoc:include type="component" /> </div>
           <?php else : ?>
                <div class="span12">				 
			 <jdoc:include type="message" />
                <jdoc:include type="component" /> </div>
        <?php ?> 
       <?php if($this->countModules('sidebar-b')) : ?>
           <div class="span3">
                     <jdoc:include type="modules" name="sidebar-b" style="html5" />
           </div>
          <?php endif; ?>    
</div>

برنامه اینه که دو تا موقعیت ساید هر کدام span3 و کانتنت span6 باشه و اگر ساید موجود نبود به مقدار کانتن افزوده بشه

امیدوارم درست توضیح داده باشم. منتظرم

ویرایش شده در توسط anarshia

Share this post


Link to post
Share on other sites
آموزش ووکامرس قالب جوملا قالب وردپرس قالب رایگان وردپرس قالب رایگان جوملا هاست نامحدود هاست جوملا هاست لاراول هاست وردپرس هاست ارزان هاست ربات تلگرام خرید دامنه آموزش ساخت ربات تلگرام با php آموزش لاراول آموزش cPanel آموزش php آموزش فرم ساز RSform آموزش ساخت ربات جذب ممبر آموزش ساخت ربات دوستیابی آموزش ساخت ربات فروشگاهی برای ووکامرس آموزش طراحی سایت داینامیک با php آموزش بخش پشتیبانی با rsticket

نخستین اشکال شرط شما این قسمته!

sidebar-a + sidebar-b

شرط این قسمت را به شکل زیر اصلاح کنید:

<?php if ($this->countModules( 'sidebar-a' ) AND $this->countModules( 'sidebar-b' )) : ?> 

و اگر میخای با موجود نبودن قسمتی ، قسمت دیگری جاش رو پر کنه باید width موقعیت های خودت رو به درصد تعریف کنی نه pixel

Share this post


Link to post
Share on other sites
نخستین اشکال شرط شما این قسمته!

sidebar-a + sidebar-b

شرط این قسمت را به شکل زیر اصلاح کنید:

<?php if ($this->countModules( 'sidebar-a' ) AND $this->countModules( 'sidebar-b' )) : ?> 

و اگر میخای با موجود نبودن قسمتی ، قسمت دیگری جاش رو پر کنه باید width موقعیت های خودت رو به درصد تعریف کنی نه pixel

متشکرم مشکل تقریبن حل شد. در مورد پیکسل هم چون از بوت استرپ استفاده کردم کلن از همون اسپن های خودش استفاده کردم .

الان کد من به این شکل در آمد

<div class="row-fluid">
<?php if ($this->countModules( 'sidebar-a' ) AND $this->countModules( 'sidebar-b' )) : ?> 
 <div class="span6">
         <jdoc:include type="message" />
       <jdoc:include type="component" />
     </div>
 <?php else : ?>
<?php if ($this->countModules( 'sidebar-a' ) OR $this->countModules( 'sidebar-b' )) : ?> 
 <div class="span9">
       <jdoc:include type="message" />
       <jdoc:include type="component" />
	    </div>
  <?php else : ?>
     <div class="span12">
         <jdoc:include type="message" />
       <jdoc:include type="component" />
	    </div>
 <?php endif; ?>
<?php if ($this->countModules('sidebar-a')): ?>
   <div class="span3 , pull-left">
     <jdoc:include type="modules" name="sidebar-a" style="html5" />
   </div>
<?php endif; ?>
	<?php if ($this->countModules('sidebar-b')): ?>
   <div class="span3 , pull-right">
     <jdoc:include type="modules" name="sidebar-b" style="html5" />
   </div>
<?php endif; ?>
    </div>
<?php endif; ?>
 </div>
</div>

همه چیز در مورد اندازه ها درست هست و ساید چپ و راست رو هم درست نمایش میده فقط زمانی که هر دو ساید فعال هست بجای سایدها یک فضای سفید نشون میده

سپاس از پیگیری شما

Share this post


Link to post
Share on other sites

پیشنهاد میکنم شرط خودتون رو تکه تکه اجرا کنید و موقعیتها را کلا پاک کنید و کم کم به شرط اضافه کنید و با آزمون و خطا برید جلو تا دقیقا اشکال خودتون رو در بیارید

Share this post


Link to post
Share on other sites

ممنونم

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

Share this post


Link to post
Share on other sites

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری