~2 دقیقه مطالعه • بروزرسانی ۱۰ اسفند ۱۴۰۴
1. توکنها در قالبها و اسکینهای DirectAdmin
در هنگام کار با قالبها، اسکینها یا فایلهای پیکربندی که از سیستم Template DirectAdmin استفاده میکنند، معمولاً نیاز دارید بدانید چه توکنهایی در آن لحظه قابل استفاده هستند.
DirectAdmin یک توکن جادویی برای این کار ارائه میدهد:
|DUMPTOKENS|
با قرار دادن این توکن در هر فایل قالب، DirectAdmin هنگام پردازش آن فایل، تمام توکنهای موجود را بهصورت:
token=value
در خروجی قرار میدهد.
نکته مهم: استفاده از این توکن در فایلهای حساس مثل httpd.conf ممکن است باعث خراب شدن سرویس شود. بنابراین فقط برای تست سریع استفاده کنید و سپس آن را حذف کنید.
برای قالبهای HTML، اسکینها یا پلاگینها معمولاً از این روش استفاده میشود:
<pre>|DUMPTOKENS|</pre>---
2. استفاده از عملگرهای منطقی AND و OR در قالبها
سیستم قالبنویسی DirectAdmin ساده است و مستقیماً از عملگرهای منطقی برنامهنویسی پشتیبانی نمیکند، اما میتوان با ترکیب شرطها همان رفتار را ایجاد کرد.
2.1 پیادهسازی AND (&&)
کد برنامهنویسی:
if (A == "1" && B == "1") {
//something
}
معادل در قالب DirectAdmin:
|?TRUE=1|
|*if A!="1"|
|?TRUE=0|
|*endif|
|*if B!="1"|
|?TRUE=0|
|*endif|
|*if TRUE="1"|
//something
|*endif|
این دقیقاً همان منطق AND را پیادهسازی میکند.
---
2.2 پیادهسازی OR (||)
کد برنامهنویسی:
if (A == "1" || B == "1") {
//something
}
معادل در قالب DirectAdmin:
|?TRUE=0|
|*if A="1"|
|?TRUE=1|
|*endif|
|*if B="1"|
|?TRUE=1|
|*endif|
|*if TRUE="1"|
//something
|*endif|
این دقیقاً همان رفتار OR را ایجاد میکند.
---
3. ساختار شرطی if – elseif – else
کد برنامهنویسی:
if (A == "1") {
//something1
}
elseif (A == "2") {
//something2
}
else {
//else something
}
معادل در قالب DirectAdmin:
|?HAVE_SOMETHING=no| |*if A="1"| |?HAVE_SOMETHING=yes| //something1 |*endif| |*if A="2"| |?HAVE_SOMETHING=yes| //something2 |*endif| |*if HAVE_SOMETHING=no| //else something |*endif|
نکته مهم: مقداردهی اولیه متغیرها و استفاده صحیح از ! در شرطها برای عملکرد درست منطق ضروری است.
---
4. نکات مهم هنگام کار با قالبها
- همیشه پس از تست، توکن
|DUMPTOKENS|را حذف کنید. - منطق شرطی در قالبها ساده است، اما با ترکیب متغیرها میتوان ساختارهای پیچیده ساخت.
- اگر قالب از اسکریپت پشتیبانی کند (PHP/Perl)، کار بسیار سادهتر میشود.
نوشته و پژوهش شده توسط دکتر شاهین صیامی