networking/init-cms-sandbox 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

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

networking/init-cms-sandbox

Composer 安装命令:

composer require networking/init-cms-sandbox

包简介

the "Symfony Standard Edition" distribution with the networking init CMS bundle configured

README 文档

README

Build Status

Welcome to the init CMS Sandbox. This will get you started with a working CMS based on the InitCmsBundle and Symfony 2.

The InitCmsBundle is a small flexible cms core based on symfony 2 which can be used as a standalone CMS or integrated into any existing symfony 2 project.

The main features are:

  • Page manager with draft and published states, as well as public or protected (login only) pages, and customised URLs
  • Menu manager to organise multiple menu bars
  • Media manager and gallery manager
  • User manager with ACL access control
  • Help page manager

Other Features:

  • Integrate your own twig templates
  • Create your own content types
  • Based on the SonataAdminBundle so you can easily create your own admin modules

Find more information about the init CMS on www.initcms.com.

A demo of the CMS can be found at demo.initcms.com. The Demo is reset every 24 hours.

The installation of the sandbox is pretty much the same as a normal installation of Symfony project.

This document contains information on how to download, install, and start using the networking init CMS sandbox. For a more detailed explanation on install Symfony, see the Installation chapter of the Symfony Documentation.

The project is being developed by the small hard working team at net working AG in Zürich.

  1. Installing the networking init CMS sandbox

For the moment you will need to download an archive, then run composer to install the dependencies. We will soon have the project on packagist, after that you will be able to use the create-project command.

Download an Archive File

First download and unpack the archive of the sandbox in your preferred location

https://github.com/networking/init-cms-sandbox/archive/master.zip

Or use composer to create the project

composer create-project	networking/init-cms-sandbox project_folder 3.4.*

Then change into the project directory

cd path/to/install

Create a parameters.yml file:

cp app/config/parameters.yml.dist app/config/parameters.yml

Use Composer (recommended)

As Symfony uses Composer to manage its dependencies, which is why we also use it.

If you don't have Composer yet, download it following the instructions on http://getcomposer.org/ or just run the following command:

curl -s http://getcomposer.org/installer | php

Composer will install the networking init CMS and all its dependencies under the path/to/install directory.

Now you will need to install the dependencies, the following command will fill the vendors folder with all the working guts in accordance with the versions defined in the composer.lock file:

php composer.phar install

Now we just need to create some folders for our media in the web root directory and make it RW+

mkdir web/uploads web/uploads/media
chmod -R 777 web/uploads

Make cache and logs writeable

chmod -R 777 var/cache var/logs
  1. Checking your System Configuration

Before starting coding, make sure that your local system is properly configured for Symfony.

Execute the symfony_requirements script from the command line:

php bin/symfony_requirements

Access the config.php script from a browser:

http://localhost/config.php

If you get any warnings or recommendations, fix them before moving on.

If all is good, you can move on to configuring the DB set up by clicking the "Configure your Symfony Application online" link, or by editing the paramters.yml file directly

  1. Run the networking init CMS installation

Now that the symfony application is more or less setup, it is time to load the CMS DBs and fixtures, as well as create an admin user.

You can run the install process on the command line, you will be prompted to enter a username, email address and password, these will get you into the backend.

php bin/console networking:initcms:install

Alternatively there is an install wizard which will get this done for you, just go to the following URL and follow the instructions:

http://localhost/app_dev.php/cms_install

Now you should be up and running.

The installer also executes assetic, which gets your assetic assets organised by doing an assetic dump (we use less so please check you have it setup already)

bin/console assetic:dump

Maybe you have to install less, if you do not have it already. On OS X get homebrew, get node, get less

brew install npm
sudo npm install less --global
  1. Login to the admin area

It should now be possible to login to the backend admin interface of the project. Just navigate to:

http://localhost/app_dev.php/admin

Enter your username and password as entered in step 3 and you should be directed to the admin dashboard.

Further documentation about the initcms

You can find more information about configuring and extend the initcms online, just follow the links

What's inside?

The networking init CMS is based on a Symfony Standard Edition base plus a bit more

  • The sonata-admin bundle is the basis for the admin area

  • The routing of dynamic content is based on the Symfony CMF dynamic routing component

  • The Mopa bootstrap bundle for some twitter bootstrap goodness in the front end.

  • Twig is the only configured template engine;

  • Doctrine ORM/DBAL is configured;

  • Swiftmailer is configured;

  • Annotations for everything are enabled.

It comes pre-configured with the following bundles:

  • SonataAdminBundle The missing Symfony2 Admin Generator

  • SymfonyCmfRoutingExtraBundle Symfony CMF Routing Extra Bundle capabilities

  • MopaBootstrapBundle MopaBootstrapBundle is a collection of code to integrate twitter's bootstrap into your symfony2 project

  • FrameworkBundle - The core Symfony framework bundle

  • SensioFrameworkExtraBundle - Adds several enhancements, including template and routing annotation capability

  • DoctrineBundle - Adds support for the Doctrine ORM

  • TwigBundle - Adds support for the Twig templating engine

  • SecurityBundle - Adds security by integrating Symfony's security component

  • SwiftmailerBundle - Adds support for Swiftmailer, a library for sending emails

  • MonologBundle - Adds support for Monolog, a logging library

  • AsseticBundle - Adds support for Assetic, an asset processing library

  • JMSSecurityExtraBundle - Allows security to be added via annotations

  • JMSDiExtraBundle - Adds more powerful dependency injection features

  • WebProfilerBundle (in dev/test env) - Adds profiling functionality and the web debug toolbar

  • SensioDistributionBundle (in dev/test env) - Adds functionality for configuring and working with Symfony distributions

  • SensioGeneratorBundle (in dev/test env) - Adds code generation capabilities

  • [IbrowsSonataTranslationBundle][18] - Adds a DB based UI for working with translations, integrated with in a SonataAdmin setup.

  • [IbrowsSonataAdminAnnotationBundle][19] - Adds the ability to defined form fields via annotations to be used in conjuction with the SonataAdminBundle

networking/init-cms-sandbox 适用场景与选型建议

networking/init-cms-sandbox 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 110 次下载、GitHub Stars 达 17, 最近一次更新时间为 2014 年 03 月 14 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 networking/init-cms-sandbox 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 networking/init-cms-sandbox 我们能提供哪些服务?
定制开发 / 二次开发

基于 networking/init-cms-sandbox 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 110
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 17
  • 点击次数: 4
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 17
  • Watchers: 8
  • Forks: 14
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2014-03-14