zofcms_helper - helper script for ZofCMS web-framework/templating system
mkdir site_dir; cd site_dir; zofcms_helper --site example --plugins QueryToTemplate,DBI,SomeOtherPlugin;
zofcms_helper is a helper script supplied with App::ZofCMS.
It is used to create "startup" structure for your site as well as adding plugin files,
which isn't necessary if you installed them on your server via CPAN.
zofcms_helper --site example
--site argument specifies the directory to use for your web accessible directory of ZofCMS, this is where you'll have your
index.pl file (the helper script will create it). If you don't specify the
--core argument (see below) it will automatically created from the
--site argument by appending
_site to whatever you specify. If you don't provide
--site argument, the default is
zofcms_helper --site example --core example_core
--core argument specifies the name of directory for the "data" directory of ZofCMS, in other words, this is web-inaccessible directory in which you will have your config file, "data_storage" and "templates" directory (see App::ZofCMS::Config for description) as well as any of ZofCMS plugins. The helper script creates config file, all of those directories as well as directory
Execs (see App::ZofCMS::Template) and
Extras (see App::ZofCMS::Extras). The helper script also creates basic
data/ directory inside the directory specified by
--core as well as basic
templates/ directory. If
--core parameter is not specified it will be created by appending
_site to whatever you've gave to
Note: currently there is no support [in the helper script] to have
--core point to a directory on a different level than
--site. If you desperatelly need this please let me know and I will add that support. For now, you can simply edit the created
index.pl file, in particular it's two lines:
use lib '../core_dir'; .... my $conf = $config->load( '../core_dir/config.txt' );
zofcms_helper --site zcms --plugins DBI,QueryToTemplate,OtherPlugin
This options takes a comma (
,) separated list of plugin names to copy over into your "core" directory. This is useful if your server does not support module installation from CPAN; i.e. the helper script copies the modules installed on your system into "core" directory from where ZofCMS can load them, thus when you are done with your site you can simply upload
--core directories to your server and everything should work just fine.
NOTE: do not include the
App::ZofCMS::Plugin:: part of the name of the modules, the above command installs App::ZofCMS::Plugin::DBI, App::ZofCMS::Plugin::QueryToTemplate and
App::ZofCMS::Plugin::OtherPlugin modules into the "core" directory.
Note: the command presented above will recreate the "core" files and
index.pl file. To avoid that, i.e. just add the plugins, use the <--nocore> option
zofcms_helper --site zcms --plugins DBI,QueryToTemplate,OtherPlugin --overwrite_existing_plugins
--plugins option above will NOT overwrite any existing files by default. To force overwriting, use the
zofcms_helper --site zcms --cpan Data::Tranformer,Foo::Bar::Baz
This option has the same purpose as the
--plugins except this one copies your installed CPAN modules to $core_dir/CPAN/
For example, Data::Transformer module is required by App::ZofCMS::Tagged plugin, using the
--cpan command you can copy it over into ZofCMS "core directory" and upload your application to the server that does not have Data::Transformer installed. Note: this option is not that smart, it's not going to copy anything but the actual .pm file for the module you've specified.
zofcms_helper --nocore --site zcms --plugins DBI,QueryToTemplate
--nocore option tells the helper script not to create any "core" directories or files, the command above will only install
QueryToTemplate plugins into the "core" directory.
zofcms_helper --nocore --site zcms --pages foo,foo/bar,foo/bar/baz
--pages argument tells
zofcms_helper to create "page templates". The value to
--pages argument is a comma separated list of pages you wish to create. With this argument the script will try to be smart and create an empty file in
data directory as well as a ZofCMS Template file in
templates directory. Just run the script with the example above and check out your data and templates dirs to see the result.
zofcms_helper --nocore --site zcms --show_plugins
Takes no arguments, when present, zofcms_helper will show a list of all the plugins used by the site (note that plugins listed in Main Config File under
dir_defaults key are currently not shown by this function).
Fork this module on GitHub: https://github.com/zoffixznet/App-ZofCMS
To report bugs or request features, please use https://github.com/zoffixznet/App-ZofCMS/issues
If you can't access GitHub, you can email your request to
bug-App-ZofCMS at rt.cpan.org
You can use and distribute this module under the same terms as Perl itself. See the
LICENSE file included in this distribution for complete details.