آموزش ساخت ابزار محاسبهگر میزان کالری سوزانده شده حین خوردن میوه خشک در وبسایت.
- محمد یاسر گنجی دوست
- No Comments
آموزش ساخت ابزار “محاسبهگر کالری سوزانده شده” (TEF) برای سایت خشکبار: کدی که کاربر را سرگرم میکند!
آیا تا به حال شنیدهاید که میگویند “کرفس کالری منفی دارد”؟ یعنی انرژیای که صرف جویدن و هضمش میشود، بیشتر از انرژی خودِ آن است. در دنیای خشکبار، اگرچه کالری منفی مطلق نداریم، اما میوههایی مثل “سیب خشک” یا “انجیر سفت”، به دلیل بافت سخت و فیبر بالا، بدن را مجبور میکنند برای هضمشان سخت کار کند.
ساخت ابزاری که به کاربر بگوید: “تبریک! شما با خوردن این ۵ عدد برگه زردآلو، معادل ۵ دقیقه پیادهروی کالری سوزاندید!”، یک تکنیک روانشناسی عالی است. این کار حس گناه (Guilt) ناشی از خوردن شیرینی را کم میکند و کاربر را تشویق به خرید بیشتر میکند.
در این مقاله تخصصی، ما روش ساخت این ابزار بامزه و علمی را با استفاده از کدنویسی اختصاصی (بدون نیاز به پلاگین سنگین) بررسی میکنیم.
فاز ۱: منطق علمی و فرمولها (The Science Logic)
قبل از کدنویسی، باید ریاضیات پشت آن را بدانیم. ما دو فاکتور را محاسبه میکنیم:
-
اثر گرمایی غذا (TEF):
-
به طور میانگین، حدود ۱۰٪ تا ۱۵٪ از کالری میوههای خشک صرف هضم آنها میشود (به دلیل فیبر بالا).
-
فرمول:
TEF = کالری کل * 0.15
-
-
انرژی جویدن (Chewing Energy):
-
جویدن آدامس حدود ۱۱ کالری در ساعت میسوزاند. جویدن میوه خشکِ سفت (مثل انبه یا سیب) سختتر است.
-
تخمین: فرض میکنیم برای خوردن هر ۱۰ گرم میوه خشک، ۱ دقیقه جویدن لازم است و حدود ۰.۵ کالری مصرف میشود.
-
فرمول نهایی در کد: Total Burned = (Intake Calories * TEF_Rate) + (Weight_in_grams * Chewing_Factor)
فاز ۲: دیتابیس محصولات (آرایه JS)
ما باید مشخص کنیم کدام میوه “سختتر” هضم میشود (TEF بالاتر) و کدام “نرمتر” است.
const tefData = {
"apple": { name: "چیپس سیب (با پوست)", cal: 240, tefRate: 0.15, chewFactor: 0.5 }, // سفت و پر فیبر
"fig": { name: "انجیر خشک", cal: 250, tefRate: 0.12, chewFactor: 0.4 }, // دانه دار
"date": { name: "خرما", cal: 280, tefRate: 0.08, chewFactor: 0.2 }, // نرم و زود هضم
"mango": { name: "انبه خشک", cal: 320, tefRate: 0.10, chewFactor: 0.6 }, // بسیار جویدنی (لاستیکی)
"apricot": { name: "قیسی", cal: 240, tefRate: 0.10, chewFactor: 0.3 },
"raisin": { name: "کشمش", cal: 300, tefRate: 0.05, chewFactor: 0.1 } // نرم و ریز
};
فاز ۳: طراحی رابط کاربری (HTML Structure)
یک باکس جذاب با رنگهای انرژیبخش.
<div class="burn-calculator-box">
<div class="calc-header">
<h3>🔥 چقدر کالری سوزاندید؟</h3>
<p>ببینید بدنتان برای هضم این میوه چقدر تلاش میکند!</p>
</div>
<div class="calc-body">
<label>چه میوهای میخورید؟</label>
<select id="tef-product">
<option value="apple">چیپس سیب (ترد)</option>
<option value="mango">انبه خشک (جویدنی)</option>
<option value="fig">انجیر خشک</option>
<option value="apricot">قیسی / زردآلو</option>
<option value="date">خرما</option>
<option value="raisin">کشمش</option>
</select>
<label>چقدر؟ (گرم)</label>
<div class="input-wrapper">
<input type="number" id="tef-weight" value="50">
<span>گرم</span>
</div>
<button onclick="calculateBurn()" class="fire-btn">محاسبه انرژی 🔥</button>
</div>
<div id="tef-result" style="display:none;">
<div class="result-card">
<span class="emoji-icon">🏃♂️</span>
<h4>انرژی مصرف شده برای هضم:</h4>
<div class="big-number"><span id="burned-val">0</span> کالری</div>
<p class="fun-fact" id="fun-fact-text"></p>
</div>
<div class="net-cal-box">
کالری خالصی که جذب کردید: <span id="net-val">0</span>
</div>
<div id="product-link"></div>
</div>
</div>
فاز ۴: استایلدهی (CSS)
ظاهری شبیه به اپلیکیشنهای فیتنس.
.burn-calculator-box {
background: #fff;
border-radius: 20px;
box-shadow: 0 10px 30px rgba(255, 87, 34, 0.15);
max-width: 450px;
margin: 30px auto;
font-family: 'Vazir', sans-serif;
overflow: hidden;
border: 1px solid #ffccbc;
}
.calc-header {
background: linear-gradient(135deg, #ff5722, #ff8a65);
color: white; padding: 20px; text-align: center;
}
.calc-header h3 { margin: 0; font-size: 22px; }
.calc-header p { margin: 5px 0 0; font-size: 13px; opacity: 0.9; }
.calc-body { padding: 25px; }
select, input {
width: 100%; padding: 12px; margin: 10px 0 20px;
border: 2px solid #eee; border-radius: 10px; font-size: 16px;
transition: 0.3s;
}
select:focus, input:focus { border-color: #ff5722; outline: none; }
.fire-btn {
width: 100%; background: #ff5722; color: white; border: none;
padding: 15px; border-radius: 12px; font-size: 18px; font-weight: bold;
cursor: pointer; transition: transform 0.2s;
box-shadow: 0 5px 15px rgba(255, 87, 34, 0.3);
}
.fire-btn:hover { transform: translateY(-2px); background: #f4511e; }
#tef-result { padding: 0 25px 25px; animation: fadeIn 0.5s; }
.result-card {
background: #fff3e0; border-radius: 15px; padding: 20px;
text-align: center; border: 2px dashed #ffb74d;
}
.emoji-icon { font-size: 40px; display: block; margin-bottom: 10px; }
.big-number { font-size: 32px; font-weight: 900; color: #e65100; margin: 10px 0; }
.fun-fact { font-size: 13px; color: #ef6c00; font-style: italic; }
.net-cal-box {
text-align: center; margin-top: 15px; font-size: 14px; color: #757575;
}
.cta-button {
display: block; margin-top: 15px; text-align: center;
text-decoration: none; color: #ff5722; font-weight: bold; border: 1px solid #ff5722;
padding: 10px; border-radius: 8px;
}
.cta-button:hover { background: #ff5722; color: white; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
فاز ۵: منطق جاوااسکریپت (The Engine)
این اسکریپت علاوه بر محاسبه، یک جمله بامزه (Fun Fact) هم تولید میکند.
<script>
const fruitsDB = {
"apple": { name: "چیپس سیب", cal: 240, tef: 0.15, chew: 0.5, url: "/product/apple" },
"fig": { name: "انجیر خشک", cal: 250, tef: 0.12, chew: 0.4, url: "/product/fig" },
"date": { name: "خرما", cal: 280, tef: 0.08, chew: 0.2, url: "/product/date" },
"mango": { name: "انبه خشک", cal: 320, tef: 0.10, chew: 0.6, url: "/product/mango" },
"apricot": { name: "قیسی", cal: 240, tef: 0.10, chew: 0.3, url: "/product/apricot" },
"raisin": { name: "کشمش", cal: 300, tef: 0.05, chew: 0.1, url: "/product/raisin" }
};
function calculateBurn() {
let key = document.getElementById('tef-product').value;
let weight = parseFloat(document.getElementById('tef-weight').value);
if (!weight || weight <= 0) { alert("وزن را وارد کنید!"); return; }
let data = fruitsDB[key];
// 1. محاسبه کالری دریافتی کل
let totalIntake = (data.cal * weight) / 100;
// 2. محاسبه کالری سوزانده شده (هضم + جویدن)
let digestBurn = totalIntake * data.tef;
let chewBurn = weight * data.chew;
let totalBurn = Math.round(digestBurn + chewBurn);
// 3. محاسبه خالص دریافتی
let netCalories = Math.round(totalIntake - totalBurn);
// 4. تولید Fun Fact (معادلسازی)
let walkingMinutes = Math.round(totalBurn / 4); // هر دقیقه پیادهروی حدود 4 کالری
let funText = `این معادل ${walkingMinutes} دقیقه پیادهروی است! 🚶♂️`;
// نمایش
document.getElementById('burned-val').innerText = totalBurn;
document.getElementById('fun-fact-text').innerText = funText;
document.getElementById('net-val').innerText = netCalories;
// لینک خرید هوشمند
let ctaHTML = `<a href="${data.url}" class="cta-button">خرید ${data.name} رژیمی »</a>`;
document.getElementById('product-link').innerHTML = ctaHTML;
document.getElementById('tef-result').style.display = 'block';
}
</script>
فاز ۶: استراتژی بازاریابی (گیمیفیکیشن)
این ابزار فقط برای محاسبه نیست؛ برای فروش است.
۱. سناریوی “انتخاب بهتر”
اگر کاربر “خرما” را انتخاب کند، کالری سوزانده شده کم است. اما اگر “چیپس سیب” را انتخاب کند، عدد بالاتر میرود (چون فیبر و جویدن بیشتری دارد).
-
نتیجه: کاربر ناخودآگاه به سمت خرید میوههای فیبردار (که برای شما سودآورتر است) هدایت میشود.
۲. اشتراکگذاری نتیجه
میتوانید دکمه “اشتراک در واتساپ” بگذارید با متن آماده: “من با خوردن ۵۰ گرم انبه، معادل ۱۰ دقیقه پیادهروی کالری سوزاندم! محاسبهگر را اینجا ببینید: [لینک سایت شما]”.
نکات فنی برای طراحان وب
-
سرعت: این کد کاملاً سبک است و هیچ درخواستی به سرور نمیفرستد (Client-Side). پس نگران سرعت سایت نباشید.
-
جایگذاری: بهترین مکان برای این ابزار، سایدبار وبلاگ یا صفحه مقالات لاغری است.
-
شورتکد: کد را در
functions.phpقالب چایلد بگذارید و شورتکد[tef_calculator]بسازید تا هر جا خواستید استفاده کنید.
بخش پرسش و پاسخ فنی (FAQ)
۱. آیا اعداد واقعی هستند؟ این اعداد “تخمین علمی” هستند. هیچ ابزاری نمیتواند متابولیسم دقیق هر فرد را بسنجد، اما فرمول TEF (۱۰٪ برای کربوهیدرات/فیبر) یک استاندارد جهانی در تغذیه است.
۲. آیا میتوانم آجیل هم اضافه کنم؟ بله! اتفاقاً آجیل (به خاطر پروتئین) TEF بالاتری دارد (۲۰-۳۰٪). اضافه کردن گردو و بادام به این لیست، جذابیت ابزار را دوچندان میکند.
۳. چگونه این ابزار را در المنتور بگذارم؟ از ویجت HTML Code در المنتور استفاده کنید و کل کدها را داخل آن پیست کنید. استایلها را هم میتوانید در تب Custom CSS ویجت یا فایل استایل قالب بگذارید.
جمعبندی: سرگرمی که میفروشد
ساخت ابزار “محاسبهگر کالری سوزانده شده (TEF)”، یعنی تغییر مکالمه با مشتری. به جای اینکه بگویید “این را بخر چون خوشمزه است”، میگویید: “این را بخر، چون بدنت برای هضمش کار میکند و کالری میسوزاند!”
این زاویه دید جدید، مشتریان رژیمی و ورزشکار را عاشق سایت شما میکند و زمان ماندگاری (Dwell Time) در سایت را به شدت بالا میبرد.
🍑 طعم سلامتی با میوههای خشک AsanFruits
انواع میوههای خشک طبیعی و بدون افزودنی، تهیهشده از بهترین محصولات باغی ایران. میانوعدهای سالم، خوشطعم و مغذی برای هر ساعتی از روز.
مشاهده محصولات میوه خشک