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

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

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

در بین تگ های شرطی توضیحاتی از هر تگ به صورت انگلیسی ارائه شده که می تونید با هر چیزی تعویضش کنید!

دستورات زیر رو می تونید با استفاده از AND ، OR و<xen:else /> گسترش بدید.

همچنین با تغییر == به =! شرط از درست به نادرست تغییر خواهد کرد.

به عنوان مثال <xen:if is=”{$visitor.user_id} == x”> برای درست و <xen:if is=”{$visitor.user_id} != x”> برای نادرست مورد استفاده قرار خواهد گرفت.

در آرگومان هایی که دارای یک پارامتر می باشند هم ! دارای همان اثر خواهد بود.

به عنوان مثال <xen:if is=”{$visitor.user_id}”> برای درست و <xen:if is=”!{$visitor.user_id}”> برای نادرست مورد استفاده قرار خواهد گرفت.

در هنگام کار با آرایه ها نیز ! قبل از آرایه قرار خواهد گرفت.

به عنوان مثال برای درست از

<xen:if is="in_array({$forum.node_id}, array(x, y, z))">

و برای نادرست دستور زیر استفاده می شود

 <xen:if is="!in_array({$forum.node_id}, array(x, y, z))">

بسته به قالب کار ، ممکن است شما نیاز داشته باشید تا از $user به جای $visitor استفاده نمائید. $visitor کاربری است که به سیستم وارد شده است ولی $user کاربری است که فعالیتی انجام داده و رکورد در حال پردازش دارد. ( به عنوان مثال نویسنده پیام ، فهرست کاربران ، کاربران آنلاین و …)

هنگام کار با قالب PAGE_CONTAINER شما می توانید متغیرهایی از category_view ، forum_view ، thread_view و … را با استفاده از xen:container نمایش دهید.

همین دستور شامل قالب هایی که در قالب PAGE_CONTAINER وارد می شوند مانند header یا ad_header هم می شود.

به عنوان مثال برای استفاده از متغیر $forum.node_id در قالب PAGE_CONTAINER می توانید به شکل زیرعمل کنید :

 <xen:container var="$forumId">{$forum.node_id}</xen:container>

به طور مشابه برای متغیر $threadId می توانید به شکل زیر عمل کنید :

<xen:container var="$threadId">{$thread.thread_id}</xen:container>

در دستورات زیر جاهایی که از متغیرهای x ، y یا z استفاده شده است باید با متغیرهای واقعی جایگزین شوند.

برخی از دستورات شرطی مورد استفاده در قالب های زنفورو به شرح زیر است :

نمایش محتوا فقط برای کاربران وارد شده

<xen:if is="{$visitor.user_id}">
This content will show to logged in members
</xen:if>

نمایش محتوا فقط برای کاربران مهمان

<xen:if is="!{$visitor.user_id}">
This content will show to guests
</xen:if>

نمایش محتوا متفاوت برای کاربران وارد شده و مهمان

<xen:if is="{$visitor.user_id}">
This content will show to logged in members
<xen:else />
This content will show to guests
</xen:if>

نمایش محتوا برای گروه کاربری خاص

<xen:if is="{xen:helper ismemberof, $visitor, x}">
This content will show to members of user group x
</xen:if>

مخفی کردن محتوا برای گروه کاربری خاص

<xen:if is="!{xen:helper ismemberof, $visitor, x}">
This content will be hidden from members of user group x
</xen:if>

 نمایش محتوا برای چند گروه کاربری

<xen:if is="{xen:helper ismemberof, $visitor, x, y}">
This content will show to members of user groups x or y
</xen:if>

مخفی کردن محتوا برای چند گروه کاربری

<xen:if is="!{xen:helper ismemberof, $visitor, x, y}">
This content will be hidden from members of user groups x or y
</xen:if>

نمایش محتوا فقط برای مدیران کل

<xen:if is="{$visitor.is_admin}">
This content will show to Administrators
</xen:if>

نمایش محتوا فقط برای مدیران

<xen:if is="{$visitor.is_moderator}">
This content will show to Moderators
</xen:if>

نمایش محتوا فقط برای مدیران کل و مدیران

<xen:if is="{$visitor.is_admin} OR {$visitor.is_moderator}">
This content will show to Administrators and Moderators
</xen:if>

نمایش محتوا فقط برای کاربر خاص

<xen:if is="{$visitor.user_id} == x">
This content will show to member x
</xen:if>

نمایش محتوا برای چند کاربر خاص

<xen:if is="in_array({$visitor.user_id}, array(x, y, z))">
This content will show to members x, y and z
</xen:if>

 نمایش محتوا پس از اولین ارسال در موضوعات

<xen:if is="{$post.position} == 0 AND !{$message.conversation_id}">
This content will show after the first post in a thread
</xen:if>

نمایش محتوا پس از اولین ارسال در موضوعات و گفتگوها

<xen:if is="{$post.position} == 0">
This content will show after the first post
</xen:if>

نمایش محتوا پس از ارسال x در هر صفحه از موضوعات

<xen:if is="{$post.position} % {$xenOptions.messagesPerPage} == x AND !{$message.conversation_id}">
This content will show after post x on every page in a thread
</xen:if>

نمایش محتوا پس از ارسال x در هر صفحه از موضوعات و گفتگوها

<xen:if is="{$post.position} % {$xenOptions.messagesPerPage} == x">
This content will show after post x on every page
</xen:if>

نمایش محتوا پس از ارسال x در هر صفحه از موضوعات فقط در انجمن های y و z

<xen:if is="{$post.position} % {$xenOptions.messagesPerPage} == x AND in_array({$thread.node_id}, array(y, z))">
This content will show after post x on every page, only in forums y and z
</xen:if>

نمایش محتوا پس از ارسال x در هر صفحه از موضوعات به غیر از انجمن های y و z

<xen:if is="{$post.position} % {$xenOptions.messagesPerPage} == x AND !in_array({$thread.node_id}, array(y, z))">
This content will show after post x on every page, except in forums y and z
</xen:if

نمایش محتوا صفحه خاص

<xen:if is="{$contentTemplate} == 'xyz'">
This content will show on the xyz template
</xen:if>

نمایش محتوا گروه خاص

<xen:if is="{$category.node_id} == x">
This content will show in category x
</xen:if>

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

نمایش محتوا انجمن خاص

<xen:if is="{$forum.node_id} == x">
This content will show in forum x
</xen:if>

نمایش محتوا چند انجمن خاص

<xen:if is="in_array({$forum.node_id}, array(x, y, z))">
This content will show in forums x, y, and z
</xen:if>

نمایش محتوا موضوع خاص

<xen:if is="{$threadId} == x">
This content will show in thread x
</xen:if>

نمایش محتوا چند موضوع خاص

<xen:if is="in_array({$threadId}, array(x, y, z))">
This content will show in threads x, y, and z
</xen:if>

نمایش محتوا ارسال خاص

<xen:if is="{$postId} == x">
This content will show in post x
</xen:if>

نمایش محتوا چند ارسال خاص

<xen:if is="in_array({$postId}, array(x, y, z))">
This content will show in posts x, y, and z
</xen:if>

نمایش محتوا برای نویسنده موضوع x

<xen:if is="{$thread.user_id} == x">
This content will show to thread author x
</xen:if>

نمایش محتوا زمانی که نویسنده ارسال و موضوع یکی باشید

<xen:if is="{$post.user_id} == {$thread.user_id}">
This content will show if the post author is the thread author
</xen:if>

نمایش محتوا زمانی که کاربر داری 0 ارسال باشد

<xen:if is="{$visitor.message_count} == 0">
This content will show to members with 0 posts
</xen:if>

نمایش محتوا برای کاربرانی که بیش از x ارسال دارند

<xen:if is="{$visitor.message_count} > x">
This content will show to members with more than x posts
</xen:if>

نمایش محتوا برای کاربرانی که کمتر از x ارسال دارند

<xen:if is="{$visitor.message_count} < x">
This content will show to members with less than x posts
</xen:if>

نمایش محتوا برای کاربرانی که هنوز آدرس ایمیل خود را تائید نکرده اند

<xen:if is="{$isAwaitingEmailConfirmation}">
This content will show to members who have not confirmed their email address
</xen:if>

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

<xen:if is="{$visitor.from_search}">
This content will show to visitors arriving from search engines
</xen:if>​

منتشر شده توسط سامان

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

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.