2012-02-28 20 views
10

मैं ओपनकार्ट में एक कस्टम पेज बनाना चाहता हूं।"सूचना" सुविधा का उपयोग किए बिना opencart php कस्टम पेज

मुझे पता है कि मैं व्यवस्थापक क्षेत्र का उपयोग कर सूचना अनुभाग में एक कस्टम पेज डाल सकता हूं, हालांकि मैं जो चाहता हूं वह एक नियंत्रक है जो कुछ अन्य पृष्ठों को इंगित करता है।

मैं पूरी तरह से समझ नहीं पा रहा हूं कि यह कैसे करें।

कोडनिर्देशक में आप एक नियंत्रक और दृश्य बनाएंगे और यदि आवश्यक हो तो मार्ग फ़ाइल में कुछ नियम स्थापित करें लेकिन मुझे ऐसा कुछ नहीं दिखाई दे रहा है।

क्या कोई मुझे इस बारे में कुछ निर्देशों के बारे में बताएगा या मुझे बताएगा कि कृपया इसे कैसे करें।

धन्यवाद

उत्तर

17

ईमानदार होने के लिए यह बहुत आसान है। फ़ोल्डर और फ़ाइल नाम के आधार पर आपको अपनी फ़ाइल के लिए नियंत्रक बनाने की आवश्यकता है। उदाहरण के लिए common/home.php

Class ControllerCommonHome extends Controller 

यह index.php?route=common/home का उपयोग करके पहुँचा रहा है और index() विधि तक पहुँचता है। आप उदाहरण foo के लिए, किसी अन्य विधि कॉल करना चाहते हैं, तो आप के रूप में

public function foo() { 
    // Code here 
} 

विधि निर्धारित करना होगा और index.php? मार्ग = आम/घर/foo

का उपयोग कर प्रतिपादन के लिए के रूप में यह कहेंगे दृश्य, यह थोड़ा सा ट्रिकियर है। मूल रूप से आप अपने नियंत्रक विधि के अंत तक यह सब जोड़ने के लिए

if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/common/new_template_file.tpl')) { 
     $this->template = $this->config->get('config_template') . '/template/common/new_template_file.tpl'; 
    } else { 
     $this->template = 'default/template/common/new_template_file.tpl'; 
    } 

    $this->children = array(
     'common/column_left', 
     'common/column_right', 
     'common/content_top', 
     'common/content_bottom', 
     'common/footer', 
     'common/header' 
    ); 

    $this->response->setOutput($this->render()); 

कौन सा /catalog/view/theme/your-theme-name/template/common/new_template_file.tpl प्रस्तुत करना होगा कि फ़ाइल मौजूद नहीं है यह default विषय फ़ोल्डर में एक ही पथ का उपयोग करने का प्रयास करेंगे की जरूरत है,

मैं आप के चारों ओर जहां सब कुछ ठीक से से आता है अपने सिर लाने के लिए कुछ नियंत्रकों और टेम्पलेट्स पर एक नज़र लेने की सलाह देते हैं, लेकिन है कि यह कैसे काम करता

+0

यहां कुछ याद आ रही है लेकिन यह सुनिश्चित नहीं है कि क्या। मानक फाइलों में यह संरचना है लेकिन शायद ऐसी जगह है जहां नए एक्सटेंशन या पंजीकरण की आवश्यकता हो? –

+1

यदि आप पूरी तरह से नए पेज बना रहे हैं तो उन्हें पंजीकृत होने की आवश्यकता नहीं है। यदि वे मॉड्यूल हैं, तो बुनियादी सिद्धांत समान है, लेकिन मॉड्यूल को व्यवस्थापक में स्थापित करने की आवश्यकता है और उनके पदों आदि के साथ सक्षम करने के लिए सेट किया गया है। –

0

कृपया इस पृष्ठ मैं आशा अधिक पूर्ण उपयोग करने का पालन के बुनियादी सार है।

http://code.tutsplus.com/tutorials/create-a-custom-page-in-opencart--cms-22054

OpenCart लोकप्रिय प्रोग्रामिंग MVC पद्धति का उपयोग कर बनाया गया है। "एल" नामक इस पैटर्न में एक और तत्व जोड़ा गया है - एक भाषा भाग - इसलिए इसे ओपनकार्ट में एमवीसी-एल पैटर्न कहा जाता है। मैं एमवीसी पैटर्न के विवरण में नहीं जाऊंगा क्योंकि यह एक बहुत ही लोकप्रिय और परिचित डिजाइन पैटर्न है और हमने इसे अन्य ट्यूटोरियल में बहुत विस्तार से कवर किया है।

संबंधित मुद्दे