2013-06-28 4 views
0

Вопрос говорит 1000 слов, но то, что я в основном хочу сделать, это построить плагин для локомотивов CMS, и я застрял в основах. Что не так хорошо.Как установить базовый плагин CMS для локомотива

Я следовал инструкциям этого драгоценного камня, потому что это только часть ссылки я мог бы найти: https://github.com/colibri-software/locomotive_plugins

Я добавил locomotive_plugins к моему Gemfile. Я сделал файл с именем locomotive_test_plugin.rb и поместил его в папку lib (я нашел это логическое место, чтобы поместить этот файл, потому что он не говорит четко в инструкциях по драгоценному камню). Я добавил папку lib в config.autoload_paths в application.rb. И я отчасти надеялся, что она будет работать

locomotive_test_plugin.rb выглядит

class LocomotiveTestPlugin 
    include Locomotive::Plugin 

    def initialize_plugin 
    # Custom initialization code 
    end 

    def to_liquid 
    {:test => "test"} 
    end 
end 

LocomotivePlugins::register_plugin(LocomotiveTestPlugin, "test_plugin") 

Оказывается, это не так. Я также сделал обычай gem под названием locomotive_test_plugin и установил камень и добавил, что драгоценный камень в Gemfile как:

source 'https://rubygems.org' 

gem 'locomotive_cms', '~> 2.0.1', :require => 'locomotive/engine' 
gem 'locomotive_plugins' 

group :assets do 
    gem 'compass-rails', '~> 1.0.2' 
    gem 'sass-rails',  '~> 3.2.4' 
    gem 'coffee-rails', '~> 3.2.2' 
    gem 'uglifier',  '~> 1.2.4' 

    # If you run your engine on **Linux,** you also have to add the following gem 
    # See https://github.com/sstephenson/execjs#readme for more supported runtimes 
    # gem 'therubyracer', :platforms => :ruby 
end 

group :development do 
    gem 'unicorn' 
end 

group(:locomotive_plugins) do 
    gem 'locomotive_test_plugin' 
end 

Согласно камню теперь я могу изменить любую страницу в CMS и добавить следующий кусок жидкого кода:

{{ plugins.test_plugin.test }} 

И я ожидаю, что выход будет «проверять», но вместо этого ничего не показывает. Он также не отображает никаких ошибок, таких как «плагин не найден» или что-то подобное.

Я перезапустил локальный сервер, если кто-то предложит это.

Но где в процессе я поступил не так - может кто-нибудь просветить меня по этой проблеме.

ответ

2

Во-первых, линия

LocomotivePlugins::register_plugin(LocomotiveTestPlugin, "test_plugin") 

не требуется. Это из старой версии плагинов. Что касается вашей проблемы, добавили ли вы плагин на свой сайт? Вам нужно перейти на страницу «Настройки», там есть сложенный раздел «Плагины», под которым должна быть запись с флажком. Убедитесь, что этот флажок установлен.

Если запись не отображается, плагин не загружается должным образом. Убедитесь, что ваш код загружается при запуске вашего сервера (добавьте строку печати вверху).