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