织梦档案列表全部掉,原因何在?

99ANYc3cd6
预计阅读时长 11 分钟
位置: 首页 织梦建站 正文

使用“隐藏”属性(最推荐、最简单)

这是织梦CMS内置的功能,专门用于控制栏目是否在前台显示,它不会删除栏目,只是让它不出现在列表中。

织梦所有档案列表下掉
(图片来源网络,侵删)

适用场景:

  • 隐藏首页的顶级栏目列表。
  • 隐藏某个频道页下的子栏目。
  • 隐藏列表页上的相关栏目链接。

操作步骤:

  1. 登录后台:使用管理员账号登录您的织梦后台。

  2. 进入栏目管理:在左侧菜单栏中,点击【核心】 -> 【栏目管理】。

    织梦所有档案列表下掉
    (图片来源网络,侵删)
  3. 选择要隐藏的栏目:在栏目列表中,找到您想要隐藏的栏目,您可以隐藏单个栏目,也可以批量隐藏。

  4. 修改栏目属性

    • 单个隐藏:将鼠标移动到目标栏目行的【修改】按钮上,点击进入编辑页面。
    • 批量隐藏:在需要隐藏的栏目前勾选复选框,然后点击上方的【批量修改】按钮。
  5. 设置“隐藏”选项

    • 在栏目编辑页面,找到 “栏目列表选项” 这一部分。
    • 勾选 “隐藏” 这个复选框。
    • 点击 “确定” 保存修改。

效果说明:

织梦所有档案列表下掉
(图片来源网络,侵删)
  • 勾选“隐藏”后,这个栏目将不会在首页的 {dede:channel} 标签调用中显示。
  • 不会在“栏目频道页”的子栏目列表中显示。
  • 不会在文章的“相关栏目”中显示。
  • 这个栏目的内容页依然可以正常访问,并且您仍然可以通过自定义的链接(如导航菜单)跳转到它。

修改模板文件(适用于首页/频道页)

如果您想完全自定义首页或某个频道页的栏目显示逻辑,而不是使用系统默认的调用方式,可以直接修改对应的模板文件。

适用场景:

  • 首页只想显示特定的几个栏目,其他栏目完全不想出现。
  • 需要对栏目的显示顺序、样式进行特殊排版。

操作步骤:

  1. 找到模板文件

    • 首页模板:通常是 /templets/default/index.htm
    • 栏目频道页模板:通常是 /templets/default/list_channel.htm
    • 列表页模板:通常是 /templets/default/list_artlist.htm
  2. 定位并修改栏目调用标签: 找到模板文件中调用栏目的代码,通常是 {dede:channel}{dede:channelartlist}

    • 默认调用所有顶级栏目的代码可能是这样的:

      <div class="nav">
      {dede:channel type='top' row='8'}
      <a href="[field:typeurl/]">[field:typename/]</a>
      {/dede:channel}
      </div>

      这里的 type='top' 会调用所有顶级栏目。

    • 修改为只调用指定栏目:您可以通过 typeid 属性来指定只调用某一个或某几个栏目。

      <!-- 只调用ID为1, 3, 5的栏目 -->
      <div class="nav">
      {dede:channel typeid='1,3,5' row='8'}
      <a href="[field:typeurl/]">[field:typename/]</a>
      {/dede:channel}
      </div>

      您需要先在【栏目管理】中查看并记下想要显示的栏目的ID。

    • 排除某个栏目:如果您只想隐藏一个特定的栏目(比如ID为10的栏目),可以使用 notypeid 属性。

      <!-- 调用所有顶级栏目,但排除ID为10的栏目 -->
      <div class="nav">
      {dede:channel type='top' notypeid='10' row='8'}
      <a href="[field:typeurl/]">[field:typename/]</a>
      {/dede:channel}
      </div>
  3. 保存并更新:修改模板文件后,保存并上传到服务器,织梦通常会自动缓存,如果首页没有立即更新,可以到后台【生成】 -> 【更新主页】或【更新HTML】中手动更新一下。


使用SQL命令(批量、高效)

如果您有大量栏目需要隐藏,或者希望通过数据库直接操作,可以使用SQL命令。

⚠️ 警告: 此方法风险较高,操作前务必备份数据库!如果不确定如何操作,请优先使用方法一或方法二。

适用场景:

  • 需要批量隐藏几十上百个栏目。
  • 通过程序或脚本进行自动化管理。

操作步骤:

  1. 登录数据库管理工具:使用 phpMyAdmin 或其他工具登录您的网站数据库。

  2. 执行SQL语句

    • 将指定ID的栏目设置为隐藏

      UPDATE `dede_arctype` set `ishidden` = 1 WHERE id IN (1, 3, 5, 10);

      这里的 dede_arctype 是织梦默认的表前缀,如果您的表前缀不是 dede_,请替换成您自己的。(1, 3, 5, 10) 是您想要隐藏的栏目ID列表。

    • 将所有栏目都设置为隐藏(谨慎使用!):

      UPDATE `dede_arctype` set `ishidden` = 1;
  3. 验证结果:执行成功后,您可以回到织梦后台的【栏目管理】中查看,被修改的栏目“隐藏”选项应该已经被勾选了。


总结与建议

方法 优点 缺点 推荐度
后台隐藏属性 操作最简单、最安全,不影响内容,可逆性高。 需要一个个或批量在后台操作。 ★★★★★ (强烈推荐)
修改模板文件 灵活性最高,可以完全控制显示哪些栏目、如何显示。 需要懂一点HTML和织梦标签,修改后需手动更新。 ★★★★☆ (适合有自定义需求的用户)
SQL命令 效率最高,适合批量处理。 风险高,操作不当可能导致数据问题,需要懂SQL。 ★★☆☆☆ (仅推荐给高级用户)

给您的建议:

  • 对于大多数情况,请直接使用 方法一,这是织梦设计的标准功能,干净利落。
  • 如果您想在首页做一个精美的、非标准的导航栏,请使用 方法二,通过修改 index.htm 模板来实现。
  • 仅在您需要处理海量栏目且非常熟悉数据库操作时,才考虑 方法三

希望这些详细的解释能帮助您解决问题!

-- 展开阅读全文 --
头像
已SEO的Dede模板如何优化?
« 上一篇 03-12
织梦模板带手机站商城
下一篇 » 03-12

相关文章

取消
微信二维码
支付宝二维码