danWeiGaiKuang1.php 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. <?php
  2. // 引入公共查询类
  3. require_once 'CommonQuery.php';
  4. // 频道名称
  5. $channelName = '单位概况';
  6. // 获取URL参数中的文章ID
  7. $articleId = isset($_GET['id']) ? $_GET['id'] : '';
  8. // 使用loadListByChannelName函数获取文章列表(最多10篇)
  9. $articlesList = loadListByChannelName(10, $channelName);
  10. // 默认显示第一篇文章或指定ID的文章
  11. $currentArticle = null;
  12. if (!empty($articleId)) {
  13. // 如果有指定ID,则获取该文章内容
  14. $currentArticle = getContentById($articleId);
  15. } elseif (!empty($articlesList)) {
  16. // 如果没有指定ID但有文章列表,则显示第一篇文章
  17. $firstArticle = $articlesList[0];
  18. $currentArticle = getContentById($firstArticle['id']);
  19. }
  20. // 如果没有获取到文章,使用默认数据
  21. if (!$currentArticle) {
  22. $currentArticle = [
  23. "title" => "暂无内容",
  24. "content" => "抱歉,当前没有相关内容。",
  25. "date" => date('Y-m-d'),
  26. "views" => 0
  27. ];
  28. } else {
  29. // 确保必要字段存在
  30. $currentArticle['title'] = isset($currentArticle['title']) ? $currentArticle['title'] : (isset($currentArticle['subject']) ? $currentArticle['subject'] : '无标题');
  31. $currentArticle['content'] = isset($currentArticle['content']) ? $currentArticle['content'] : '无内容';
  32. $currentArticle['date'] = isset($currentArticle['date']) ? $currentArticle['date'] : (isset($currentArticle['createtime']) ? date('Y-m-d', intval($currentArticle['createtime'])) : date('Y-m-d'));
  33. $currentArticle['views'] = isset($currentArticle['views']) ? $currentArticle['views'] : 0;
  34. }
  35. // 轮播图数据
  36. $carouselItems = [
  37. [
  38. "image" => "/uploads/20251013/6af88ead615998ad6c789327b26f7bbe.jpg",
  39. "alt" => $channelName
  40. ]
  41. ];
  42. ?>
  43. <!DOCTYPE html>
  44. <html lang="zh-CN">
  45. <head>
  46. <meta charset="UTF-8">
  47. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  48. <title>厦门市文化遗产保护中心 - <?php echo $currentArticle['title']; ?></title>
  49. <link rel="stylesheet" href="/css/fonts.css">
  50. <link rel="stylesheet" href="/css/fontawesome.min.css">
  51. <link rel="stylesheet" href="/css/bootstrap.min.css">
  52. <link rel="stylesheet" href="/css/swiper-bundle.min.css">
  53. <link rel="stylesheet" href="/css/style.css">
  54. <script src="/js/jquery-3.7.1.js"></script>
  55. <script src="/js/bootstrap.bundle.js"></script>
  56. <script src="/js/swiper-bundle.min.js"></script>
  57. </head>
  58. <body>
  59. <?php include __DIR__ . '/components/navbar.php'; ?>
  60. <!-- 轮播图 -->
  61. <div class="swiper mySwiper" style="width: 100%; height: 400px;">
  62. <div class="swiper-wrapper">
  63. <?php foreach ($carouselItems as $item): ?>
  64. <div class="swiper-slide">
  65. <img src="<?php echo $item['image']; ?>" alt="<?php echo $item['alt']; ?>" style="width: 100%; height: 100%; object-fit: cover;">
  66. </div>
  67. <?php endforeach; ?>
  68. </div>
  69. <div class="swiper-pagination"></div>
  70. <div class="swiper-button-prev"></div>
  71. <div class="swiper-button-next"></div>
  72. </div>
  73. <!-- 主要内容 -->
  74. <div class="main-content">
  75. <div class="container">
  76. <div class="row">
  77. <!-- 左侧导航 -->
  78. <div class="col-12 col-sm-12 col-md-4 col-lg-3">
  79. <div class="sidebar">
  80. <div class="title">
  81. <h2><?php echo $channelName; ?></h2>
  82. </div>
  83. <ul class="sidebar-menu">
  84. <?php if (!empty($articlesList)): ?>
  85. <?php foreach ($articlesList as $article): ?>
  86. <?php
  87. $articleTitle = isset($article['title']) ? $article['title'] : (isset($article['subject']) ? $article['subject'] : '无标题');
  88. $isActive = (isset($article['id']) && isset($currentArticle['id']) && $article['id'] == $currentArticle['id']);
  89. ?>
  90. <li>
  91. <a href="danWeiGaiKuang.php?id=<?php echo $article['id']; ?>"
  92. <?php echo $isActive ? 'class="active"' : ''; ?>>
  93. <?php echo $articleTitle; ?><i class="fa fa-arrow-right"></i>
  94. </a>
  95. </li>
  96. <?php endforeach; ?>
  97. <?php else: ?>
  98. <li><a href="#">暂无相关内容<i class="fa fa-arrow-right"></i></a></li>
  99. <?php endif; ?>
  100. </ul>
  101. </div>
  102. </div>
  103. <!-- 右侧内容 -->
  104. <div class="col-12 col-sm-12 col-md-8 col-lg-9">
  105. <div class="content">
  106. <div class="section-title">
  107. <h2 class="icon"><?php echo $currentArticle['title']; ?></h2>
  108. <nav aria-label="breadcrumb">
  109. <ol class="breadcrumb">
  110. <li class="breadcrumb-item"><a href="/">首页</a></li>
  111. <li class="breadcrumb-item active" aria-current="page"><?php echo $channelName; ?></li>
  112. </ol>
  113. </nav>
  114. </div>
  115. <div class="news-detail">
  116. <?php echo $currentArticle['content']; ?>
  117. </div>
  118. </div>
  119. </div>
  120. </div>
  121. </div>
  122. </div>
  123. <?php include __DIR__ . '/components/footer.php'; ?>
  124. <script>
  125. $(document).ready(function() {
  126. // 初始化 Swiper
  127. const swiper = new Swiper(".mySwiper", {
  128. slidesPerView: 1,
  129. spaceBetween: 30,
  130. loop: true,
  131. pagination: {
  132. el: ".swiper-pagination",
  133. clickable: true,
  134. },
  135. navigation: {
  136. nextEl: ".swiper-button-next",
  137. prevEl: ".swiper-button-prev",
  138. },
  139. autoplay: {
  140. delay: 5000,
  141. disableOnInteraction: false,
  142. },
  143. });
  144. });
  145. </script>
  146. </body>
  147. </html>