kseven/codesmarty

CodeIgniter 4 com modules and multi templates and plugins use smarty

1.0.0 2022-11-11 13:58 UTC

This package is auto-updated.

Last update: 2024-10-11 18:56:44 UTC


README

All Smarty configuration is properly configured using the string $this->$Smarty. To change the settings, see the file Smarty.php under app/.

Note: if the template does not exist, Smarty will look for it in the app/views folder.

What changes is the reading of views that used to be view(); now it's $this->Smarty>View();

  • Everything else follows the framework standards...

Ah, if you want to use the codeigniter pattern, it's also available, but it won't read like Smarty (in the template system).

What is CodeIgniter?

CodeIgniter is a PHP full-stack web framework that is light, fast, flexible and secure. More information can be found at the official site.

This repository holds a composer-installable app starter. It has been built from the development repository.

More information about the plans for version 4 can be found in the announcement on the forums.

The user guide corresponding to this version of the framework can be found here.

Installation & updates

composer create-project kseven/codesmarty then composer update whenever there is a new release of the framework.

When updating, check the release notes to see if there are any changes you might need to apply to your app folder. The affected files can be copied or merged from vendor/codeigniter4/framework/app.

Setup

Copy env to .env and tailor for your app, specifically the baseURL and any database settings.

Important Change with index.php

index.php is no longer in the root of the project! It has been moved inside the public folder, for better security and separation of components.

This means that you should configure your web server to "point" to your project's public folder, and not to the project root. A better practice would be to configure a virtual host to point there. A poor practice would be to point your web server to the project root and expect to enter public/..., as the rest of your logic and the framework are exposed.

Please read the user guide for a better explanation of how CI4 works!

Repository Management

We use GitHub issues, in our main repository, to track BUGS and to track approved DEVELOPMENT work packages. We use our forum to provide SUPPORT and to discuss FEATURE REQUESTS.

This repository is a "distribution" one, built by our release preparation script. Problems with it can be raised on our forum, or as issues in the main repository.

Server Requirements

PHP version 7.4 or higher is required, with the following extensions installed:

  • intl
  • libcurl if you plan to use the HTTP\CURLRequest library

Additionally, make sure that the following extensions are enabled in your PHP:

  • json (enabled by default - don't turn it off)
  • mbstring
  • mysqlnd
  • xml (enabled by default - don't turn it off)