web-dev-qa-db-ja.com

OpenCartでカスタム管理ページを作成する方法は?

Opencartでカスタム管理パネルページを作成する方法を知りたいです。

コントローラでログインする必要があります-管理パネルは通常のサイトと同じコントローラを使用していないようです。 opencartでカスタムページを作成する方法 (ただし、これは管理者向けではありません)

簡単なHello Worldの例は素晴らしいでしょう

31
TheBlackBenzKid

OpenCart 2.x

OpenCart 2でパス名が変更されました-作成したくなるでしょう

admin/controller/extension/module/hello.php admin/language/en-gb/extension/module/hello.php admin/view/template/extension/module/hello.tplその後、ルートは

admin/index.php?route=extension/module/hello

OpenCart 1.x

  • 完全なMVCフローを含めます。

これを行う方法を見つけました。 OpenCartはMVCパターンを使用します。 OpenCartの達人になる方法 システムの仕組みを学ぶための投稿について読むことをお勧めします-この管理ワークフローは、顧客側にも十分です。

1)admin/controller/custom/helloworld.phpに新しいファイルを作成します

ファイル名とコントローラー名はdescの順序で同じである必要があります。

helloworld.php

<?

class ControllerCustomHelloWorld extends Controller{ 
    public function index(){
                // VARS
                $template="custom/hello.tpl"; // .tpl location and file
        $this->load->model('custom/hello');
        $this->template = ''.$template.'';
        $this->children = array(
            'common/header',
            'common/footer'
        );      
        $this->response->setOutput($this->render());
    }
}
?>

2)admin/view/template/custom/hello.tplに新しいファイルを作成します

Hello.tpl

<?php echo $header; ?>
<div id="content">
<h1>HelloWorld</h1>
<?php
echo 'I can also run PHP too!'; 
?>
</div> 
<?php echo $footer; ?>

3)admin/model/custom/hello.phpに新しいファイルを作成します

<?php
class ModelCustomHello extends Model {
    public function HellWorld() {
        $sql = "SELECT x FROM `" . DB_PREFIX . "y`)"; 
        $implode = array();
        $query = $this->db->query($sql);
        return $query->row['total'];    
    }       
}
?>

4)次に、許可拒否エラーを回避するためにプラグインを有効にする必要があります。

Opencart > Admin > Users > User Groups > Admin > Edit

アクセス許可を選択して有効にします。

ページにアクセスするには

www.yoursite.com/opencart/admin/index.php?route=custom/helloworld

62
TheBlackBenzKid