本篇文章给大家谈谈phpcms下拉选择栏目,以及phpcms栏目分类对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、phpcms v9如何选择性调用指定栏目的子栏目
- 2、在PHPCMS里如何添加栏目???麻烦具体的说下,用的不是默认模板哦。。
- 3、请问一下phpcmsv9如何调用栏目、子栏目、子栏目的下级栏目
- 4、phpcms v9怎么按栏目搜索
- 5、使用phpcms如何修改使用中的网站,要在导航栏里加一个栏目,这个栏目在单链接一个页面?
1、phpcms v9如何选择性调用指定栏目的子栏目
/**
* 获取子栏目
* @param $parentid 父级id
* @param $type 栏目类型
* @param $self 是否包含本身 0为不包含
* @param $siteid 站点id
*/
function subcat($parentid = NULL, $type = NULL,$self = '0', $siteid = '') {
if (empty($siteid)) $siteid = get_siteid();
$category = getcache('category_content_'.$siteid,'commons');
foreach($category as $id=$cat) {
if($cat['siteid'] == $siteid ($parentid === NULL || $cat['parentid'] == $parentid) ($type === NULL || $cat['type'] == $type)) $subcat[$id] = $cat;
if($self == 1 $cat['catid'] == $parentid !$cat['child']) $subcat[$id] = $cat;
}
return $subcat;
}
使用这个函数就可以获取,直接使用,函数已经是存在的
2、在PHPCMS里如何添加栏目???麻烦具体的说下,用的不是默认模板哦。。
,后台内容里面,下面有个栏目,点了之后选添加栏目,然后选相关模型就可以了,文章的或者图片的,栏目设置那里有个模板设置,那里可以选模型和模板
3、请问一下phpcmsv9如何调用栏目、子栏目、子栏目的下级栏目
有同伙帮我看看? 麻烦大年夜家了。构造是如许设计的 怎么办!。。。弄不出来! 查看原帖
4、phpcms v9怎么按栏目搜索
修改了全部栏目搜索不到数据的bug
1、修改后台添加、修改内容时添加栏目id到搜索表中
找到 phpcms\model\content_model.class.php 大概106、287行左右,一共两处
$this-search_api($id,$inputinfo);
修改为:
$this-search_api($id,$systeminfo['catid'],$inputinfo);
找到 大概381行,将private function search_api 方法替换为以下代码
private function search_api($id = 0,$catid, $data = array(), $action = 'update') {
$type_arr = getcache('search_model_'.$this-siteid,'search');
$typeid = $type_arr[$this-modelid]['typeid'];
if($action == 'update') {
$fulltext_array = getcache('model_field_'.$this-modelid,'model');
foreach($fulltext_array AS $key=$value){
if($value['isfulltext']) {
$fulltextcontent .= $data['system'][$key] ? $data['system'][$key] : $data['model'][$key];
}
}
$this-search_db-update_search($typeid ,$id, $fulltextcontent,addslashes($data['system']['title']).' '.addslashes($data['system']['keywords']),$data['system']['inputtime'],'',$catid);
} elseif($action == 'delete') {
$this-search_db-delete_search($typeid ,$id);
}
}
2、修改搜索模板文件
找到 phpcms\model\search_model.calss.php 的 21行左右
将 update_search 方法替换为:
public function update_search($typeid ,$id = 0,$data = '',$text = '',$adddate = 0, $iscreateindex=0,$catid) {
$segment = pc_base::load_sys_class('segment');
//分词结果
$fulltext_data = $segment-get_keyword($segment-split_result($data));
$fulltext_data = $text.' '.$fulltext_data;
if(!$iscreateindex) {
$r = $this-get_one(array('typeid'=$typeid,'id'=$id),'searchid');
}
if($r) {
$searchid = $r['searchid'];
$this-update(array('data'=$fulltext_data,'adddate'=$adddate,'catid'=$catid),array('typeid'=$typeid,'id'=$id));
} else {
$siteid = param::get_cookie('siteid');
$searchid = $this-insert(array('typeid'=$typeid,'id'=$id,'adddate'=$adddate,'data'=$fulltext_data,'siteid'=$siteid,'catid'=$catid),true);
}
return $searchid;
}
3、修改后台更新全站缓存位置
找到phpcms\models\content\classes\search_api.class.php 的第 31行
将 $system_keys = 'id,inputtime'.implode(',',$system_keys);
修改为
$system_keys = 'id,inputtime,catid,'.implode(',',$system_keys);
找到 $temp['adddate'] = $r['inputtime'];在后面加上
$temp['catid'] = $r['catid'];
找到phpcms\models\search\search_admin.php大概第85行,将foreach修改为下面
foreach ($datas as $id=$r) {
$this-db-update_search($typeid ,$id, $r['fulltextcontent'],$r['title'],$r['adddate'], 1,$r['catid']);
}
4、修改前台搜索程序
找到 phpcms\models\search\index.php 第25行
在 if(isset($_GET['q'])) { 下加上
$catid =$_GET['catid']?" AND catid = '$_GET[catid]'":'';
然后在第57行左右,将
$commend = $this-db-get_one("`typeid` = '$typeid' $sql_time AND `data` like '%$q%'");
修改为
$commend = $this-db-get_one("`typeid` = '$typeid' $sql_time $catid AND `data` like '%$q%'");
再找到第84行左右将
//如果分词结果为空
if(!empty($segment_q)) {
$sql = "`siteid`= '$siteid' AND `typeid` = '$typeid' $sql_time AND MATCH (`data`) AGAINST ('$segment_q' IN BOOLEAN MODE)";
} else {
$sql = "`siteid`= '$siteid' AND `typeid` = '$typeid' $sql_time AND `data` like '%$q%'";
}
修改为
//如果分词结果为空
if(!empty($segment_q)) {
$sql = "`siteid`= '$siteid' AND `typeid` = '$typeid' $catid $sql_time AND MATCH (`data`) AGAINST ('$segment_q' IN BOOLEAN MODE)";
} else {
$sql = "`siteid`= '$siteid' AND `typeid` = '$typeid' $catid $sql_time AND `data` like '%$q%'";
}
5、最后一步,到数据库中,找到数据表 表前缀_search,在此表中加一字段 catid int 4 做个索引,去按栏目id搜索试试吧,可以了,调试可用。
5、使用phpcms如何修改使用中的网站,要在导航栏里加一个栏目,这个栏目在单链接一个页面?
位置:系统设置----栏目管理----添加栏目
添加栏目,根据自己的需求是否有上级栏目,并且选择合适的栏目类型,
栏目管理类型:
1、内部栏目(可绑定内容模型,并支持在栏目下建立子栏目或发布信息)
2、单网页(可更新单网页内容,但是不能在栏目下建立子栏目或发布信息)
3、外部链接(可建立一个链接并指向任意网址)
你可以根据你的需求看添加哪种类型
关于phpcms下拉选择栏目和phpcms栏目分类的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。