Bagaimana cara menjadi guru OpenCart? [Tutup]

98

Sepertinya mereka tidak memiliki dokumentasi kecuali beberapa panggilan api di forum resmi mereka. Saya memiliki pengalaman dengan Zend framework dan CodeIgniter framework. Dapatkah master OpenCart merekomendasikan saya cara terbaik untuk mempelajarinya dan menguasainya dalam waktu sesingkat mungkin? Saya harus melakukan proyek besar dengannya segera.

CodeCrack
sumber
Lihat docs.opencart.com , dan ikhtisar kerangka kerja oleh Qphoria . Juga telusuri utas di Forum OpenCart> Dukungan . Di masa depan, mudah-mudahan kami akan memiliki situs OpenCart SE khusus di area51.stackexchange.com/proposals/77558/opencart
Pacerier
Ini benar-benar pertanyaan yang penting, terkadang mengatasi standar SO sangat membantu ...
KAD
1
Terima kasih banyak untuk pertanyaan ini, ini sangat membantu saya
Bipul Roy
@BipulRoy saya senang! Sepertinya itu pertanyaan yang populer sekarang!
CodeCrack

Jawaban:

311

Panduan memulai cepat pengembang OpenCart 1.5.X untuk pemula

Panduan ini ditulis untuk pengembang yang sudah terbiasa dengan PHP, OOP dan arsitektur MVC

Berikut ini, Anda akan melihat contoh untuk sisi katalog gerobak. Sisi admin identik fungsinya dengan pengecualian tampilan yang dicatat di bagian yang relevan


Memahami Perpustakaan

Semua fungsionalitas perpustakaan dapat diakses melalui Controller, Model dan View menggunakan $this->library_name. Semua ini dapat ditemukan di /system/library/folder. Misalnya, untuk mengakses produk keranjang belanja saat ini, Anda harus menggunakan Cartkelas, yang ada di /system/library/cart.phpdan dapat diakses menggunakan$this->cart->getProducts()

Barang yang biasa digunakan

  • customer.php - Fungsi terkait pelanggan
  • user.php - Fungsi terkait pengguna Admin
  • cart.php - Fungsi terkait gerobak
  • config.php - Semua pengaturan dimuat dari ini
  • url.php - Fungsi pembuatan URL

Memahami parameter rute

Kerangka kerja OpenCart bergantung pada route=aaa/bbb/cccparameter string kueri untuk mengetahui apa yang harus dimuat, dan merupakan fitur pendukung untuk menemukan file yang perlu Anda edit untuk setiap halaman. Sebagian besar rute sebenarnya hanya menggunakan aaa/bbbyang seharusnya dilihat sebagai dua bagian, namun beberapa berisi tiga bagian. aaa/bbb/cccBagian pertama aaaumumnya terkait dengan folder dalam folder umum seperti folder pengontrol atau template. Bagian kedua biasanya berhubungan dengan nama file, tanpa relevan .phpatau .tplekstensi. Bagian ketiga dijelaskan di bagian "Memahami pengontrol" di bawah


Memahami bahasa

Bahasa disimpan dalam /catalog/language/folder di your-languagesubfolder. Di your-language.phpdalamnya , nilai teks umum yang digunakan di berbagai halaman disimpan dalam file di dalam folder, jadi untuk bahasa Inggris di sisi katalog, Anda akan menemukan nilainya di catalog/language/english/english.php. Untuk teks halaman tertentu, Anda memerlukan routeuntuk halaman (Ini biasanya terjadi, tetapi tidak selalu karena Anda dapat menentukan file bahasa apa pun yang Anda suka). Misalnya, halaman pencarian memiliki rute product/search, dan oleh karena itu teks khusus bahasa untuk halaman itu dapat ditemukan di catalog/language/english/product/search.php(Perhatikan nama file dan subfolder cocok dengan rute yang diikuti .php.

Untuk memuat bahasa di pengontrol, Anda menggunakan

$this->language->load('product/search');

Kemudian Anda dapat menggunakan fungsi pustaka bahasa getuntuk mengambil teks bahasa tertentu, seperti

$some_variable = $this->language->get('heading_title');

Variabel bahasa ditugaskan di file bahasa menggunakan variabel khusus $_yang merupakan larik kunci dan nilai teks. Di dalam Anda, /catalog/language/english/product/search.phpAnda harus menemukan sesuatu yang mirip dengan

$_['heading_title']     = 'Search';

Nilai dalam file bahasa global english/english.phpsecara otomatis dimuat dan tersedia untuk digunakan tanpa $this->language->loadmetode


Memahami pengontrol

Pengontrol dimuat berdasarkan routedan cukup mudah dipahami. Pengontrol berada di /catalog/controller/folder. Melanjutkan dari contoh terakhir, Kontroler untuk halaman Pencarian ada di /product/search.phpdalam folder ini. Perhatikan lagi bahwa rute yang diikuti oleh .phpdigunakan.

Membuka file controller, Anda akan melihat nama kelas Pascal Case yang memperluas Controllerkelas, bernama ControllerProductSearch. Ini lagi-lagi khusus untuk rute, dengan Controllerdiikuti oleh nama subfolder dan nama file tanpa ekstensi yang dikapitalisasi. Kapitalisasi sebenarnya tidak diperlukan, tetapi disarankan agar mudah dibaca. Perlu dicatat bahwa nama kelas tidak mengambil nilai apa pun dari subfolder dan nama file selain huruf dan angka. Garis bawah dihapus.

Di dalam kelas ada metodenya. Metode di kelas yang dideklarasikan publicdapat diakses untuk dijalankan melalui rute - privatetidak. Secara default, dengan rute dua bagian standar (di aaa/bbbatas), index()metode default dipanggil. Jika bagian ketiga dari sebuah rute (di cccatas) digunakan, metode ini akan dijalankan. Misalnya, account/return/insertakan memuat /catalog/controller/account/return.phpfile dan kelas, dan mencoba memanggil insertmetode tersebut


Memahami Model

Model di OpenCart ditemukan di /catalog/model/folder dan dikelompokkan berdasarkan fungsi, bukan rute, dan oleh karena itu Anda perlu memuatnya di pengontrol Anda melalui

$this->load->model('xxx/yyy');

Ini akan memuat file di subfolder xxxbernama yyy.php. Kemudian tersedia untuk digunakan melalui objek

$this->model_xxx_yyy

dan seperti halnya pengontrol, Anda hanya dapat memanggil publicmetodenya. Misalnya, untuk mengubah ukuran gambar, Anda akan menggunakan tool/imagemodel dan memanggil resizemetodenya sebagai berikut

$this->load->model('tool/image');
$this->model_tool_image->resize('image.png', 300, 200);

Memahami penetapan variabel dalam tampilan dari pengontrol

Untuk meneruskan nilai ke tampilan dari pengontrol, Anda hanya perlu menetapkan data Anda ke $this->datavariabel, yang pada dasarnya adalah larik pasangan kunci => nilai. Sebagai contoh

$this->data['example_var'] = 123;

Mengakses ini dalam tampilan sedikit harus mudah dipahami jika Anda terbiasa dengan metode extract () yang mengonversi setiap kunci menjadi variabel. Jadi example_varkuncinya menjadi $example_vardan bisa diakses seperti itu dalam tampilan.


Memahami tema

Tema hanya tersedia di sisi katalog, dan pada dasarnya merupakan folder template, stylesheet, dan gambar tema. Folder tema ditempatkan di /catalog/view/theme/folder diikuti dengan nama tema. Nama folder tidak penting kecuali untuk defaultfolder tersebut

Sisi admin menggunakan /admin/view/template/(melewatkan /theme/theme-name/dari jalur karena tidak memungkinkan tema yang berbeda)

File template berada di templatefolder di dalam folder tema. Jika ada template yang tidak tersedia untuk tema yang saat ini dipilih, template folder default akan digunakan sebagai pengganti. Ini berarti tema dapat dibuat dengan sangat sedikit file dan masih berfungsi sepenuhnya. Ini juga mengurangi duplikasi kode dan masalah saat peningkatan dilakukan


Memahami tampilan (template)

Seperti bahasa dan model, file tampilan umumnya terkait dengan rute, meskipun tidak harus sama sekali. Template di sisi katalog biasanya ditemukan /catalog/view/theme/your-theme/template/kecuali tidak ada, dalam hal ini template tema default akan digunakan. Untuk contoh halaman pencarian kami di atas, file tersebut adalah product/search.tpl. Untuk rute dengan tiga bagian, umumnya dalam aaa/bbb_ccc.tplmeskipun tidak ada aturan yang ditetapkan. Di admin, sebagian besar halaman mengikuti ini, dengan pengecualian bahwa halaman yang mencantumkan item, seperti halaman daftar produk, ada di catalog/product_list.tpldan formulir pengeditan produk ada catalog/product_form.tpl. Sekali lagi, ini tidak ditetapkan, tetapi standar untuk keranjang default.

File template sebenarnya hanyalah file php lain, tetapi dengan ekstensi .tpl dan sebenarnya dijalankan di file controller, oleh karena itu semua hal yang dapat Anda kodekan dalam controller dapat dijalankan dalam file template (meskipun tidak disarankan kecuali benar-benar perlu)


Memahami objek database

Kueri dijalankan menggunakan

$result = $this->db->query("SELECT * FROM `" . DB_PREFIX . "table`");

DB_PREFIX seperti namanya adalah konstanta yang berisi prefiks database jika ada

$resultakan mengembalikan objek untuk SELECTkueri, yang berisi beberapa properti

$result->row berisi data baris pertama jika satu atau lebih dikembalikan sebagai array asosiatif

$result->rows berisi larik hasil baris, ideal untuk perulangan menggunakan foreach

$result->num_rows berisi jumlah hasil yang dikembalikan

Ada juga beberapa metode tambahan yang dimiliki $this->dbobjek

$this->db->escape()menggunakan mysql_real_escape_string () pada nilai yang diteruskan

$this->db->countAffectedmengembalikan jumlah baris yang dipengaruhi oleh UPDATEkueri dan seterusnya

$this->db->getLastId()mengembalikan id kenaikan otomatis terakhir menggunakan mysql_insert_id ()


Memahami variabel yang dipesan

OpenCart telah disediakan variabel untuk digunakan di tempat standar $_GET, $_POST, $_SESSION, $_COOKIE, $_FILES, $_REQUESTDAN$_SERVER

$_SESSIONdiedit menggunakan di $this->session->datamana data adalah array asosiatif yang meniru$_SESSION

Semua yang lain dapat diakses menggunakan $this->requestdan telah "dibersihkan" untuk mematuhi tanda kutip ajaib yang diaktifkan / dinonaktifkan, jadi

$_GET menjadi $this->request->get

$_POST menjadi $this->request->post

$_COOKIE menjadi $this->request->cookie

$_FILES menjadi $this->request->files

$_REQUEST menjadi $this->request->request

$_SERVER menjadi $this->request->server


Ringkasan

Meskipun hal di atas bukanlah panduan antipeluru untuk pengembang, semoga ini akan berfungsi sebagai titik awal yang baik bagi mereka yang memulai

Jay Gilford
sumber
3
Terima kasih! Dimana kamu mendapatkan ini?
CodeCrack
64
Saya menulisnya. Saya pikir itu perlu ditulis dan cocok dengan queston
Jay Gilford
2
Sangat bagus. Jauh lebih informatif daripada kebanyakan panduan. Apakah Anda memiliki kemajuan kebetulan?
CodeCrack
3
Ini harus diberi status Wiki Komunitas
Stann0rz
1
@UltimateKing - Panduan ini sudah memberi Anda lebih dari cukup informasi untuk membantu Anda mulai membuat mod sendiri. Ada juga tutorial khusus untuk pengembangan modul di internet
Jay Gilford
36

Metode Pustaka Global: Fungsi pustaka pembuka dasar beserta fungsinya, Sebagian besar dapat dipanggil dari mana saja di katalog atau folder admin (pengontrol, model, tampilan)

CACHE
$this->cache->delete($key) - Deletes cache [product, category, country, zone, language, currency,
manufacturer]

CART
$this->cart->getProducts() Gets all products currently in the cart including options, discounted prices, etc.
$this->cart->add( $product_id, $qty = 1, $options = array()) - Allows you to add a product to the cart
$this->cart->remove( $key ) - Allows you to remove a product from the cart
$this->cart->clear() - Allows you to remove all products from the cart
$this->cart->getWeight() - Sum of the weight of all products in the cart that have require shipping set to Yes
$this->cart->getSubTotal() - returns the subtotal of all products added together before tax
$this->cart->getTotal() - returns the total of all products added together after tax
$this->cart->countProducts() - returns the count of all product in the cart
$this->cart->hasProducts() - returns true if there is at least one item in the cart
$this->cart->hasStock() - returns false if there is at least one item in the cart that is out of stock
$this->cart->hasShipping() - returns true if there is at least one item in the cart that requires shipping
$this->cart->hasDownload() - returns true if there is at least one item in the cart that has a download
associated

CONFIG
$this->config->get($key) - returns setting value by keyname based on application (catalog or admin)
$this->config->set($key, $value) - set the value to override the setting value. DOES NOT SAVE TO DATABASE

CURRENCY
$this->currency->set($currency) - set or override the currency code to be used in the session
$this->currency->format($number, $currency = '', $value = '', $format = TRUE) - format the currency
$this->currency->convert($value, $from, $to) - convert a value from one currency to another. Currencies must
exist
$this->currency->getId() - get the database entry id for the current currency (1, 2, 3, 4)
$this->currency->getCode() - get the 3-letter iso code for the current currency (USD, EUR, GBP, AUD, etc)
$this->currency->getValue($currency) - get the current exchange rate from the database for the specified
currency.
$this->currency->has(currency) - Check if a currency exists in the opencart currency list

CUSTOMER
$this->customer->login($email, $password) - Log a customer in
$this->customer->logout() - Log a customer out
$this->customer->isLogged() - check if customer is logged in
$this->customer->getId() - get the database entry id for the current customer (integer)
$this->customer->getFirstName() - get customer first name
$this->customer->getLastName() - get customer last name
$this->customer->getEmail() - get customer email
$this->customer->getTelephone() - get customer telephone number
$this->customer->getFax() - get customer fax number
$this->customer->getNewsletter() - get customer newsletter status
$this->customer->getCustomerGroupId() - get customer group id
$this->customer->getAddressId() - get customer default address id (maps to the address database field)

DATABASE
$this->db->query($sql) - Execute the specified sql statement. Returns row data and rowcount.
$this->db->escape($value) - Escape/clean data before entering it into database
$this->db->countAffected($sql) - Returns count of affected rows from most recent query execution
$this->db->getLastId($sql) - Returns last auto-increment id from more recent query execution 4

DOCUMENT (*Called from controller only before renderer)
$this->document->setTitle($title) - Set page title
$this->document->getTitle()- Get page title
$this->document->setDescription($description) - Set meta description
$this->document->getDescription()- Get meta description
$this->document->setKeywords()- Set meta keywords
$this->document->getKeywords()- Get meta keywords
$this->document->setBase($base) - Set page base
$this->document->getBase() - Get page base
$this->document->setCharset($charset) - Set page charset
$this->document->getCharset() - Get page charset
$this->document->setLanguage($language) - Set page language
$this->document->getLanguage()- Get page language
$this->document->setDirection($direction) - Set page direction (rtl/ltr)
$this->document->getDirection()- Get page direction (rtl/ltr)
$this->document->addLink( $href, $rel )  Add dynamic <link> tag
$this->document->getLinks()- Get page link tags
$this->document->addStyle( $href, $rel = 'stylesheet', $media = 'screen' )  Add dynamic style
$this->document->getStyles()- Get page styles
$this->document->addScript( $script ) - Add dynamic script
$this->document->getScripts()- Get page scripts
$this->document->addBreadcrumb($text, $href, $separator = ' &gt; ')  Add breadcrumb
$this->document->getBreadcrumbs()- Get Breadcrumbs

ENCRYPT
$this->encryption->encrypt($value) - Encrypt data based on key in admin settings
$this->encryption->decrypt($value) - Decrypt data based on key in admin settings

IMAGE
$this->image->resize($width = 0, $height = 0)

JSON
$this->json->encode( $data )
$this->json->decode( $data , $assoc = FALSE)

LANGUAGE
$this->language->load($filename);

LENGTH
$this->length->convert($value, $from, $to) - convert a length to another. units must exist
$this->length->format($value, $unit, $decimal_point = '.', $thousand_point = ',') - format the length to use
unit

LOG
$this->log->write($message) - Writes to the system error log

REQUEST
$this->request->clean($data) - Cleans the data coming in to prevent XSS
$this->request->get['x'] - Same as $_GET['x']
$this->request->post['x'] - Same as $_POST['x']

RESPONSE
$this->response->addHeader($header) - additional php header tags can be defined here
$this->response->redirect($url) - redirects to the url specified

TAX
$this->tax->setZone($country_id, $zone_id) - Set the country and zone id for taxing (integer)
$this->tax->calculate($value, $tax_class_id, $calculate = TRUE) - Calculate all taxes to be added to the total
$this->tax->getRate($tax_class_id) - Get the rates of a tax class id
$this->tax->getDescription($tax_class_id) - Get the description of a tax class id
$this->tax->has($tax_class_id) - Check if a tax class id exists in opencart

SESSION
$this->session->data['x'] - Same as $_SESSION['x']  
Abdul Rehman
sumber
9

Ada situs web OpenCart Wiki dengan dokumentasi untuk pengembang pemula. Ikuti url yang diberikan di bawah ini untuk lebih jelasnya:

http://wiki.opencarthelp.com/doku.php?id=start
http://wiki.opencarthelp.com/doku.php?id=methods_reference

Tautan ARSIP INTERNET

http://web.archive.org/web/20160305131349/http://wiki.opencarthelp.com/doku.php?id=start http://web.archive.org/web/20160305131349/http://wiki .opencarthelp.com / doku.php? id = methods_reference

Misalnya, referensi metode memiliki detail untuk:

  1. Login Kostumer
  2. Akses DB
  3. Penanganan Keranjang Belanja
  4. Config
  5. Cache
  6. Penanganan Mata Uang

Masih Ada beberapa halaman dalam perbaikan tetapi itu akan sangat membantu.

[Memperbarui]

Mulai Jan-2018, domain opencarhelp.com tidak aktif.

Dharmang
sumber
Sepertinya masih banyak informasi yang hilang setelah beberapa bulan. Apakah proyek ini telah ditinggalkan?
Pacerier
@Pacerier, saya tidak yakin untuk itu.
Dharmang
ini adalah halaman yang bagus bahkan buka keranjang wiki mereferensikannya, Anda dapat melihat tautannya di sini wiki.opencarthelp.com/doku.php?id=opencart_framework
Nassim
4

Meskipun topik ini telah dijawab berkali-kali, saya ingin menawarkan pendekatan lain untuk menguasai OpenCart berdasarkan pengalaman saya.

Belajar dengan melakukan

Dengan membuat kerangka OpenCart Anda sendiri dari awal dengan beberapa file, Anda dapat memahami bagaimana semuanya disatukan. Saya akan meniru struktur file OpenCart untuk Anda.

Buat file index.php

<?php
// My simpleCart

1. Registri

Opencart menggunakan pola Registry untuk mencantumkan semua contoh kelas yang dimuat. Ini adalah jantung dari aplikasi OpenCart Anda. Objek registri kemudian diteruskan ke setiap kategori, model, dan pustaka untuk akses cepat ke objek lain.

buat file dengan path /system/engine/registry.php

<?php
// Registry class. 
class Registry
{
    private $data = array();

    public function set($key, $value){
        $this->data[$key] = $value;
    }

    public function get($key){
        return (isset($this->data[$key])) ? $this->data[$key] : false;
    }
}

di Anda index.php

<?php
// My simpleCart

//load dependency files
require_once('system/engine/registry.php');

//initialize registry
$registry = new Registry;

2. Keluaran

Sekarang mari tambahkan keluaran yang akan menjadi HTML kita di masa depan. Bagaimanapun, keseluruhan idenya adalah mengirim string teks ke browser.

Buat file system/library/response.php

<?php
class Response {
    private $output;

    public function getOutput() {
        return $this->output;
    }

    public function setOutput($output) {
        $this->output = $output;
    }

    public function output() {
        if ($this->output) {
            echo $this->output;
        }
    }
}

dan di index.php

<?php
// My simpleCart

//load dependency files
require_once('system/engine/registry.php');
require_once('system/library/response.php');

//initialize registry
$registry = new Registry;

//initialize response
$response = new Response;
//add response object to the registry
$registry->set('response', $response);

//lets set an output as a test
$registry->get('response')->setOutput('Hello World');

//send the output to the client
$registry->get('response')->output();

Perhatikan saya menambahkan Hello world hanya sebagai contoh. Kami akan menghapusnya lebih lanjut. Segarkan situs Anda untuk memeriksanya. Browser harus ditampilkan Hello World.

3. Pengontrol

Pikirkan Pengontrol sebagai halaman. Mereka akan menentukan apa yang akan ditampilkan ke klien: teks, html, json, unduh atau bahkan gambar. Untuk saat ini, kami hanya menginginkan halaman yang mengirimkan teks.

Kami akan membuat pengontrol untuk home halaman.

tambahkan file dengan jalur catalog/controller/common/home.php

<?php

class ControllerCommonHome{

    private $registry = array();

    public function __construct($registry){
        $this->registry = $registry;
    }

    public function index(){

        $output = 'Home Page';
        //using the registry to get the response object and set the Output
        $this->registry->get('response')->setOutput($output);
    }
}

dan edit file index.php

<?php
// My simpleCart

//load registry
require_once('system/engine/registry.php');
//load response
require_once('system/library/response.php');

//initialize registry
$registry = new Registry;

//initialize response
$response = new Response;
//add resoinse object to the registry
$registry->set('response', $response);

//load controller common/home
require_once('catalog/controller/common/home.php');
$controller = new ControllerCommonHome($registry);
$controller->index();

//send the output to the client
$registry->get('response')->output();

perhatikan bagaimana saya meneruskan $refistryke ControllerCommonHome sehingga saya bisa mengaksesnya di dalam controller.

4. Router

Kami tidak ingin pengontrol di-hardcode, benar. Kami akan menggunakan parameterroute dari alamat url untuk memberi tahu keranjang kami pengontrol mana yang akan dimuat.

Buat file dengan jalur system/library/request.php

<?php
class Request {
    public $get = array();

    //for now I just need the $_GET parameter
    public function __construct() {
        $this->get = $_GET;
    }
}

Buat class Router yang akan bertanggung jawab untuk menginisialisasi file Controller berdasarkan rute (dengan kata lain: memanggil controller secara dinamis)

<?php
class Router {
    private $registry;

    public function __construct($registry) {
        $this->registry = $registry;
    }

    public function dispatch($route) {
        require_once('catalog/controller/'.$route.'.php');
        $class = "Controller".str_replace('/', '', $route);
        $controller = new $class($this->registry);
        $controller->index();
    }
}

memuatnya ke index.php

<?php
require_once('system/engine/registry.php');
require_once('system/engine/router.php');
require_once('system/library/response.php');
require_once('system/library/request.php');

$registry = new Registry;

$response = new Response;
$registry->set('response', $response);

$request = new Request;
$registry->set('request', $request);

//get the route from the url
if(isset($registry->get('request')->get['route'])){
    $route = $registry->get('request')->get['route'];
}else{
    $route = 'common/home';
}

//initiate the router and dispatch it base on the route
$router = new Router($registry);
$router->dispatch($route);


$registry->get('response')->output();

Perhatikan bagaimana saya memuat semuanya ke dalam $registrydan kemudian meneruskannya ke $routeryang kemudian meneruskannya ke $controller.

Posting ini sudah terlalu panjang, tapi saya harap ini akan memberikan pemahaman dasar tentang pola MVC di OpenCart.

Jika Anda ingin saya melanjutkan posting ini dan memberi tahu Anda bagaimana hal-hal lain berfungsi seperti model dan tampilan, beri peringkat jawaban ini sehingga saya tahu.

Lihat juga Youtube saya https://www.youtube.com/dreamvention dan blog saya https://dreamvention.com/blog. Saya akan memposting lebih banyak tip dan tutorial di sana untuk kalian!

Dmitriy Zhuk
sumber
1

PHP adalah bahasa yang cukup besar dengan lebih dari 5000 fungsi bawaan sehingga salah satu strategi untuk mempelajari platform baru adalah mengidentifikasi fungsi mana yang paling sering digunakan dan meluangkan waktu untuk mengenalnya dengan sangat baik.

Saya telah menjalankan beberapa kueri pada kode sumber OpenCart dan 10 fungsi teratas yang paling umum digunakan adalah:

array()
count()
explode()
implode()
mktime()
delete()
time()
date()
sprintf()
list()

Semua 52 yang tercantum di sini serta perintah bash Linux yang dapat Anda gunakan pada basis kode apa pun untuk mengidentifikasi fungsi yang umum digunakan: https://www.antropy.co.uk/blog/efficient-learning-for-new-opencart-developers/

Paul Feakins
sumber
1

Daftar putar video youtube ini juga dapat membantu untuk menjadi Gurus pengembang OpenCart:

Tutorial Video OpenCart

  1. Pendahuluan dan Daftar Isi Video ini membahas pendahuluan seri
  2. Instalasi OpenCart localhost Video ini melalui instalasi OpenCart di localhost
  3. File dan struktur folder dari OpenCart Ini menjelaskan struktur file dan folder dari OpenCart
  4. Membuat skema Tabel Database di OpenCart Ini menunjukkan skema tabel database dan menunjukkan cara membuat tabel database di OpenCart
  5. Metode OpenCart Library Predefined Objects Ini menjelaskan Metode OpenCart Library Predefined Objects dan menunjukkan di mana menemukannya.
  6. Pola MVCL, aliran kode dan permintaan & respons di OpenCart Ini menunjukkan pola MVCL, aliran kode dan permintaan & respons di OpenCart. Mereka menggambarkan aliran seperti pada gambar di bawah ini: MVCL dijelaskan dengan Kode

  7. Instal, Konfigurasi dan Hapus Modul Opencart Ini menunjukkan tiga cara untuk mengunggah modul, kemudian menginstal, mengkonfigurasi dan menghapus modul / ekstensi OpenCart 3.

  8. Tata letak dan posisi di Opencart 3 Ini menjelaskan tata letak dan posisi OpenCart 3. Ini menunjukkan bagaimana menampilkan tata letak yang disesuaikan untuk halaman yang berbeda, memberikan contoh halaman kategori. Kami menunjukkan tata letak yang berbeda untuk kategori yang berbeda.

  9. Gambaran umum acara dari OpenCart Anda akan mempelajari Acara apa yang ada di OpenCart, bagaimana cara kerjanya dan apa yang membuatnya sangat berguna.

  10. Dokumentasi OpenCart API untuk pengembang Video ini akan menunjukkan bagaimana menggunakan dan membuat API OpenCart kustom

Setelah Anda melihat video-video ini maka Anda dapat mulai membuat kode :)

Rupak Nepali
sumber