Acordion için HTML Kodunu şu şekilde değiştirin:
<div id="accordion">
<?php
if (!empty($sss_kategoriler)) {
foreach ($sss_kategoriler as $kategori) {
$kategori_id = $kategori['kategori_id'];
$kategori_sss = array_filter($sss, function($soru) use ($kategori_id) {
return $soru['kategori_id'] == $kategori_id;
});
if (!empty($kategori_sss)) { ?>
<div class="category-section" id="category-<?php echo $kategori['kategori_id']; ?>">
<h3 class="category-title"><?php echo $kategori['kategori_isim']; ?></h3>
<?php
foreach ($kategori_sss as $soru) { ?>
<div class="card post-faq-card" data-position="<?php echo $soru['link']; ?>">
<div class="card-header" style="cursor:pointer" data-toggle="collapse" data-target="#collapse<?php echo $soru['sss_id']; ?>" aria-expanded="false" aria-controls="collapse<?php echo $soru['sss_id']; ?>">
<?php echo $soru['soru']; ?>
</div>
<div id="collapse<?php echo $soru['sss_id']; ?>" class="collapse" data-parent="#accordion">
<div class="card-body">
<?php echo $soru['cevap']; ?>
</div>
</div>
</div>
<?php }
?>
</div>
<?php }
}
} else {
echo "<p>SSS bulunamadı.</p>";
} ?>
</div>Javascript kodunu da şöyle güncellerseniz sorun çözülecektir:
<script>
function scrollToCategory(categoryId) {
var element = document.getElementById('category-' + categoryId);
if (element) {
window.scrollTo({
top: element.offsetTop,
behavior: 'smooth'
});
}
}
document.getElementById("myInput").addEventListener("input", function() {
var filter = this.value.toUpperCase();
var faqItems = document.querySelectorAll("#accordion .card");
faqItems.forEach(function(item) {
var question = item.querySelector(".card-header").textContent || item.querySelector(".card-header").innerText;
if (question.toUpperCase().indexOf(filter) > -1) {
item.style.display = "";
} else {
item.style.display = "none";
}
});
});
</script>