Diyun CMS content management system is a website content management framework produced based on PHP7 language and using the latest CodeIgniter4 as the development framework. It provides an integrated website technology solution of "computer website + mobile website + APP interface". She has a powerful and stable underlying framework, a development concept that focuses on flexible expansion, and is convenient for secondary development without destroying the program core. The PHP website building program created for WEB artists can be called a PHP universal website building framework.
Diyun CMS framework features1. Program architecture
The Diyun CMS framework is a web content management system development framework developed using the new syntax of PHP7/PHP8. It has the powerful content management functions and flexible expansion features of the Diyun CMS and can be called a PHP universal website building framework. Powerful and flexible content module and plug-in mechanism, developers can customize content modules or expand them in the form of plug-ins according to their own needs.
Diyun CMS framework adopts the latest CodeIgniter4 framework, has complete secondary development documents, and follows the framework's native programming style, which is very convenient for secondary development; the CodeIgniter installation package includes a "User Manual", which includes an introduction, tutorials, and "step-by-step instructions". ” guidance, also includes reference documentation for the framework components.
2. Efficiency and safety
1. Using the new PHP7 syntax features and taking into account performance optimization when designing, the operating efficiency is up to 4 times that of the PHP5 series development environment
2. Use the scalability and routing mode of the CI framework, coupled with the powerful and rich middleware and expansion packages of the ZF framework, to greatly improve the scalability of the system.
3. All Zend Framework official extension packages support the free introduction of this system and the on-demand loading mode to maximize development efficiency.
4. Utilize security-related components provided by ZF, including SQL injection, XSS, CSRF, spam and password brute force cracking attacks
5. Dynamic caching technology allows dynamic pages to support caching, making website access in dynamic page mode faster and more efficient.
6. The entire site supports HTTPS transmission protocol, which is more secure and supports URL specifications for mini program data requests.
7. The form adds "csrf_token" verification function for stronger protection.
3. Multi-plug-in mechanism
The CI4 framework uses multiple Modules as App applications. Diyun CMS continues to use this design pattern and supports multiple App plug-ins.
1. Plug-in directory structure: dayrui/App/***/.
2. The plug-in supports independent operation.
3. The internal structure of the plug-in follows CI4App rules.
4. Custom CI extension class
Diyun CMS has expanded CI's own class library without destroying the CI4 framework itself.
1. Rewrite the CI error exception display class and make it Chinese.
2. Rewrite the routing class to conform to the URL structure of domestic website building programs, such as: c=controller m=method name id=parameters.
3. Rewrite the hook class. The CI4 hook class will load the custom hooks in all apps. Too many apps will affect the speed. Diyun CMS proposes a global hook configuration file.
4. Rewrite the security class and strengthen the filtering of illegal strings.
5. Template parsing class (view)
CI4's own template parsing class is not very flexible. Diyun CMS adopts Tianrui's independently developed Tianrui template engine technology. The MVC design pattern realizes the appropriate separation of business logic and presentation layer, allowing web designers to easily design ideal templates.
1. Support original PHP syntax features.
2. Support CI framework syntax structure.
3. {Variable} customizes the system tag syntax structure.
4. Template caching requires only one parsing to improve performance.
6. Custom extension directory
Diyun CMS has a global Library directory, which is specifically used to extend class libraries. The usage is different from that of Libraries, but the principle is the same.
1. Global Library call.
2. Can inherit the global Library function class.
3. App has its own independent Library function class.
4. Cross-App supports calling the Library function class of any App.
7. Website template mechanism
CI4 does not have a terminal identification mode. Diyun CMS adds multi-terminal identification and customized terminal display.
1. Diyun CMS template is divided into mobile phone version and computer version.
2. You can directly edit website templates and mobile phone templates in the background.
3. Automatically back up editing templates to avoid losing old templates.
4. Automatically detect whether the template syntax is correct when editing the template.
5. Name the template file in Chinese to avoid quick distinction.
8. Universal Table class
The Diyun CMS framework has prepared a universal Table class for developers. This class is used to add, delete, modify, and query data tables. It only requires configuration files, and Diyun CMS will help you complete the logical functions.
1. Support any table data display.
2. Multi-table joint query.
3. Customize field format warehousing rules.
9. Custom fields
Diyun CMS adopts a very mature custom field solution, which can support custom fields for column tables, custom fields for content tables, custom fields for form tables, custom fields for user tables, custom fields for comment tables, and custom fields for page tables. , link table custom fields, tag table custom fields, etc.
1. Text fields, including single-line text, multi-line text, and text event fields
2. Upload field, including single file upload and multiple file upload
3. Date and time fields support customized year and month format display
4. Linked menu fields, used for data displayed at unlimited classification levels, such as cities
5. Baidu map field, used to locate map coordinates and filter data within the coordinate range
6. Rich text fields, Baidu Editor, Baidu Mobile Editor
7. Option fields, radio-select fields, multi-select fields, drop-down selection fields
8. Color field, used to select web page color value
9. Attribute fields, used for data similar to product attributes
10. Content-related fields, fields used to load content from other modules, such as thematic functions
11. Price field, used for shopping transactions within the CMF site, such as article buying and selling, download charges
12. Single-line grouping field, used to display N fields in one line
12. Multi-line grouping field, used to display N fields in a group
13. Powerful DIY field. This field is quite powerful and allows developers to create their own fields.
Screenshot of Diyun CMS content management system