1. 阿里云>
  2. 云栖社区>
  3. 正文

EE开发参考

1.upd.article_statistics.php

<?php

class Article_statistics_upd {

    var $version        = '1.0';
    var $module_name        = 'Article_statistics'; 
    function __construct()
    {
        $this->EE =& get_instance();
    }
   
    function install()
    {
        $this->EE->load->dbforge();
         $data = array(
            'module_name' => $this->module_name ,
            'module_version' => $this->version,
            'has_cp_backend' => 'y',
            'has_publish_fields' => 'n'
        );
   
        $this->EE->db->insert('modules', $data);
       
        $data = array(
            'class'        => $this->module_name ,
            'method'    => 'add'
        );
        $this->EE->db->insert('actions', $data);
        return TRUE;
    }
   
        
   
    function uninstall()
    {
        $this->EE->load->dbforge();
    
        $this->EE->db->where('module_name', $this->module_name);
        $this->EE->db->delete('modules');
   
        $this->EE->db->where('class', $this->module_name);
        $this->EE->db->delete('actions');
    
        
        return TRUE;
    }

    function update($current = '')
    {
        return FALSE;
    }
}
?>

----------------------------------------------------------------------------------------

2.mcp.article_statitics.php

<?php
class Article_statistics_mcp {

    var $version        = '1.0';
    var $module_name    = 'Article_statistics';  
    var $cached_vars    = array();
    function __construct()
    {
        $this->EE =& get_instance();
        $this->EE->load->library('table');
        // Some Globals
        $this->base_url = BASE.AMP.'C=addons_modules'.AMP.'M=show_module_cp'.AMP.'module=article_statistics';
         $menu    = array(                                       
            'module_index'            => array(   
                'link'  => $this->base_url,
                'tab_index'  => "",
                'title' => $this->EE->lang->line('module_index')
            ),
        
            'test_list'    => array(
                'link'    => $this->base_url .AMP. 'method=show_list',
                'tab_index'  => "show_list",
                'title' => $this->EE->lang->line('show_list')
            )
        );
       
        $this->cached_vars['module_menu']             = $menu;       

    }
     
    public function index()
    {
        $this->_set_nav_title($this->EE->lang->line("article_statistics_module_name"),$vars);
        return $this->EE->load->view('index', $vars, TRUE);
    }
 
    public function show_list()
    {
        $this->EE->load->library('article_statistics_helper');
       
        $this->_set_nav_title($this->EE->lang->line("article_statistics_module_name"),$data);
       
        $sql="SELECT *
                FROM bv_comments c
               
                WHERE UNIX_TIMESTAMP(DATE_SUB(CURDATE(),INTERVAL 30 DAY)) <=c.comment_date
                ORDER BY c.comment_date DESC";
        $query=$this->EE->db->query($sql);
       
        $data["results"]=$query;

        return $this->EE->load->view('show_list', $data,TRUE);
    }
 
    function _set_nav_title($title='',&$data)
    {
        $this->EE->cp->set_variable('cp_page_title',$title);
        $data['module_menu']        = $this->cached_vars['module_menu'];
    }
 
//Class End
}

?>

 

----------------------------------------------------------------------------------------

3.mod.article_statistics.php

具体实现一些tag和一些tag中的form提交的方法接受

<?php
class Article_statistics{

    var $version        = '1.0';
  
    function __construct()
    {
        $this->EE =& get_instance();
    }
   
    //用于对应upd 中的action
    function add()
    {
        $username= $this->EE->input->post("username");
        $password= $this->EE->input->post("password");
       
        $msg_id= $this->EE->input->get("msg_id");
        echo $username;
        echo "<br>password:";
        echo $password;
       
        echo "<br>msg_id:";
        echo $msg_id;
    }
   
   
      
    /* END form */
}
?>

 

----------------------------------------------------------------------------------------

4.views/menu.html

在MCP中调用的可以互相切换的tab的显示样式

<ul id="tab_menu_tabs" class="tab_menu">
<?php
foreach($module_menu AS $menu_item) : 
    $current_method=$this->input->get("method");
?>
    <li class="content_tab <?php if($menu_item['tab_index']==$current_method) echo 'current';?>" >
        <a href="<?php echo $menu_item['link'];?>"><?php echo $menu_item['title'];?></a>
       
    </li>
<?php endforeach; ?>
</ul>

----------------------------------------------------------------------------------------

5.libraries/ Article_statistics_helper.php

链接Views,MCP

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');

/**
 * Iserver API Helper File
 *
 */
class Article_statistics_helper
{

    /**
     * Constructor
     *
     * @access public
     */
    function __construct()
    {
        // Creat EE Instance
        $this->EE =& get_instance();
 
    }
}
?>


补充:

1.如果需要获取action_id可以在mod.module_name.php中直接调用

$this->form_data['ACT']                        = $this->EE->functions->fetch_action_id('Test', 'add');

 'action'        => "?ACT=".$this->form_data['ACT'].AMP."msg_id=333",

2.如果需要在form中设置跳转,则需要设置redirect的相应跳转路径


摘自 任宝永--renbaoyong --商业价值

相关文章

立即打开APP,浏览更多精彩内容