定制 suomato/base-camp 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

suomato/base-camp

Composer 安装命令:

composer require suomato/base-camp

包简介

Awesome WordPress starter theme with own CLI for developers based on modern web technologies.

README 文档

README

Dependency Status Dependency Status License

About Base Camp

Awesome WordPress starter theme with own CLI for developers based on modern web technologies.

Features

  • Bulma (Responsive CSS framework based on Flexbox)
  • Timber
    • Twig Template Engine
    • Cleaner and better code
    • Separates the logic from presentation
  • Webpack
    • Sass / Scss for stylesheets (Minimize in production)
    • ES6 for Javascript (Minimize in production)
    • Automatic Cache Busting
    • Split javascript code to two chunks, app.js and vendor.js
    • Vuejs for boosting frontend development
    • BrowserSync for synchronised browser testing
  • Luna (Command-line interface included with Base Camp)
  • WooCommerce support with basic boilerplate.

Requirements

Installation

  • Go your themes folder and runcomposer create-project suomato/base-camp
  • cd base-camp
  • yarn or npm install
  • define your custom webpack config to build/config.js file
  • yarn watch or npm run watch
  • Happy developing :)

Structure

base-camp/                                          # Theme root
├── app/                                            # Theme logic
│   ├── config/                                     # Theme config
│   │   ├── wp/                                     # WordPress specific config
│   │   │   ├── admin-page.php                      # Register here WordPress Admin Page config
│   │   │   ├── image-sizes.php                     # Register here WordPress Custom image sizes
│   │   │   ├── login-page.php                      # Register here WordPress Login Page config
│   │   │   ├── maintenance.php                     # Maintenance mode config
│   │   │   ├── menus.php                           # Register here WordPress navigation menus
│   │   │   ├── scripts-and-styles.php              # Register here WordPress scripts and styles
│   │   │   ├── security.php                        # Things that increase the site security
│   │   │   ├── sidebars.php                        # Register here WordPress sidebars
│   │   │   └── theme-supports.php                  # Register here WordPress theme features
│   │   ├── autoload.php                            # Includes all config files (DON'T REMOVE THIS)
│   │   ├── timber.php                              # Timber specific config
│   │   └── woocommerce.php                         # Init woocommerce support
│   ├── models/                                     # Wrappers for Timber Classes
│   ├── timber-extends/                             # Extended Timber Classes
│   │   └── BaseCampSite.php                        # Extended TimberSite Class
│   ├── bootstrap.php                               # Bootstrap theme
│   ├── helpers.php                                 # Common helper functions
├── build/                                          # Theme assets and views
│   ├── config.js                                   # Custom webpack config
│   ├── webpack.config.js                           # Webpack config
├── resources/                                      # Theme assets and views
│   ├── assets/                                     # Front-end assets
│   │   ├── js/                                     # Javascripts
│   │   │   └── components/                         # Vue Components
│   │   ├── sass/                                   # Styles
│   │   │   └── components/                         # Partials
│   ├── languages/                                  # Language features
│   │   ├── base-camp.pot                           # Template for translation
│   │   └── messages.php                            # Language strings
│   ├── views/                                      # Theme Twig files
│   │   ├── components/                             # Partials
│   │   ├── footer/                                 # Theme footer templates
│   │   └── header/                                 # Theme header templates

Models

Models are wrapper classes for Wordpress Post Types and Taxonomies. They provide very simple interface to interact with the database.

How to use

// index.php

<?php

use Basecamp\Models\Post;

// returns an array of TimberPost objects
Post::all();

// returns TimberPost object with the ID 1 (if it exists)
Post::find(1);

// returns first two posts;
Post::take(2)->get();

// skips first two posts;
Post::skip(2)->get();

// returns published posts;
// Supported values: https://codex.wordpress.org/Post_Status#Default_Statuses
Post::status('publish')->get();

// returns all posts except post with ID 1;
Post::exclude([1])->get();

// returns only posts with ID 1;
Post::include([1])->get();

// returns an array of posts descending order by author;
// Supported Values: https://codex.wordpress.org/Class_Reference/WP_Query#Order_.26_Orderby_Parameters
Post::orderby('author', 'desc')->get();

// returns an array of posts authored by admin;
Post::author('admin')->get();

// returns an array of posts which are in category 'cars' or 'vehicles';
Post::inCategory(['cars', 'vehicles'])->get();

All queries are chainable. For example you can get three first incomplete posts authored by admin:

Post::status('draft')->author('admin')->take(3)->get();

All models are able to use almost every methods. However there are some exceptions:

  • Only Post model has inCategory() method
  • Taxonomies (Category, Tag) have hideEmpty() method

Luna (Command-line interface)

Docs

统计信息

  • 总下载量: 489
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 144
  • 点击次数: 3
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 144
  • Watchers: 13
  • Forks: 21
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2017-08-13

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固