1 Install and upgrade
1.1  System Requirements
1.2  Source Code Installation
1.3  One-Click Installation for Windows
1.4  Zsite, ZenTao and Zdoo
1.5  Install Zsite with online scripts
1.6  Upgrade Zsite
1.7  Upgrade Zsite with online scripts
1.8  Zsite Themes
1.9  Decryption
2 About Zsite
2.1  About Zsite
2.2  Marketing in the era of mobile internet
2.3  Zsite License
2.4  Zsite and ZenTao
3 How to use Zsite
3.1 Content
3.1.1 Article  Article Category  Publish an Article  Edit, Delete and Attach
3.1.2 Page  Zsite Page
3.1.3 Blog  Zsite blog
3.1.4 Book  Add a book  Add chapters to a book  Write articles for a chapter  Book settings
3.1.5 Submission  Submit an article
3.2 Mall
3.2.1  Orders and Settings
3.2.2 Product  Product category  Add a product: basic info  Add a product: attributions  Add a product: images
3.3 User
3.3.1 User Management  User list
3.3.2 Comment  Review and reply a comment
3.3.3 Forum  Board settings  Board moderator and descriptions  Edit, delete, reply and stick a thread
3.4 SEO
3.4.1  Traffic Statistics
3.4.2  Keywords
3.4.3  Links
3.5 UI
3.5.1 Interface  Theme  Layout  Appearance  Code  Source  Mobile site
3.5.2 Logo  Site logo  Site favicon
3.5.3  Slides
3.5.4  Navigation
3.5.5 Widget  Manage a widget  Example: customized widget  Example: use Widget to set the style
3.5.6  Visual Editor
3.5.7  Other Settings
3.5.8  Custom Themes
3.6 Ext
3.6.1  Extensions and Themes
3.6.2  Import JS
3.7 Set
3.7.1 Site  Basic settings  Language  Path  Domain settings  CND settings  Cache settings  Homepage menu  Full text retrieval  Backup/Restore  Agreement  Static Settings
3.7.2 Company  Company Information  Contact
3.7.3  Points
3.7.4 API  Email Setting OAuth  GitHub  Facebook
3.7.5 Security  Basic settings  Filters and Blacklist/Whitelist  Sensitive words and attachment  Verification Code  Admin and Privileges
4 System Maintenance
4.1  Configure web server for URL
4.2  Backup Zsite
4.3  Install Zend Guard Loader
4.4  Install Ioncube
4.5 Install other PHP extensions
4.5.1  Install PHP-openssl
4.5.2  Install PHP-curl
4.5.3  Install PHP-json
4.5.4  Install PHP-mbstring
4.5.5  Install PHP-gd
4.5.6  Install PDO
5 Customization
5.1  Before you start
5.2  Zsite source code
5.3  Zsite directory structure
5.4  Find the code to modify
5.5  Database structure
6 Zsite Cloud
6.1  Zsite License
6.2  Zsite versions
6.3  Resolve domain name to Zsite server
6.4  Why my site is locked?
6.5  How to backup my Zsite data?

Find the code to modify

2016-08-29 10:12:30
Last edited by Zeze on 2018-08-10 11:16:39

You have to know how to find the code corresponding to certain content you want to change before you can modify it. After learning the directory of Zsite, let's see how to find those codes to modify.

1. Locate the code via Control

Let's see an example first. Example :

article-browse-1.html or /?m=article&f=browse&category=1&t=html

article-browse-1.html means the method to browse the modules of article; the first parameter is 1; the page type to access is h tml.
/?m= article&f=browse&productID=1&t=html

m is the name of a module; f is the name of a method; what is behind that is parameter list.

Now let's take a look at Zsite source code, the method to browse in system/module/ article/control.php

The URL at the frontend of Zsite has been SEOed, so the alias of a category might show here. You can change "Request Type" to "Get", and then check URL address again.

2. Calling in Control

$this->bug is to call model in bug, so the file is at module/bug/model.php.

$this->loadmoel('tree')->xxx is to load modlel in tree and its file is at module/tree/model.php.
$this->app->loadClass('pager') is to load a lib, and its file is at lib/pager/pager.class.php.
$this->lang->bug->xxx is defined in module/bug/lang/zh-cn.php. zh-cn can be changed to language your need.

Following $this->display() is the call of templates with the same method in the directory of view. For example, the method to browse a bug and its file in module/bug/view/browse.html.php.

3. Template files

Zsite templates include templates at the frontend and the ones at the backend. index.php will call the frontend template, and admin.php will call backend template.

For example, the method of Product List page is to browse and its frontend template is at www/template/default/product/browse.html.php, while its backend template is at system/module/product/view/browse.html.php.

The method of lists and pages is to browse and detailed content is to view.

Block templates are in the directory of www/template/default/block/

Zsite 5.2+ version support editing template at backend by going to "Design"->"Template editing" , and the storage can be found at system/tmp/template).

4. Language files

Language displayed on the interface is included in language file of each module. For example, in the directory of Product module, system/module/product/lang, zh-cn is the simplified Chinese file, zh-tw is the traditional Chinese files, and en is the English file.

Backend language can be set in the language file of the common module.