ستاره غیر فعالستاره غیر فعالستاره غیر فعالستاره غیر فعالستاره غیر فعال
 

ممکنه قالبی طراحی کرده باشید و بخواهید در صفحه اول، رنگ پس زمینه منو شفاف باشه و در سایر صفحات شفاف نباشه. یا یانکه در header سایت در هر صفحه یه عکس پس رمینه داشته باشد و نخواهید برای هر آیتم منو از ماژول استفاده کنید.

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

برای اینکار معمولا مقدار فیلد کلاس صفحه آیتم منو ( مثلا صفحه اول ) را داخل body بصورت class یا id اضافه می کنند تا وقتی کاربر وارد آن صفحه میشود، استایل متناسب با آن صفحه تغییر کند.

کد زیر رو باید در index قالب قرار دهید

// Detecting pageclass_sfx
$menu = $app->getMenu()->getActive();
$pageclass = '';
if (is_object($menu))
$pageclass = $menu->params->get('pageclass_sfx');

و بعد متغیر pageclass رو بجای مقدار class یا  id ی تگ body قرار میدی. تومثال زیر من این متغیر رو برای id در نظر گرفتم:

<body id="<?php echo $pageclass ? htmlspecialchars($pageclass) : 'default'; ?>" class="clearfix">

با توجه به کدهای بالا اگر در تنظیمات آیتم هر منویی، در فیلد کلاس صفحه مقداری وارد شده باشه اون مقدار رو به عنوان مقدار صفت id داخل تگ body نمایش میده.

بعد تو فایل css برای منو یه همچنین چیزی می نویسی:

nav{
background-color:rgba(0,0,0,0.4);
}

امیدوارم php و css بلد باشی.

Comments (0)

There are no comments posted here yet

Leave your comments

  1. Posting comment as a guest. Sign up or login to your account.
Attachments (0 / 3)
Share Your Location