POSCMS 框架使用导航

Posted magiclor

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了POSCMS 框架使用导航相关的知识,希望对你有一定的参考价值。

简介

phpOpenSourceCMS简称POSCMS,提供从内容发布、组织、传播、互动、"PC+移动"的一体化网站解决方案。系统基于CodeIgniter框架,主要面向大中型站点。是一套非常适合用做系统建站或者进行二次开发的程序核心。

下载

POSCMS 开源全能网站内容管理系统

安装

大众体验版版运行环境
推荐使用:UPUPW_NP5.6
PHP要求5.6及以上(7.1以下)
服务器支持Zend环境

  • php 7.2以上无Mcrypt扩展
  1. 前台
    解压到网站根目录
    访问 localhost/install.php 进入安装模式
  2. 后台
    后台 localhost/admin.php
    账号密码 admin

资料

  1. POSCMS 首页
  2. POSCMS 开发框架
  3. POSCMS 帮助手册
  4. POSCMS 论坛
  5. POSCMS 演示程序

前台常用标签

  1. 引入静态文件

    变量 说明
    {THEME_PATH} 站点静态目录
    {HOME_THEME_PATH} 网站主题风格目录
    {MODULE_THEME_PATH} 本模块主题风格目录
  2. 模板引用

    1. {template "xxx.html"} 引用本目录下的,当本目录不存在是会引用common下的xxx.html
    2. {template "xxx.html","/"} 强制调用common下的xxx.html
  3. 注意页面内cssjs的写法。具体写法

4. 首页

  1. 全局变量

    1. {$meta_title} 页面头部标题
    2. {$meta_keywords} 页面头部关键字,采用网站关键字
    3. {$meta_description} 页面头部描述,采用网站描述
    4. {SITE_URL} 当前站点URL
  2. 导航(共享模块)

    1. 共享栏目循环

      1. 查询共享模块的所有顶级栏目

        {list action=category module=share pid=0}
        栏目名称{$t.name}
        栏目地址{$t.url}
        {/list}
      2. 两级循环显示栏目(先循环父栏目,再循环其子栏目)

        {list action=category module=share pid=0 return=c1}
            我是父栏目:{$c1.name}<br>
            {if $c1.child}
            {list action=category module=share pid=$c1.id return=c2}
                我是{$c1.name}的子栏目:{$c2.name}<br>
                {if $c2.child}
                {list action=category module=share pid=$c2.id return=c3}
                我是{$c2.name}的子栏目:{$c3.name}<br>
                {/list}
                {/if}
            {/list}
            {/if}
        {/list}
    2. 模块栏目循环

      {list action=category pid=0 return=c1}
          我是父栏目:{$c1.name}<br>
          {list action=category pid=$c1.id return=c2}
              我是{$c1.name}的子栏目:{$c2.name}<br>
          {/list}
      {/list}
    3. 显示指定共享栏目的单条数据信息

      名称 {dr_share_cat_value(5, ‘name‘)}
      url {dr_share_cat_value(5, ‘url‘)}
      内容 {dr_share_cat_value(5, ‘content‘)}
      图片 {dr_get_file(dr_share_cat_value(5, ‘thumb‘))}
      截取内容100个字 {dr_strcut(dr_clearhtml(dr_share_cat_value(5, ‘content‘)), 100)}
  3. 输出新闻模块的所有推荐位并查询出来结果

    {php $flag=$ci->get_cache(‘module-‘.SITE_ID.‘-news‘, ‘setting‘, ‘flag‘);}
    {loop $flag $fid $f}
    {if $f.name}
    推荐位id:{$fid}
    推荐位名称:{$f.name}
    <br>
    //开始查询推荐位的结果集
    {list action=module module=news flag=$fid}
    {$t.title}<br>
    {/list}
    <hr>
    {/if}
    {/loop}
  4. 自定义链接(主导航[独立模块]、首页幻灯、首页头条、底部导航、友情链接...)

    1. 调用自定义链接

      {list action=navigator type=5}
      地址:{$t.url}
      标题:{$t.title}
      名称:{$t.name}
      图片:{dr_thumb($t.thumb,宽,高)}或者{dr_get_file($t.thumb)}
      {/list}
    2. N级导航调用方式,假设调用type=1的主导航数据

      {list action=navigator type=1 pid=0 return=n1}
      <li>
          顶级导航:{$n1.name}
          {if $n1.child}<!--这一句是判断是否有下级导航-->
          <!--循环下级导航时,需要把pid=上级的id,renturn=一个新值,如n2-->
          {list action=navigator type=1 pid=$n1.id return=n2}
              下级导航:{$n2.name}
              .....可无限判断下级菜单
          {/list}
          {/if}
      </li>
      {/list}
  5. 插入PHP语句

    <?php
        $name = "magiclor";
      echo $name;    
    ?>

5. 共享模块

  1. 全局变量
变量引用 介绍
{MODULE_URL} 模块的URL地址(限制模块页)
{MODULE_NAME} 模块的名称(限制模块页)
{MODULE_TITLE} 模块的SEO标题(限制模块页)
{MODULE_THEME_PATH} 模块的风格路径(限制模块页)
  1. 用于调用当前栏目的下级栏目分类或者同级栏目分类

    <!--循环同级栏目或者子栏目-->
    {loop $related $c}
    <a href="{$c.url}">{$c.name}</a>
    {/loop}

    只能用在category.html/list.html/show.html三个模板下面才可以用

    当本栏目存在子栏目时就循环输出它的下级子栏目

    当本栏目没有子栏目时它就输出和本栏目同级别的其他栏目

  2. 模块栏目显示

    {list action=module module=news .....标准的查询我就不写了}
    栏目名称 {dr_cat_value(‘1-news‘, $t[‘catid‘], ‘name‘)} 
    如果在当前栏目可以简化:{dr_cat_value($t[‘catid‘], ‘name‘)}
    .............................
    栏目地址 {dr_cat_value(‘1-news‘, $t[‘catid‘], ‘url‘)} 
    如果在当前栏目可以简化:{dr_cat_value($t[‘catid‘], ‘url‘)}
    .............................
    栏目图片 {dr_get_file(dr_cat_value(‘1-news‘, $t[‘catid‘], ‘thumb‘))}
    {/list}
  3. 模块列表循环

    1. 显示文章指定栏目1的数据,num表示显示10条,order表示按更新时间排序,默认cache缓存时间10小时

      {list action=module module=news catid=1 field=title,url,updatetime order=updatetime num=10}
      标题:{$t.title}
      地址:{$t.url}
      更新时间:{$t.updatetime}
      自定义更新时间:{dr_date($t._updatetime, ‘Y-m-d‘)}
      栏目名称:{dr_cat_value(‘news‘, $t.catid, ‘name‘)} 
      栏目URL:{dr_cat_value(‘news‘, $t.catid, ‘url‘)}
      {/list}
    2. 自定义分页显示文章模块的数据(可以在任何页面)

      {list action=module module=news page=1 pagesize=10 urlrule=index.php?page=[page]}
      .....
      {/list}
      {$pages}表示分页输出代码
      pagesize表示指定分页显示数据量
      urlrule表示分页地址规则,[page]参数必须有哦,否则分页链接不正常
    3. 推荐位查询,flag表示推荐位的id号,后台可以看到

      {list action=module module=news flag=1 num=10}
      .....
      {/list}
    4. ==错误排查方式,必须掌握,很实用==

      {list action=module catid=1 num=10}
      .....
      {/list}
      {$sql}:表示这段查询的sql语句解析
      {$error}:如果遇到查询错误,它会返回相关信息
      {$debug}:新版错误提示
  4. 模块内容调用

    1. 查询news模块的文章id=100的详细内容字段

      {list action=content id=100 module=news}
      标题:{$t.title}
      内容:{$t.content}
      自定义更新时间:{dr_date($t._updatetime, ‘Y-m-d‘)}
      {/list}
    2. 相关文章循环

      {list action=related field=title,url tag=中国,美国,日本}
      <a href="{$t.url}" data_ue_src="{$t.url}">{$t.title}</a>
      {/list}
      {$error}
    3. 关键词库循环

      {list action=tags num=40}
      <a href="{$t.url}" title="点击量:{$t.hits}">{$t.name}</a>
      {/list}
      {$error}
  5. 当前模板页面判断方法

    {if $indexc} 当前是首页 {/if}
    
    {if $indexm} 当前是模块首页 {/if}
    
    {if $ci->router->class == "page"} 当前是自定义页面页 {/if}
    
    {if $ci->router->class == "category"} 当前是栏目及列表面页 {/if}
    
    {if $ci->router->class == "search"} 当前是模块搜索页面页 {/if}
    
    {if $ci->router->class == "show"} 当前是模块内容面页 {/if}
    
    {if $ci->router->class == "extend"} 当前是模块子内容(扩展)面页 {/if}
    1. 获取文章关键词及链接

      1. 内容页中

        {php $tags = dr_tag_list(MOD_DIR, $tag);}
        {loop $tags $n $u}
        <a href="{$u}">{$n}</a>
        {/loop}
      2. 列表页中

        {php $tags = dr_tag_list(MOD_DIR, $t.keywords);}
        {loop $tags $n $u}
        <a href="{$u}">{$n}</a>
        {/loop}

      在任意位置调用内容的tag关键字和其链接

后台操作

  1. 设置 - 网站设置 - SEO设置/图片水印/自定义链接
  2. 设置 - 网站设置 - 内容模块(创建时一般选择==共享模块==)
    1. 模块的选择
    2. 推荐位
    3. 添加字段
      1. 分组字段Group类型是将多个字段聚合显示







以上是关于POSCMS 框架使用导航的主要内容,如果未能解决你的问题,请参考以下文章

框架布局接管屏幕并隐藏底部导航和工具栏

关于侧边导航菜单和片段的一般设计问题

以编程方式将片段添加到android中的框架布局

片段和导航抽屉的不同工具栏

使用导航从一个片段导航到另一个片段后,防止后按工作

使用 NavController 从片段导航到另一个片段