Заготовка для компонентов MODX - modExtra

Не все знают, что разработчики MODX Revo предусмотрели заготовку для быстрого создания компонентов под названием modExtra.

Первым делом, ее нужно склонировать из репозитория на Github.
git clone http://github.com/splittingred/modExtra.git
После этого у вас появится директория modExtra, содержащая все необходимые файлы и структуру каталогов для быстрой разработки своего компонента.

Нужно только переименовать все файлы в соответствии с именем вашего расширения, и заменить внутри этих файлов все modExtra и modextra на ваш componentName и componentname.

Для этого я написал небольшой консольный скрипт на bash rename_it.sh.
#!/bin/bash

# Переименуйте тут, как вам угодно
repl1=yourName
repl2=yourname

# А вот тут ничего менять не нужно
find1=modExtra
find2=modextra
path=./modExtra

cd ..
for i in {1..10}
do
    find $path -name \*$find2\* -a ! -name rename_it | xargs perl -e 'for(@ARGV) { $a=$_; s/'$find2'/'$repl2'/g; rename $a,$_; print "$_\n" }'
done

for i in `egrep -r $find1 $path/_build $path/core $path/assets | grep -v svn | cut -d ":" -f1`
do
    reg="s/$find1/$repl1/g"
    sed -e $reg $i > ${i}.bak
    mv ${i}.bak $i

    reg="s/$find2/$repl2/g"
    sed -e $reg $i > ${i}.bak
    mv ${i}.bak $i

    echo $i
done

mv $find1 $repl1

Требуется perl. Запускать снаружи директории modExtra.

Проверено на Ubuntu 10.04 неоднократно.

P.S. Копирайты Shaun McCormick я не убираю — ведь код modExtra написал он. А вот в своих сниппетах и классах советую проставить ваши реквизиты.

Следующая заметка
Компонент управления рекламой BannerX
Наверх, в раздел
Расширения MODX


Комментарии ()

  1. kochurkov 10 сентября 2012, 00:13 # 0
    Привет. А можно как то подробнее рассказать для чего это все нужно?
    Звучит громко — а вот что с этим всем делать — непонятно.
    Хотел бы понять как с этим работать пошагово и, самое важное, для чего это нужно?
    1. Иван Брежнев 10 сентября 2012, 00:44 # 0
      Вы знаете компонент miniShop? Если да, то я так подозреваю что Василий его писал именно по этой заготовке
      1. Василий Наумкин 10 сентября 2012, 06:49 # 0
        Все, все компоненты писал по жтой заготовке.

        Очень удобно.
        1. kochurkov 10 сентября 2012, 13:54 # 0
          Спасибо. =)
          С каждым днем поражаюсь мощности и гибкости modX
          1. Василий Наумкин 10 сентября 2012, 13:56 # 0
            Я уже давно и плотно на нем работаю — и точно также регулярно поражаюсь.
        2. Василий Наумкин 10 сентября 2012, 06:50 # 0
          Чтобы упростить вот это — habrahabr.ru/post/126635/
        3. Сергей Лелеко 30 ноября 2012, 00:18 # 0
          А каким образом можно натравить modExtra на созданную мной схему базы, состоящую из двух таблиц? Просто же подминить файл со схемой не достаточно? Нужно и классы менять/переписывать?
          1. Алексей 12 декабря 2013, 13:34 # 0
            Как при установке своего пакета предлагать загружать pdoTools?
            Добавление новых комментариев отключено.