PHPCMSV9文章页显示发布者

来源:互联网 发布:神魔诛天武器进阶数据 编辑:程序博客网 时间:2024/05/17 06:59

       因某些原因,比如工作统计责任划分等,有时文章后面要显示发布编辑的名字。

    网上找的一些说PHPCMS解决发布者不显示问题的帖子。不知是由于说的是以前的版本,还是其它原因。文章的行数对不上,按那个方法要改三个文件以上。而且按它说的改了也没有效果。

  自己研究了下代码,最后只在一个文件中添加代码,就解决了。特记录之。

第一步:修改 content_model.class.php 文件

1,在add_content函数添加文章部分

第222行 在生成静态页前面加上

$username=$systeminfo['username'];

改成

    $username=$systeminfo['username']; //dhs
        
        //生成静态
        if(!$isimport && $data['status']==99) {
            //在添加和修改内容处定义了 INDEX_HTML
            if(defined('INDEX_HTML')) $html->index();
            if(defined('RELATION_HTML')) $html->create_relation_html($catid);
        }


 另外,如果要在修改时也能更新此信息,可在320行附近

  //生成静态
         $html = pc_base::load_app_class('html', 'content');
        if($urls['content_ishtml']) {

在它的前面加上$username=$systeminfo['username'];


第二步 在生成页面的模板中,加上发布人信息。

<p class="eidtor" >责任编辑:{$username}</p>


这里,会显示在文章左下方,不符合习惯。可将右浮动写在CSS文件中。如果不想改CSS文件。可以写成这样

<p class="eidtor" style="float:right" >责任编辑:{$username}</p>

补充

今天到单位测试,发现编辑时$username=$systeminfo['username'];有时为空值。找到有效果的解决办法是

  /*修复编辑后不显示编辑用户名的问题,传递模版*/
           $temp = $this->get_one(array('id'=>$id));
           $username =$urls['data']['username'] = $temp['username'];          
              //end    

         //生成静态
         $html = pc_base::load_app_class('html', 'content');
        if($urls['content_ishtml']) {               
         
            $html->show($urls[1],$urls['data']);
        }




0 0
原创粉丝点击