Skip to content

DemonTPx/easy-twig

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Easy Twig

Build Status

Easy twig is a very small and simple framework to get started with Twig quickly.

Just start editing the templates/page/index.html.twig to start filling in your front page and templates/base.html.twig to modify the skeleton. To add a new page, for example a 'contact' page, just create the templates/page/contact.html.twig file and you're done! See pages.

If a page can not be found, the template templates/error/404.html.twig will be rendered.

Getting started

Create a new project based on easy twig:

composer create-project demontpx/easy-twig <folder_name>

Pages

Assuming your projects runs on the domain.tld domain:

  • templates/page/index.html.twig will be the homepage of the project, accessible through http://domain.tld/
  • templates/page/error/404.html.twig contains the "Not found" error page
  • Any template outside templates/page/ will not be directly accessible for the user and should be used to contain inherited, included and other templates
  • Any page inside templates/page/ will be directly accessible by its name; for example:
Template URL
contact.html.twig http://domain.tld/contact
information/about-us.html.twig http://domain.tld/information/about-us
contact-us/index.html.twig http://domain.tld/contact-us/

Note that removing the last slash will try to access contact-us.html.twig

Configuration

Check out the .env file for configuration settings.

Setting up apache2

Set the document root to the web/ folder. You also might want set AllowOverride All and enable mod_rewrite for some pretty URLs. Your configuration might look a bit like this:

<VirtualHost *:80>
    ServerName domain.tld
    ServerAlias www.domain.tld

    DocumentRoot /var/www/website/public
    <Directory /var/www/website/public>
        AllowOverride All
    </Directory>
</VirtualHost>

Setting up Nginx

Configuration might look a bit like this:

server {
    server_name domain.tld www.domain.tld;
    root /var/www/website/public;

    location / {
        try_files $uri /index.php$is_args$args;
    }

    location ~ ^/index\.php(/|$) {
        fastcgi_pass unix:/var/run/php-fpm.sock;
        fastcgi_split_path_info ^(.+\.php)(/.*)$;
        include fastcgi_params;

        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        fastcgi_param DOCUMENT_ROOT $realpath_root;

        internal;
    }
}

About

A very small and simple framework to get started with Twig quickly

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published