الگو:صفحه اصلی مغازه شما/دسته بندی موضوعی: تفاوت میان نسخه‌ها

بدون خلاصۀ ویرایش
بدون خلاصۀ ویرایش
 
خط ۳: خط ۳:
<div class="faraghaib-custom-container">
<div class="faraghaib-custom-container">


    <!-- بخش جستجو -->
     <div class="fz-search-wrapper">
     <div class="fz-search-wrapper">
         <input type="text" id="categorySearch" placeholder="جستجو در دسته‌بندی‌ها...">
         <input type="text" id="categorySearch" placeholder="جستجو در دسته‌بندی‌ها...">
     </div>
     </div>


    <!-- بخش فیلترها -->
     <div class="fz-filter-bar">
     <div class="fz-filter-bar">
         <button class="fz-filter-btn active" onclick="filterSelection(event, 'all')">همه</button>
         <button class="fz-filter-btn active" onclick="filterSelection(event, 'all')">همه</button>
خط ۱۴: خط ۱۶:
     </div>
     </div>


    <!-- شبکه کارت‌ها -->
     <div id="categoryGrid" class="fz-category-grid">
     <div id="categoryGrid" class="fz-category-grid">


        <!-- نمونه کارت‌ها (کلاس‌ها را مطابق دسته‌بندی تغییر بده) -->
         <div class="fz-card tech">
         <div class="fz-card tech">
             <span class="fz-title">هوش مصنوعی</span>
             <span class="fz-title">هوش مصنوعی</span>
            <span class="fz-count">۱۲</span>
         </div>
         </div>


         <div class="fz-card art">
         <div class="fz-card art">
             <span class="fz-title">نقاشی دیجیتال</span>
             <span class="fz-title">نقاشی دیجیتال</span>
            <span class="fz-count">۸</span>
         </div>
         </div>


         <div class="fz-card science">
         <div class="fz-card science">
             <span class="fz-title">فیزیک کوانتوم</span>
             <span class="fz-title">فیزیک کوانتوم</span>
            <span class="fz-count">۵</span>
         </div>
         </div>


         <div class="fz-card tech">
         <div class="fz-card tech">
             <span class="fz-title">برنامه‌نویسی</span>
             <span class="fz-title">برنامه‌نویسی</span>
            <span class="fz-count">۲۵</span>
         </div>
         </div>


         <div class="fz-card art">
         <div class="fz-card art">
             <span class="fz-title">طراحی گرافیک</span>
             <span class="fz-title">طراحی گرافیک</span>
             <span class="fz-count">۱۰</span>
        </div>
 
        <div class="fz-card tech">
             <span class="fz-title">امنیت شبکه</span>
         </div>
         </div>


خط ۴۵: خط ۴۸:


<style>
<style>
/* کانتینر اصلی */
.faraghaib-custom-container {
.faraghaib-custom-container {
     direction: rtl !important;
     direction: rtl !important;
خط ۵۸: خط ۶۲:
}
}


.fz-search-wrapper {
/* استایل ورودی جستجو */
    margin-bottom: 15px;
.fz-search-wrapper { margin-bottom: 15px; text-align: center; }
    text-align: center;
}
 
.fz-search-wrapper input {
.fz-search-wrapper input {
     width: 90%;
     width: 90%;
     padding: 8px 15px;
     padding: 10px 18px;
     border: 1px solid #c9e4d5;
     border: 1px solid #c9e4d5;
     border-radius: 20px;
     border-radius: 25px;
     outline: none;
     outline: none;
     font-size: 14px;
     font-size: 15px;
     font-family: 'IRANSans', 'IRANSansWeb', Tahoma, Arial, sans-serif !important;
     font-family: 'IRANSans', 'IRANSansWeb', Tahoma, Arial, sans-serif !important;
    transition: 0.3s;
}
}
.fz-search-wrapper input:focus { border-color: #16bd78; box-shadow: 0 0 5px rgba(22, 189, 120, 0.2); }


.fz-filter-bar {
/* استایل دکمه‌های فیلتر */
    display: flex;
.fz-filter-bar { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-bottom: 20px; }
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    margin-bottom: 20px;
}
 
.fz-filter-btn {
.fz-filter-btn {
     padding: 5px 15px;
     padding: 6px 18px;
     border-radius: 15px;
     border-radius: 20px;
     border: none;
     border: none;
     background: #eee;
     background: #eee;
     cursor: pointer;
     cursor: pointer;
     font-size: 13px;
     font-size: 14px;
     font-family: 'IRANSans', 'IRANSansWeb', Tahoma, Arial, sans-serif !important;
     font-family: 'IRANSans', 'IRANSansWeb', Tahoma, Arial, sans-serif !important;
     transition: 0.3s;
     transition: 0.3s;
}
}
.fz-filter-btn.active { background: #16bd78 !important; color: white !important; font-weight: bold; }


.fz-filter-btn.active {
/* چیدمان شبکه کارت‌ها */
    background: #16bd78 !important;
    color: white !important;
}
 
.fz-category-grid {
.fz-category-grid {
     display: grid !important;
     display: grid !important;
خط ۱۰۴: خط ۹۸:
}
}


/* استایل کارت نهایی */
.fz-card {
.fz-card {
     background: white !important;
     background: white !important;
خط ۱۰۹: خط ۱۰۴:
     display: flex !important;
     display: flex !important;
     align-items: center !important;
     align-items: center !important;
     justify-content: space-between !important;
     justify-content: center !important;
     padding: 0 12px !important;
     padding: 0 10px !important;
     border-radius: 8px !important;
     border-radius: 8px !important;
     box-shadow: 0 2px 5px rgba(0,0,0,0.05) !important;
     box-shadow: 0 2px 5px rgba(0,0,0,0.05) !important;
     border-bottom: 4px solid #ddd !important;
     border-bottom: 4px solid #ddd !important; /* خط رنگی پایین */
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
     box-sizing: border-box !important;
     box-sizing: border-box !important;
     cursor: pointer;
     cursor: pointer;
خط ۱۲۳: خط ۱۱۵:
}
}


.fz-card:hover {
.fz-card:hover { transform: translateY(-3px); box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important; }
    transform: translateY(-3px);
    box-shadow: 0 4px 10px rgba(0,0,0,0.1) !important;
}


/* استایل فونت داخل کارت (بزرگ شده) */
.fz-title {
.fz-title {
     font-family: 'IRANSans', 'IRANSansWeb', Tahoma, Arial, sans-serif !important;
     font-family: 'IRANSans', 'IRANSansWeb', Tahoma, Arial, sans-serif !important;
     font-weight: 500 !important;
     font-weight: 500 !important;
     color: #333 !important;
     color: #333 !important;
     font-size: 15px !important;
     font-size: 16px !important; /* اندازه فونت بزرگ شده */
    text-align: center;
     white-space: nowrap;
     white-space: nowrap;
     overflow: hidden;
     overflow: hidden;
خط ۱۳۸: خط ۱۲۹:
}
}


.fz-count {
/* رنگ‌بندی دسته‌بندی‌ها */
    font-size: 13px !important;
    color: #666 !important;
    background: #f0fdf4;
    padding: 2px 8px;
    border-radius: 10px;
    font-family: 'IRANSans', 'IRANSansWeb', Tahoma, Arial, sans-serif !important;
}
 
.fz-card.tech { border-bottom-color: #16bd78 !important; }
.fz-card.tech { border-bottom-color: #16bd78 !important; }
.fz-card.art { border-bottom-color: #ff9f43 !important; }
.fz-card.art { border-bottom-color: #ff9f43 !important; }
.fz-card.science { border-bottom-color: #54a0ff !important; }
.fz-card.science { border-bottom-color: #54a0ff !important; }


/* واکنش‌گرایی موبایل */
@media (max-width: 768px) {
@media (max-width: 768px) {
     .fz-category-grid {
     .fz-category-grid { grid-template-columns: repeat(2, 1fr) !important; }
        grid-template-columns: repeat(2, 1fr) !important;
    }
}
}


.is-hidden {
/* کلاس مخفی‌سازی برای فیلتر و جستجو */
    display: none !important;
.is-hidden { display: none !important; }
}
</style>
</style>


<script>
<script>
// تابع فیلتر دسته‌بندی
function filterSelection(event, category) {
function filterSelection(event, category) {
     const cards = document.getElementsByClassName("fz-card");
     const cards = document.getElementsByClassName("fz-card");
     const buttons = document.getElementsByClassName("fz-filter-btn");
     const buttons = document.getElementsByClassName("fz-filter-btn");
 
   
     for (let btn of buttons) {
    // حذف حالت فعال از همه دکمه‌ها
        btn.classList.remove("active");
     for (let btn of buttons) btn.classList.remove("active");
     }
     // اضافه کردن حالت فعال به دکمه کلیک شده
 
     event.currentTarget.classList.add("active");
     event.currentTarget.classList.add("active");


    // نمایش یا عدم نمایش کارت‌ها
     for (let card of cards) {
     for (let card of cards) {
         if (category === 'all' || card.classList.contains(category)) {
         if (category === 'all' || card.classList.contains(category)) {
خط ۱۸۲: خط ۱۶۴:
}
}


// تابع جستجوی زنده
document.getElementById('categorySearch').addEventListener('keyup', function() {
document.getElementById('categorySearch').addEventListener('keyup', function() {
     const val = this.value.toLowerCase().trim();
     const val = this.value.toLowerCase().trim();
خط ۱۸۸: خط ۱۷۱:
     for (let card of cards) {
     for (let card of cards) {
         const title = card.querySelector('.fz-title').innerText.toLowerCase();
         const title = card.querySelector('.fz-title').innerText.toLowerCase();
         card.classList.toggle("is-hidden", !title.includes(val));
         if (title.includes(val)) {
            card.classList.remove("is-hidden");
        } else {
            card.classList.add("is-hidden");
        }
     }
     }
});
});