آموزش:نمایش ندادن یک موقعیت ماژول به کاربر عضو - مامبو
مقدمه
در این آموزش نحوه ایجاد یک موقعیت ماژول که فقط افراد غیر عضو قادر به دیدن آن هستند را میآموزید!
طریقه عملکرد
چند object قدرتمند در API مامبو وجود دارد که طراحان قالب میتوانند از آنها استفاده کنند. یکی از آنها user object است که بوسیله متغیر my$ قابل دسترس میباشد. اگر شما میخواهید تعیین کنید که بازدیدکننده کاربر عضو شده است یا خیر، احتیاج به این کد دارید:
<source lang="php">
<?php
If ( $my -> id ) {
//Code to generate if visitor is a registered user
} else {
//Code to generate if visitor is not a registered user
}
- >
</source>
این کد اساسا میگوید: "اگر این بازدیدکننده نام کاربری دارد قسمت اول کد را اجرا کن، در غیر اینصورت قسمت دوم کد را اجرا کن."
ما میتوانیم این ایده را یک قدم جلوتر ببریم. حال با استفاده از کد زیر درون قالب میگوییم یک موقعیت ماژول را به کاربر غیر عضو نمایش نده!
<source lang="php">
<?php
If ( !$my -> id ) {
mosLoadModules (‘guest_only_position’,-2);
}
- >
</source>
به علامت "!" قبل از my$ توجه کنید. این علامت نمایانگر واژه "not" (منفی گر) است. بنابراین این کد اساسا میگوید: "اگر این بازدیدکننده نام کاربری در سایت نداشت، ماژولهایی را که به موقعیت ماژول "guests_only_position" نسبت داده شدهاند را نمایش بده".
توجه : guest_only_position یک نام غیر استاندارد برای موقعیت ماژول است و در اینجا فقط برای مثال آورده شده است. شما میتوانید به جای آن از موقعیتهای استاندارد مامبو نظیر user1 و user2 و banner و ... استفاده کنید.
این یک ترفند پر کاربرد در رابطه با نمایش ندادن یک موقعیت ماژول به کاربران عضو میباشد. بعنوان مثال شما تبلیغی دارید که در آن بازدیدکنندگان را تشویق به عضویت در سایت خود کردهاید و کاربران عضو نیازی به دیدن این تبلیغ ندارند. بنابراین شما میتوانید از این ترفند برای پنهان کردن این تبلیغ از دید کاربران عضو شده استفاده نمایید.
شما میتوانید استفادههای بسیاری از این ترفند در قالب سایت خود بکنید. راههای خلاقانه دیگر در استفاده از این ترفند را به خود شما واگذار میکنم.
نکته: ممکن است شما در سایتی عضو باشید اما در آن سایت login نکرده باشید. در آن صورت شما هم جزو بازدیدکنندگان به حساب می آیید.
نویسنده : رضا رادمهر
هر گونه سوال و یا مشکلی در این رابطه دارید، میتوانید در انجمن تخصصی تیم جوملا فارسی جستجو کرده و در صورت عدم دریافت نتیجه مورد نظر، سوال جدیدی را مطرح کنید.
استفاده از مطالب دانشنامه جوملا فارسی - مامبو فارسی با ذکر منبع ( دانشنامه جوملا فارسی ) و لینک مستقیم به http://docs.joomlafarsi.com بلامانع است.
|