Skip to content

Welcome to pandastic

Summary

In this tutorial we show how to change or update themes for Panda.

About

Info

📲 A lightweight mobile-first theme called pandastic.

  • Requires at least WP 4.5
  • Tested up to WP 5.5
  • Requires PHP 5.6 or later
  • AGPLv3 (or later)

Description

Hint

👷 Custom theme: pandastic, developed by Pablo Hörtner redtux@pm.me

This theme is part of the Panda project, aiming to build the Next Generation E-Commerce Platform.

pandastic is a lightweight but powerful WP theme based on Bootstrap and _s.

It includes support for WooCommerce and for Infinite Scroll in Jetpack.

You have the choice…

  1. pandastic can be used as parent theme for a customized child theme.
  2. pandastic can be forked in order to create your awesome new theme.

For smaller customizations a child theme is recommended, facilitating pandastic updates without overwriting any changes.

In any case we want to encourage you to contribute your improvements back to pandastic.

Features

Summary

🎉 Well-commented Multipurpose Templates

We provide several pre-styled ready-to-use elements and models for any purpose.

pandastic page templates, widgets and layout elements are fully customizable.

Our feature list Or: What you get…

Support Feature tag Feature description
❎ Camera Carousal
❎ Gallery Section Lightbox
❎ svg Vector Illustrations
❎ custom-fonts SVG Fonts, Font Awesome & Google Fonts
❎ custom-forms Customizable Contact Forms
✅ bootstrap Developer-friendly Bootstrap Theme
✅ cross-browser Cross Browser Support (see below)
✅ custom-404 HTTP 404 Error Page Template
✅ custom-background Customizable Background
✅ custom-footer Footer Template
✅ custom-header Header Template
✅ custom-logo Customizable Logo
✅ custom-menu Customizable Menus And Navigation Bars
✅ custom-search Search Page Template
✅ custom-templates Custom Page Templates & Layout Elements
✅ featured-images Customizable Featured Images
✅ flexbox CSS Flexible Box Layout
✅ human-readable Clean Well-structured HTML5 & CSS3 Code
✅ mobile-first 100% Responsive Web Design
✅ sass Syntactically Awesome Style Sheets
✅ scss Sassy CSS & Compiled CSS
✅ threaded-comments Customizable Threaded Comments
✅ translation-ready Translations powered by GNU gettext
✅ ultra-minimal Minify HTML, CSS & JS Resources

The last two major releases of all major browsers will be automatically tested and fully supported.

  • Chrome and Chromium
  • Firefox and Firefox ESR
  • Internet Explorer
  • Opera
  • Safari

We ❤ humans! 🤖

No need to reinvent the wheel. 😉

Reusing pre-built, preselected, curated, modular & well-integrated components saves time and money.

Now we can focus on things that matter without loosing our freedom, creativity, or flexibility.

Installation

Hint

⌨ While the dashboard can be used for theme installation, using the WP CLI is recommended.

🚧 When using Panda, adding new themes via GUI is disabled by default, so you will need to manually enable it.

  1. When using the Dashboard, go to Appearance > Themes and click the Add New button.
  2. Click Upload Theme and Choose File, then select the pandastic.zip file.
  3. Click Install Now.
  4. Click Activate to use our pandastic theme right away.

Customization

Theme customization options are located at Appearance > Customize.

The currently available options are:

Menu Description
Background Image Add a background header image
Colors Adjust site-wide colors
Pages & Posts Adjust the style of page and post featured images
Site Identity > Logo Add a logo image

Example

To change website colors through the GUI customizer, go to Appearance > Customize > Colors.

For further customization creating a child theme is recommended.

The inc directory contains several code snippets to be used in our theme templates.

Snippet Template Description
inc/custom-header.php header.php custom header
inc/template-tags.php tags.php custom tags
inc/template-functions.php functions.php custom functions
assets/js/navigation.js assets/js/custom.js responsive dropdown menu
assets/css/layouts/ assets/css/style.scss sidebar layout samples
inc/woocommerce.php assets/css/woocommerce.scss WooCommerce overrides

Development

Command

The pandastic starter code was generated using the WP CLI.

export WP_THEME="pandastic"
wp scaffold _s "$WP_THEME" --theme_name="$WP_THEME" --author="$WP_TITLE" --author_uri="$WP_HOME" --sassify --woocommerce --activate

Output

Success: Created theme 'pandastic'. Success: Switched to 'pandastic' theme.

Requirements

pandastic requires the following dependencies for theme development:

Quick start

To start, we need to clone or download this repository.

Note

Skip the following for contributions to pandastic. These step are only required when forking our project.

We might want to change the name of this project from pandastic to something else like another-awesome-theme.

For this we will need to do a six-step find and replace on the current project's name in all the templates.

  1. Search for 'pandastic' (inside single quotations) to capture the text domain and replace with: 'another-awesome-theme'.
  2. Search for pandastic_ to capture all the functions names and replace with: another-awesome-theme_.
  3. Search for Text Domain: pandastic in style.css and replace with: Text Domain: another-awesome-theme.
  4. Search for  pandastic (with a space before it) to capture DocBlocks and replace with:  Another_Awesome_Theme.
  5. Search for pandastic- to capture prefixed handles and replace with: another-awesome-theme-.
  6. Search for _PANDA_ (in uppercase) to capture constants and replace with: ANOTHER_AWESOME_THEME_.

Then, we should update the stylesheet header in style.css and the links in footer.php with our project's information, and rename pandastic.pot from the languages directory to use the theme's slug.

Finally, we need to update this readme, add some new awesome features, adopt the copyright, etc.

Dev setup

To start using all the development tools that come with pandastic we need to install the necessary Node.js and Composer dependencies.

Command

Install Composer dependencies.

composer install

Command

Install Node.js dependencies.

npm install

CLI commands

pandastic comes packed with CLI commands tailored for WP theme development :

Command

List available tasks.

gulp --tasks
  • composer lint:wpcs : checks all PHP files against PHP Coding Standards.
  • composer lint:php : checks all PHP files for syntax errors.
  • composer make-pot : generates a .pot file in the languages/ directory.
  • npm run compile:css : compiles SASS files to css.
  • npm run compile:rtl : generates an RTL stylesheet.
  • npm run watch : watches all SASS files and recompiles them to css when they change.
  • npm run lint:scss : checks all SASS files against CSS Coding Standards.
  • npm run lint:js : checks all JavaScript files against JavaScript Coding Standards.
  • npm run bundle : generates a .zip archive for distribution, excluding development and system files.

Getting help

Click here to see the full documentation…

Help

📕 See the Theming Bootstrap and Child Themes docs for further information.

See also

📖 Reading the Panda installation notes and our WP Core docs is assumed.

Authors

See also the AUTHORS page and the full list of contributors who participated in this project.

Credits

Powered by

🔋 pandastic is powered by the following projects.

Project Copyright notice License
Bootstrap © 2011-2021 Bootstrap Authors & Twitter MIT
jQuery © 2005-2021 jQuery Authors and OpenJS MIT
normalize.css © 2012-2021 Nicolas Gallagher and Jonathan Neal MIT
Popper © 2016-2021 Federico Zivolo MIT
Underscores © 2012-2021 automattic GPLv2 (or later)
WPGulp © 2016-2021 Ahmad Awais GPLv2 (or later)

Thank you! ❤

A big thanks to all authors and contributors, and to the whole free software community.

Changelog

0.2.0 - 2020-11-09

  • 🚚 Rename project from _panda to pandastic due to NPM and Composer restrictions
  • 👥 Add a code of conduct
  • 👥 Add AUTHORS and mailmap files to list contributors
  • 🔒 Add a security policy for reporting severe bugs and vulnerabilities
  • 👷 Add GitHub templates for creating issues and pull requests
  • 👷 Add CI workflows for automatic building and testing with GitHub Actions
  • 🔒 Fix security issues due to old lodash.template

0.1.0 - 2020-10-31

  • 🎉 Initial release

Last update: January 28, 2021