本篇文章给大家谈谈phpcms获取最新文章,以及phpcmscn对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、phpcms 如何调用指定栏目下最新文章
- 2、PHPCMS如何调用多个分类栏目的最新文章
- 3、phpcms v9首页怎么调用全站最新文章
- 4、phpcms如何调用全站最新的文章
- 5、PHPCMS如何调用最新文章,标签怎么写
- 6、phpcms怎么调用全站最新文章
1、phpcms 如何调用指定栏目下最新文章
在前台模板中使用phpcms标签调取文章列表:
{pc:content action="lists" catid="1" num="10" order="inputtime desc"}
!--使用catid制定栏目,使用order属性设置添加时间倒序获取最新文章--
{loop $data $v}
a href="{$v['url']}"{$v['title']}/a
{/loop}
{/pc}
在后端php程序里获取最新文章列表,引入文章模型,select方法读取列表数据:
$db = pc_base::load_model("content_model");
$db-set_catid($catid); //$catid代表栏目id
$datas = $db-select(array('catid'=$catid,'status'=99),"*",10,'inputtime desc'); //$datas便是文章列表数组数据了
PS:标签与二次开发的使用可参看phpcms官方使用手册以及iphpcms的视频教程。
2、PHPCMS如何调用多个分类栏目的最新文章
这里不知道你说的多个分类具体是指什么情况,所以给出两种我们使用phpcms网站建设中常见的调用多个栏目的情况:
一、多个栏目正好是某个栏目下的子栏目,例如在“phpcms教程”(catid:1)栏目中有“使用教程”(catid:2)和“二次开发”(catid:3)两个子栏目,你想同时调用两个子栏目中的内容,这种情况下,直接指定父级栏目id即可,跟普通调用一样,因为phpcms系统会自动判断指定的栏目有无子栏目,如果有,获取所有子栏目下内容。
演示:
{pc:content action="lists" catid="1" num="10" order="id desc"}
ul
{loop $data $v}
lia href="{$v[url]}"{$v[title]}/a/li
{/loop}
/ul
{/pc}
二、“多个栏目”是离散的无规律范围,例如有两个栏目它们不是同父级,catid分别是2和5,可能是你随机指定的两个,同时调用它们下面的文章就不能直接使用pc标签里的catid属性去指定了,我们使用where属性来直接限定数据读取条件。
演示:
{pc:content action="lists" catid="2" num="10" order="id desc" where="catid=2 or catid=5"}
!--这里的如果有where属性,catid属性指定的栏目范围已经无效了,但是还是要写上,不然会出错,所以这里catid属性的值可以随便写,但是保证其栏目的数据模型相同即可--
ul
{loop $data $v}
lia href="{$v[url]}"{$v[title]}/a/li
{/loop}
/ul
{/pc}
PS:
如果你了解php编程和mysql数据库,会发现在第二种情况下实际上就是使用where属性直接指定sql命令中的where条件。你可以通过二次开发phpcms的标签解析方法来扩展更丰富的功能,这里的相关程序目录是 /phpcms/modules/content/class/content_tag.class.php里面的lists方法。
phpcms的详细使用开发教程可参考官方说明文档或到 iphpcms里来学习~
3、phpcms v9首页怎么调用全站最新文章
没错还是我,大兄弟
Phpcms调用全站最新文章需要修改文件:\phpcms\modules\content\classes\content_tag.class.php,
找到以下函数:
/**
* 列表页标签
* @param $data
*/
public function lists($data) {
$catid = intval($data['catid']);
if(!$this-set_modelid($catid)) return false;
if(isset($data['where'])) {
$sql = $data['where'];
} else {
$thumb = intval($data['thumb']) ? " AND thumb != ''" : '';
if($this-category[$catid]['child']) {
$catids_str = $this-category[$catid]['arrchildid'];
$pos = strpos($catids_str,',')+1;
$catids_str = substr($catids_str, $pos);
$sql = "status=99 AND catid IN ($catids_str)".$thumb;
} else {
$sql = "status=99 AND catid='$catid'".$thumb;
}
}
$order = $data['order'];
$return = $this-db-select($sql, '*', $data['limit'], $order, '', 'id');
//调用副表的数据
if (isset($data['moreinfo']) intval($data['moreinfo']) == 1) {
$ids = array();
foreach ($return as $v) {
if (isset($v['id']) !emptyempty($v['id'])) {
$ids[] = $v['id'];
} else {
continue;
}
}
if (!emptyempty($ids)) {
$this-db-table_name = $this-db-table_name.'_data';
$ids = implode('\',\'', $ids);
$r = $this-db-select("`id` IN ('$ids')", '*', '', '', '', 'id');
if (!emptyempty($r)) {
foreach ($r as $k=$v) {
if (isset($return[$k])) $return[$k] = array_merge($v, $return[$k]);
}
}
}
}
return $return;
}
修改为:
/**
* 列表页标签
* @param $data
*/
public function lists($data) {
$catid = intval($data['catid']);
if(isset($data['where'])) {
$sql = $data['where'];
} else {
$thumb = intval($data['thumb']) ? " AND thumb != ''" : '';
if(!emptyempty($catid)) {
if(!$this-set_modelid($catid)) return false;
if($this-category[$catid]['child']) {
$catids_str = $this-category[$catid]['arrchildid'];
$pos = strpos($catids_str,',')+1;
$catids_str = substr($catids_str, $pos);
$sql = "status=99 AND catid IN ($catids_str)".$thumb;
} else {
$sql = "status=99 AND catid='$catid'".$thumb;
}
}
else {
$sql = "status=99".$thumb;
}
}
$order = $data['order'];
$return = $this-db-select($sql, '*', $data['limit'], $order, '', 'id');
//调用副表的数据
if (isset($data['moreinfo']) intval($data['moreinfo']) == 1) {
$ids = array();
foreach ($return as $v) {
if (isset($v['id']) !emptyempty($v['id'])) {
$ids[] = $v['id'];
} else {
continue;
}
}
if (!emptyempty($ids)) {
$this-db-table_name = $this-db-table_name.'_data';
$ids = implode('\',\'', $ids);
$r = $this-db-select("`id` IN ('$ids')", '*', '', '', '', 'id');
if (!emptyempty($r)) {
foreach ($r as $k=$v) {
if (isset($return[$k])) $return[$k] = array_merge($v, $return[$k]);
}
}
}
}
return $return;
}
修改代码后,即能调取全站最新文章。
调用方法:
{pc:content action="lists" num="10" order="id DESC" cache="3600"}
4、phpcms如何调用全站最新的文章
您好,我来为您解答:
Phpcms调用全站最新文章需要修改文件:\phpcms\modules\content\classes\content_tag.class.php,
希望我的回答对你有帮助。
5、PHPCMS如何调用最新文章,标签怎么写
用get标签调用,然后按照文章id排序就行了,get标签可以分页的!
int inthestr(char *s,char ch)
{
while(*s!='\0'){
if(*s==ch)
return 1;
s++;
}
return 0;
}
6、phpcms怎么调用全站最新文章
Phpcms默认不支持调用全站最新文章,那么需要调用全站最新文章的朋友可以参考下面的修改方法
需要修改文件:\phpcms\modules\content\classes\content_tag.class.php,找到以下函数:
复制代码代码如下:
/**
* 列表页标签
* @param $data
*/
public function lists($data) {
$catid = intval($data['catid']);
if(!$this-set_modelid($catid)) return false;
if(isset($data['where'])) {
$sql = $data['where'];
} else {
$thumb = intval($data['thumb']) ? " AND thumb != ''" : '';
if($this-category[$catid]['child']) {
$catids_str = $this-category[$catid]['arrchildid'];
$pos = strpos($catids_str,',')+1;
$catids_str = substr($catids_str, $pos);
$sql = "status=99 AND catid IN ($catids_str)".$thumb;
} else {
$sql = "status=99 AND catid='$catid'".$thumb;
}
}
$order = $data['order'];
$return = $this-db-select($sql, '*', $data['limit'], $order, '', 'id');
//调用副表的数据
if (isset($data['moreinfo']) intval($data['moreinfo']) == 1) {
$ids = array();
foreach ($return as $v) {
if (isset($v['id']) !empty($v['id'])) {
$ids[] = $v['id'];
} else {
continue;
}
}
if (!empty($ids)) {
$this-db-table_name = $this-db-table_name.'_data';
$ids = implode('\',\'', $ids);
$r = $this-db-select("`id` IN ('$ids')", '*', '', '', '', 'id');
if (!empty($r)) {
foreach ($r as $k=$v) {
if (isset($return[$k])) $return[$k] = array_merge($v, $return[$k]);
}
}
}
}
return $return;
}
修改为‘
复制代码代码如下:
/**
* 列表页标签
* @param $data
*/
public function lists($data) {
$catid = intval($data['catid']);
if(isset($data['where'])) {
$sql = $data['where'];
} else {
$thumb = intval($data['thumb']) ? " AND thumb != ''" : '';
if(!empty($catid)) {
if(!$this-set_modelid($catid)) return false;
if($this-category[$catid]['child']) {
$catids_str = $this-category[$catid]['arrchildid'];
$pos = strpos($catids_str,',')+1;
$catids_str = substr($catids_str, $pos);
$sql = "status=99 AND catid IN ($catids_str)".$thumb;
} else {
$sql = "status=99 AND catid='$catid'".$thumb;
}
}
else {
$sql = "status=99".$thumb;
}
}
$order = $data['order'];
$return = $this-db-select($sql, '*', $data['limit'], $order, '', 'id');
//调用副表的数据
if (isset($data['moreinfo']) intval($data['moreinfo']) == 1) {
$ids = array();
foreach ($return as $v) {
if (isset($v['id']) !empty($v['id'])) {
$ids[] = $v['id'];
} else {
continue;
}
}
if (!empty($ids)) {
$this-db-table_name = $this-db-table_name.'_data';
$ids = implode('\',\'', $ids);
$r = $this-db-select("`id` IN ('$ids')", '*', '', '', '', 'id');
if (!empty($r)) {
foreach ($r as $k=$v) {
if (isset($return[$k])) $return[$k] = array_merge($v, $return[$k]);
}
}
}
}
return $return;
}
修改代码后,即能调取全站最新文章。调用方法:
复制代码代码如下:
{pc:content action="lists" num="10" order="id DESC" cache="3600"
phpcms获取最新文章的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于phpcmscn、phpcms获取最新文章的信息别忘了在本站进行查找喔。