[英]Display Wordpress Sub-category in dropdown based on the selected Parent Category
[英]Display active category, sub category after page refresh
我试图在页面重新加载后显示活动类别首先我尝试使用 URL 和 PHP,但它不适用于子类别现在我试图通过使用 JavaScript 或 jQuery 来实现这一点。 下面是我的PHP代码
function multilevel($connection, $parent = 0, $cat_id)
{
$side = '';
$sql = '';
if ($parent == 0) {
$sql = "SELECT * FROM `categorys` WHERE parent_id = 0 ANd cats_status = 1 ORDER BY cats_name ASC";
} else {
$sql = "SELECT * FROM `categorys` WHERE parent_id = $parent ANd cats_status = 1 ORDER BY cats_name ASC";
}
$result = mysqli_query($connection, $sql);
// $count = mysqli_num_rows($result);
while ($row = mysqli_fetch_assoc($result)) {
if ($row['parent_id'] == 0) {
$side .= "<li class='categorys'>
<h3>
<a href='?cat_id=" . $row['cats_id'] . "' id='" . $row['cats_id'] . "' class='nav-link'>" . $row['cats_name'] . "</a>
</h3>";
} else {
$side .= "<li class='categorys'>
<h3>
<a href='?cat_id=" . $row['cats_id'] . "' id='" . $row['cats_id'] . "' class='nav-link'>" . $row['cats_name'] . "</a>
</h3>";
}
$side .= "<ul class='nav nav-link collapse' id='submenu'>" . multilevel($connection, $row['cats_id'], $row['cats_id']) . "</ul>";
$side .= "</li>";
}
return $side;
}
$cat_id = get_save_data($connection, $_GET['cat_id']);
echo multilevel($connection, 0, $cat_id);
这是jQuery代码
$(document).ready(function() {
$("#accordian a").click(function() {
var link = $(this);
var closest_ul = link.closest("ul");
var parallel_active_links = closest_ul.find(".active")
var closest_li = link.closest("li");
var link_status = closest_li.hasClass("active");
var count = 0;
closest_ul.find("ul").slideUp(function() {
if (++count == closest_ul.find("ul").length)
parallel_active_links.removeClass("active");
});
if (!link_status) {
closest_li.children("ul").slideDown();
closest_li.addClass("active");
}
})
})
$(document).ready(function() {
$(".nav-item a").on("click", function() {
$(".nav-item.active").removeClass("active");
$(this).parent().addClass("active");
}).filter(function() {
return window.location.href.indexOf($(this).attr('href').trim()) > -1;
}).click();
});
通过使用 PHP,我无法显示子类别处于活动状态,这就是我试图通过 jQuery 实现这一目标的原因。 有没有办法使用 URL 参数或没有 URL 来显示活动类别
如果您的问题是:如何获取 url 中存在的查询参数,您可以使用 $_GET 超全局变量。 这是一个您可以检查的数组(更多信息在这里: https ://www.php.net/manual/en/reserved.variables.get.php)。
请注意,您的用户可以在 url 中放置任何字符串(因此根据您的用户在那里输入的内容运行数据库查询是不安全的。但是好的,我想在您的情况下它是安全的,您只需要进行比较)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.