织梦栏目动态链接地址如何获取?

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

什么是动态链接?

在织梦CMS中,链接分为两种:

织梦栏目动态链接地址
(图片来源网络,侵删)
  1. 静态链接:以 .html 结尾的链接,这种链接实际上是服务器通过伪静态技术(如 mod_rewrite)将一个动态请求伪装成了静态页面,利于SEO。
  2. 动态链接:以 .php 并且包含问号 和参数的链接,plus/list.php?tid=1

当您选择“使用动态页”时,织梦会直接生成这种真实的动态链接。


如何设置栏目使用动态链接?

这个设置是在后台的“核心频道模型”中全局配置的,影响所有新建或修改的栏目。

操作步骤:

  1. 登录织梦DedeCMS后台。

    织梦栏目动态链接地址
    (图片来源网络,侵删)
  2. 在左侧菜单栏中,找到并点击 【系统】 -> 【核心频道模型】 -> 频道设置】

  3. 在打开的页面中,找到 “列表选项”“文章列表选项” 这一部分。

  4. 您会看到一个名为 “列表命名规则” 的下拉菜单或单选框组。

    • 选择动态链接:请选择 list.php?tid=[ID] 或类似的、明确包含 和 tid 参数的选项。
    • 选择静态链接:如果您想使用伪静态,可以选择类似 {typedir}/list_{page}.html 的规则。
  5. 点击页面底部的 【确定】 按钮保存设置。

重要提示

  • 这个设置只对新添加或修改后保存的栏目生效,对于已经存在的、之前设置为静态链接的栏目,您需要手动进入每个栏目进行修改并保存,才能使其应用新的链接规则。

如何获取栏目的动态链接地址?

在模板文件(通常是 .htm 文件)中,织梦提供了一系列内置的标签来获取栏目的各种链接地址。

获取当前栏目的动态链接

如果您想在当前栏目的模板文件(如 list_article.htm)中获取本栏目的链接,最常用的是 {dede:field name='phpurl'/}

  • 标签代码

    <a href="{dede:field name='phpurl'/}/list.php?tid={dede:field name='id'/}">查看本栏目全部文章</a>
  • 代码解析

    • {dede:field name='phpurl'/}:这个标签会获取到您在后台“系统基本参数”中设置的“站点根目录”,通常是 或 /dedecms/,它能确保链接地址的绝对正确性。
    • list.php:这是织梦默认的文章列表页动态脚本。
    • tid={dede:field name='id'/}{dede:field name='id'/} 获取当前栏目的ID号。tid 是栏目ID的参数名,组合起来就是 tid=1, tid=2 等。

获取任意指定栏目的动态链接

如果您想在首页或其他模板中调用一个指定栏目(比如ID为5的栏目)的链接,可以使用 {dede:channel}

  • 标签代码

    {dede:channel typeid='5'}
    <a href="[field:phpurl/]/list.php?tid=[field:id/]">[field:typename/]</a>
    {/dede:channel}
  • 代码解析

    • {dede:channel typeid='5'}typeid='5' 指定了要获取的栏目ID。
    • [field:phpurl/]:在 {dede:channel} 标签内,使用 [field:phpurl/] 来获取栏目的PHP路径。
    • [field:id/]:获取该栏目的ID。
    • [field:typename/]:获取该栏目的名称。

如果您想获取所有顶级栏目的动态链接,可以省略 typeid 属性:

{dede:channel type='top'}
    <a href="[field:phpurl/]/list.php?tid=[field:id/]">[field:typename/]</a>
{/dede:channel}

页获取所属栏目的动态链接

在文章详情页模板(如 article_article.htm)中,您可以通过 {dede:field name='typeid'} 获取文章所属的栏目ID,然后手动拼接链接。

  • 标签代码

    <a href="{dede:global name='cfg_phpurl'/}/list.php?tid={dede:field name='typeid'/}">返回所属栏目</a>
  • 代码解析

    • {dede:global name='cfg_phpurl'/}:这是一个全局变量,等同于 {dede:field name='phpurl'/},获取站点根目录。
    • {dede:field name='typeid'/}:获取当前文章所属栏目的ID。

动态链接的优缺点及注意事项

优点:

  1. 开发调试方便:可以直接在URL后面加参数进行测试,list.php?tid=1&PageNo=2
  2. 服务器配置简单:不需要配置伪静态规则(如 .htaccessweb.config),对新手友好。

缺点:

  1. SEO劣势:虽然现代搜索引擎对动态URL的抓取能力已大大增强,但从传统SEO角度看,.html 后缀的静态/伪静态链接在权重和美观度上通常被认为更优。
  2. 用户体验:URL中包含 和参数,看起来不够“简洁”和“专业”。

注意事项:

  1. 与分页的配合:动态链接的分页页码通常是通过 &PageNo=2 这样的参数传递的,第二页的链接可能是 plus/list.php?tid=1&PageNo=2,织梦的分页标签会自动处理这个。
  2. URL美化:如果您使用了动态链接,但仍然希望URL更美观,可以配置服务器的URL重写(伪静态),将 plus/list.php?tid=1 这样的请求重写为 category/1/list-1.html 的形式,这需要服务器支持并配置相应的规则。
  3. 性能:对于访问量非常大的网站,纯动态页面每次请求都需要PHP脚本重新生成,对服务器CPU压力较大,而静态/伪静态页面可以直接由服务器返回,性能更好。
需求场景 推荐使用的标签/代码 说明
后台设置 系统 -> 核心频道模型 -> 内容频道设置 -> 列表命名规则 选择 list.php?tid=[ID]
当前栏目链接 {dede:field name='phpurl'/}/list.php?tid={dede:field name='id'/} 在列表页模板中使用
指定栏目链接 {dede:channel typeid='5'}[field:phpurl/]/list.php?tid=[field:id/]{/dede:channel} 在任意模板中调用指定栏目
文章页返回栏目 {dede:global name='cfg_phpurl'/}/list.php?tid={dede:field name='typeid'/} 在文章详情页模板中使用

希望这份详细的指南能帮助您完全理解并掌握织梦CMS的栏目动态链接设置!

-- 展开阅读全文 --
头像
C语言如何从字符串中提取数字?
« 上一篇 03-07
吉林大学c语言视频教程下载
下一篇 » 03-07

相关文章

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