今天给各位分享phpcms调用文章的知识,其中也会对phpcms注入进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、PHPCMS 怎么调用相关关键词文章
- 2、phpcms 如何调用指定栏目下最新文章
- 3、phpcms同一页面怎么调用多篇文章
- 4、phpcms怎么调用全站最新文章
- 5、phpcms怎么调用某个类别下的所有文章?给示例
- 6、phpcms v9首页怎么调用全站最新文章
1、PHPCMS 怎么调用相关关键词文章
一、如果是在后台调用,说下phpcms中调用数据的php代码大体要点:
直接引入content_model模型文件,在phpcms/model/目录下的content_model.php文件,调用方法:
$db=pc_base::load_model('content_model');
然后使用set_model方法确定数据模型:
$db-set_model($modelid);
然后使用“like %关键词%”式 sql命令条件读取数据就可以了:
$where = " `keywords` LIKE '%$_k%'";
$r = $db-select($where, '*', $limit, '','','id'); //使用select方法参数1传入sql条件来获取结果数组。
后台调用需要有php编程基础和sql命令基础,这里不再赘述,网上有很多相关学习资料可参考。
二、如果是在前端模板中调用(你像知道的可能也是前端的标签怎样调用),我们使用phpcms “pc标签”来调用,重点注意action属性为“relation”,使用keywords属性来指定“关键词”,演示如下:
{pc:content action="relation" catid="$catid" num="5" keywords="$keywords"}
!--content指调用内容模块下数据,action指执行获取相关信息方法,catid设置所属栏目,num设置调用数量,keywords设置相关关键词--
{if $data}
div class="related"
h5 class="blue"相关文章:/h5
ul class="list blue lh24 f14"
{loop $data $r}
li·a href="{$r[url]}" target="_blank"{$r[title]}/aspan({date('Y-m-d',$r[inputtime])})/span/li
{/loop}
/ul
/div
{/if}
{/pc}
以上便是前后端的调用方式。
如果对phpcms的pc标签不了解可参考其官方手册。
如果你有php编辑基础,可参考相关文章标签的源码来研究其传入的每个参数相关意义或对其进行扩展开发,源码文件位置为/phpcms/modules/content/classes/content_tag.class.php中的relation方法,大约108行。
2、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的视频教程。
3、phpcms同一页面怎么调用多篇文章
使用pc标签可以在页面中调用文章列表即多篇文章信息,同时,在pc标签中加入moreinfo=“1”属性即可获取每篇文章的文章内容等。具体调用代码方法可以参考:
这是我以前回答的一个知道,跟你的情况一样。
4、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"
5、phpcms怎么调用某个类别下的所有文章?给示例
请使用PHPCMS中的get标签
例
{pc:get sql="SELECT title,url FROM V9_news WHERE typeid=你想调用的类别ID"}
{loop $data $r}
{$r[title]}
{/loop}
{/pc}
6、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"}
phpcms调用文章的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于phpcms注入、phpcms调用文章的信息别忘了在本站进行查找喔。