简介

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. 引入静态文件

变量

说明

站点静态目录

网站主题风格目录

本模块主题风格目录

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

4. 首页

  1. 全局变量
  1. {$meta_title} 页面头部标题
  2. {$meta_keywords} 页面头部关键字,采用网站关键字
  3. {$meta_description} 页面头部描述,采用网站描述
  4. {SITE_URL} 当前站点URL
  1. 导航(共享模块)
  1. 共享栏目循环
  1. 查询共享模块的所有顶级栏目
{list action=category module=share pid=0}
栏目名称{$}
栏目地址{$t.url}
{/list}
  1. 两级循环显示栏目(先循环父栏目,再循环其子栏目)
{list action=category module=share pid=0 return=c1}
    我是父栏目:{$}<br>
    {if $c1.child}
    {list action=category module=share pid=$ return=c2}
        我是{$}的子栏目:{$}<br>
        {if $c2.child}
        {list action=category module=share pid=$ return=c3}
        我是{$}的子栏目:{$}<br>
        {/list}
        {/if}
    {/list}
    {/if}
{/list}
  1. 模块栏目循环
{list action=category pid=0 return=c1}
    我是父栏目:{$}<br>
    {list action=category pid=$ return=c2}
        我是{$}的子栏目:{$}<br>
    {/list}
{/list}
  1. 显示指定共享栏目的单条数据信息
名称 {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)}
  1. 输出新闻模块的所有推荐位并查询出来结果
{php $flag=$ci->get_cache('module-'.SITE_ID.'-news', 'setting', 'flag');}
{loop $flag $fid $f}
{if $}
推荐位id:{$fid}
推荐位名称:{$}
<br>
//开始查询推荐位的结果集
{list action=module module=news flag=$fid}
{$t.title}<br>
{/list}
<hr>
{/if}
{/loop}
  1. 自定义链接(主导航[独立模块]、首页幻灯、首页头条、底部导航、友情链接...)
  1. 调用自定义链接
{list action=navigator type=5}
地址:{$t.url}
标题:{$t.title}
名称:{$}
图片:{dr_thumb($t.thumb,宽,高)}或者{dr_get_file($t.thumb)}
{/list}
  1. N级导航调用方式,假设调用type=1的主导航数据
{list action=navigator type=1 pid=0 return=n1}
<li>
    顶级导航:{$}
    {if $n1.child}<!--这一句是判断是否有下级导航-->
    <!--循环下级导航时,需要把pid=上级的id,renturn=一个新值,如n2-->
    {list action=navigator type=1 pid=$ return=n2}
        下级导航:{$}
        .....可无限判断下级菜单
    {/list}
    {/if}
</li>
{/list}
  1. 插入PHP语句
<?php
    $name = "magiclor";
	echo $name;    
?>

5. 共享模块

  1. 全局变量

变量引用

介绍

模块的URL地址(限制模块页)

模块的名称(限制模块页)

模块的SEO标题(限制模块页)

模块的风格路径(限制模块页)

  1. 用于调用当前栏目的下级栏目分类或者同级栏目分类
<!--循环同级栏目或者子栏目-->
{loop $related $c}
<a href="{$c.url}">{$}</a>
{/loop}

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

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

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

  1. 模块栏目显示
{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}
  1. 模块列表循环
  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}
  1. 自定义分页显示文章模块的数据(可以在任何页面)
{list action=module module=news page=1 pagesize=10 urlrule=index.php?page=[page]}
.....
{/list}
{$pages}表示分页输出代码
pagesize表示指定分页显示数据量
urlrule表示分页地址规则,[page]参数必须有哦,否则分页链接不正常
  1. 推荐位查询,flag表示推荐位的id号,后台可以看到
{list action=module module=news flag=1 num=10}
.....
{/list}
  1. 错误排查方式,必须掌握,很实用
{list action=module catid=1 num=10}
.....
{/list}
{$sql}:表示这段查询的sql语句解析
{$error}:如果遇到查询错误,它会返回相关信息
{$debug}:新版错误提示
  1. 模块内容调用
  1. 查询news模块的文章id=100的详细内容字段
{list action=content id=100 module=news}
标题:{$t.title}
内容:{$t.content}
自定义更新时间:{dr_date($t._updatetime, 'Y-m-d')}
{/list}
  1. 相关文章循环
{list action=related field=title,url tag=中国,美国,日本}
<a href="{$t.url}" data_ue_src="{$t.url}">{$t.title}</a>
{/list}
{$error}
  1. 关键词库循环
{list action=tags num=40}
<a href="{$t.url}" title="点击量:{$t.hits}">{$}</a>
{/list}
{$error}
  1. 当前模板页面判断方法
{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}
  1. 列表页中
{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类型是将多个字段聚合显示