理论上网站上的所有页面都可以通过栏目管理来添加,那自定义页面的意义是什么呢?

网站的需求是很多样化的,比如需要制作一个对外提供数据的api,甚至制作一个搜索页面,或者制作一些数据和栏目没有对应关系的页面,这些页面独立于网站栏目,如果用栏目页来制作,会导致栏目结构混乱和不好维护,这时候自定义页面就可以很好解决这种问题,下面我们演示如何制作一个自定义的搜索页面。

1、打开网站模板文件目录,新建一个MyRoute.config文件(保存为utf8格式),文件名称规则为: *Route.config,如下图:

2、打开这个文件,输入下面的xml内容,并保存。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <route urlConstraint="^/news/search/([1-9]\d{0,8}/)?$"  viewPath="帮助中心/search.cshtml" httpcacheSolutionId="0" columnId="0" title="帮助搜索"></route>
</configuration>

其中route节点为自定义页面的路由参数,多个自定义页面可以新建多个route节点。

urlConstraint:表示url的正则匹配规则,匹配的话就可以请求viewPath指定的模板文件。

viewPath:模板文件对应的相对路径,这里只填写相对路径,模板必须放在views目录下。

httpcacheSolutionId:自定义使用的缓存方案Id,如果不使用缓存,设置为0。

columnId:自定义页面对应的栏目id,如果不需要对应,设置为0。

title:自定义页面的浏览器中显示的标题。

3、点击views。

4、创建一个帮助中心文件夹,如下图:

5、点击打开帮助中心,创建一个search.cshtml文件(保存为utf8格式),如下图:

6、打开搜索页面,输入下面内容:

@{ 
    var keyword = Request.QueryString["key"];//获取搜索关键词
    var i=0;
 }
<div>
<div class="container">
  <ul class="breadcrumb">    <li><a href="/"><span class="fa fa-home"> 首页</span></a></li>
 
   <li><a href="">在线搜索</a></li>   </ul>
  <div class="news-list">
   @if (!string.IsNullOrEmpty(keyword))
  {
    foreach (var item in Html.InfoDataList(new { Table = "news" }, "[title] like @title", new { title = "%" + keyword + "%" }))
    {
     string url = Html.InfoDataUrl((int)item.ColumnId, (int)item.Id);
     <div class="item clearfix">
     <div class="title"><a href="@url" target="_blank"><i class="fa fa-angle-right"></i>@item.Title</a></div>
     </div>
     i++;
     }
   }
   @if(i==0)
    {
      <div>暂时没有找到匹配的记录,请更换一个关键词重新搜索!</div>
    }
   </div>
</div>

这样一个简单的搜索页面(搜索news表,注意需要有news信息表,否则会报错)就制作完成了。

7、点击左上角的重启图标,重启进程后后自定义页面路由生效

8、在浏览器输入:http://你的域名/news/search/就可以打开搜索页面。


在使用pageadmin建站软件网页设计的时候不懂的可以参考一下帮助中心的文章。

pageadmin CMS 如何添加自定义页面的更多相关文章

  1. .NET PageAdmin CMS

    .NET PageAdmin CMS 完全破解步骤(非简单去版权) 其实当初我的目的是很纯洁的,只是想找一个简单的网站生成模板,由于对.net更熟悉一点,就去搜索了.net框架的CMS,看它的介绍挺强 ...

  2. pageadmin CMS网站制作教程:模板概念解释

    pageadmin CMS网站建设教程:模板概念解释 1.模板页 又叫视图页面,PageAdmin后台栏目或信息中用到的模板页面的统称,格式必须是.cshtml后缀文件,前端人员制作的页面默认都是ht ...

  3. pageadmin CMS网站建设教程:模板中如何实现信息数据共享

    pageadmin CMS网站制作教程:模板中如何实现信息数据共享 很多时候信息数据需要共享,一个最常用的应用场景就是手机版(独立手机,非响应式)本共享pc版本数据,下面以这个场景为例讲解. 假设手机 ...

  4. PageAdmin CMS网站制作教程实例:如何制作一个报名表?

    PageAdmin CMS网站建设实例:如何制作一个报名表? 有时我们根据需求需要制作一些自定义表,该如何去制作呢? 我们以制作一个报名表为例: 登录后台地址,进入后台, 2.在顶部导航中找到系统,并 ...

  5. PageAdmin CMS网站建设教程:如何创建及管理栏目?

    PageAdmin CMS网站制作教程:如何创建及管理栏目?1.登录管理后台后,在顶部导航中找到网站,并点击: 2.在左侧栏目中找到栏目管理,并点击: 3.进入到栏目管理页面,在顶部找到菜单,点击添加 ...

  6. pageadmin CMS网站建设教程:如何修改用户密码?

    pageadmin CMS网站建设教程: 当我们想修改密码,该如何修改呢? 1. 首先,登录会员中心,会员中心的地址是在网址后面加上/member/login: 2. 例:我的网站地址是localho ...

  7. pageadmin CMS网站制作教程:

    pageadmin CMS网站建设教程:模板中如何实现信息数据共享 很多时候信息数据需要共享,一个最常用的应用场景就是手机版(独立手机,非响应式)本共享pc版本数据,下面以这个场景为例讲解. 假设手机 ...

  8. pageadmin CMS网站制作教程:栏目单页内容如何修改

    pageadmin CMS网站制作教程:栏目单页内容如何修改 一般情况下,如公司介绍,联系方式等介绍内页面都属于单页,单页内容可以直接在栏目设置界面进行修改,如下 1.对栏目单页内容进行设置,登录后台 ...

  9. 程氏CMS去掉静态页面的隐藏性版权方法

    程氏CMS去掉静态页面的隐藏性版权方法 实例如图: 因为之前自己找了好久都没找到这俩代码写在那个文件夹的,经过跟csqq8讨论了也没有得到结果,今天突然发现,原来这些代码都经过base64加密,用加密 ...

随机推荐

  1. oracle账户密码更新

    oracle忘记用户名密码怎样恢复 首先cmd - sqlplusw 普通用户登陆:用户名:scott(普通用户名)      密码:tiger(普通用户密码) 管理员登陆:用户名:system 密码 ...

  2. 关于phpmailer邮件发送

    今天有个需求,要把phpmailer集成到框架里面 所以我去官方下载了 phpmail5.2.6 地址在 https://github.com/PHPMailer/PHPMailer/releases ...

  3. XMLHttpRequest.status 返回服务器状态码

    XMLHttpRequest.status: 1xx-信息提示 这些状态代码表示临时的响应.客户端在收到常规响应之前,应准备接收一个或多个1xx响应. 100-继续. 101-切换协议. 2xx-成功 ...

  4. C++ 20170807

    mesos/3rdparty/stout/include/stout/err.hpp=======================================================str ...

  5. 2015年传智播客JavaEE 第168期就业班视频教程 02-ERP简介

    其实ERP描述的是管理一个企业的整体的所有的资源.ERP是帮你管整个企业的运行.那它是管哪一类企业呢?比如说帮光线传媒.ERP更多是用在生产制造企业,这是最好的,其次的就是这种销售型企业,二道贩子那种 ...

  6. Struts2拦截器概述

    --------------------siwuxie095 Struts2 拦截器概述 1.Struts2 框架封装的很多功能都在 Struts2 的拦截器中 2.Struts2 框架中有很多拦截器 ...

  7. 23-吝啬的国度(vector+深搜)

    吝啬的国度 时间限制:1000 ms  |  内存限制:65535 KB 难度:3   描述 在一个吝啬的国度里有N个城市,这N个城市间只有N-1条路把这个N个城市连接起来.现在,Tom在第S号城市, ...

  8. android studio使用真机测试时点击Debug调试模式时报Error running app:No target device found,点击运行模式却是启动正常的

    原因是adb没检测到设备(包括真机和虚拟机). 在Terminal执行adb devices命令,查看有没有连接到的设备. 如果没有设备,确认虚拟机是否正确打开,真机是否连接打开USB调试并安装驱动. ...

  9. tp5和gateworer集成

    第一步:安装thinkpph程序包 第二步:切换到根目录,使用composer require workerman/gateway-worker 安装Linux版本的gateway.(前提是你服务器安 ...

  10. Python学习-9.Python函数定义

    先定义一个最基本的函数作为例子: def Print(msg): print(msg) 函数名为Print,参数有一个,为msg,函数体调用print系统函数,输出msg. 接下来就是可变参数,这个特 ...