Pull to refresh

Comments 19

Рад, что вы получили инвайт, т.к. статья мне очень понравилась. Мне бы было интересно почитать о «Обзор Magento пряники и грабли» и «Модели в Magento. Добавляем свои сущности и атрибуты».

Сам сейчас делаю наброски о Dataflow, но из-за загруженности работой (и немножко ленью), написание статьи медленно продвигается.
Было бы интересно почитать про Модели в «Magento. Добавляем свои сущности и атрибуты»
Отличная статья, но сам бы не решился проделывать то же самое, слишком уж непроста magento да и не программист я. Хотя у нас рабочий проект на ней, чему безмерно рады. Вы пишете модули на заказ / другие доработки делаете?
Спасибо. Я работаю над магазином, занимаюсь разработкой, сопровождением и т.п. — всё в рамках проекта нашей компании. А про работу «на заказ» подумываю, но пока на это времени нет (если вы об этом). Вообще спецов по Magento становится много, и если вам нужна помощь, то на официальном сайте можно дать объявление.
Рабочий проект — это интересно. Если есть вопросы, можете писать в личную почту, постараюсь ответить. Потом можно будет с народом поделится. Я за обмен опытом, ведь ради этого и есть Хабр (?)
Спасибо за пост. Как раз изучаю magento. На русском осваивать вдвойне приятнее.
Учитывая высокий порог входа Magento, статья неплохая.

Но вот только кто вас надоумил хранить настройки (открытый и закрытый ключи рекаптчи) в самом хелпере? Это же напрочь убивает переносимость модуля.

Для таких вещей как раз и придуман файл конфигурации модуля config.xml, который вы упоминали в статье. Для хранения ключей туда нужно было добавить примерно следующее:

<config>
  ...
  <default>
    <recaptcha>
      <keys>
        <public_key>public-key-here</public_key>
        <private_key>private-key-here</private_key>
      </keys>
    </recaptcha>
  </default>
  ...
</config>


Получать значения параметров можно таким образом:
Mage::getStoreConfig('recaptcha/keys/public_key')


Но эти самые ключи еще нужно задавать. Править вручную какие-то ни было файлы конфигурации противоречит идеологии движка, потому будем использовать админ-панель. Для описания формы конфигурации используется файл etc/system.xml в папке написанного модуля:

<config>
  <sections>
    <recaptcha>
      <label>ReCapthcha</label>
      <tab>service</tab>
      <frontend_type>text</frontend_type>
      <sort_order>150</sort_order>
      <show_in_default>1</show_in_default>
      <show_in_website>1</show_in_website>
      <show_in_store>1</show_in_store>
      <groups>
         <keys>
          <label>Keys</label>
          <frontend_type>text</frontend_type>
          <sort_order>1</sort_order>
          <show_in_default>1</show_in_default>
          <show_in_website>1</show_in_website>
          <show_in_store>1</show_in_store>
          <fields>
            <public_key>
              <label>Public key</label>
              <sort_order>1</sort_order>
              <show_in_default>1</show_in_default>
              <show_in_website>1</show_in_website>
              <show_in_store>1</show_in_store>
            </public_key>
            <private_key>
              <label>Private key</label>
              <sort_order>2</sort_order>
              <show_in_default>1</show_in_default>
              <show_in_website>1</show_in_website>
              <show_in_store>1</show_in_store>
            </private_key>
          </fields>
        </keys>
      </groups>
    </recaptcha>
  </sections>
</config>


Этим кодом мы описываем секцию в конфигурации системы, в которой и будет форма для правки наших параметров.
Сама система конфигурации Magento достойна нескольких статей, потому в этом примере многое заведомо опущено.
Я с вами полностью согласен и поступаю точно так же, вынося настройки в админку. Но в одной статье обо всём не рассказать, и я решил этот момент убрать (и некоторые другие тоже). Статья и без того получилась довольно большая на мой взгляд, что плохо влияет на восприятие читателем.
Примеры упрощены до предельного минимума, чтобы можно было создать работающий модуль и далее совершенствовать его по своему усмотрению.
Спасибо вам за приведенный пример. По комментариям к статье мне будет легче выбрать о чем написать в следующий раз.
Очень познавательно, спасибо.
Давно интересовался этим движком, но всё никак руки не доходили взяться за него.
Крайне была бы любопытна статья на тему «События и слушатели в Magento».
Напишите, пожалуйста, про «Обзор Magento пряники и грабли»
Да, актуально. Сейчас как раз надо новый блок на все страницы добавить.
Тёпнуца сколько проблем для небольшого расширения функционала…

Напишите плиз (или дайте ссылку на...) человеческий рассказ про процесс импорта товаров из (в общем-то любого) источника данных? Язык не имеет значения…
Вот Wiki-cтраница про импорт, ну и поиск вам в помощь
А вообще, импорт продуктов — это одна из граблей, про которые я собираюсь рассказать в обзоре.
require_once('recaptcha/recaptchalib.php');
от такого надо избавляться… при включенной Compile опции поломается :)

Выносите в lib в соответствии с конвенцией имен Zend :) Или может вы это уже знали?)

ps требуется помощь в layouts Magento
ох, давно это было!.. компания уже успела разориться, с работы выпинули, и с PHP с тех пор не работал :) Собственно поэтому и не появилось второй статьи про Magento. Спасибо за совет, не помню, скорее всего не знал тогда про Compile опции. А про layouts может чего и вспомню, пишите в личную почту, чем смогу помогу.
Е если в форму обзоров надо добавить каптчу, это куда писать?
Чтобы найти как выводится форма, то нужно смотреть конфигурацию Layout, какой блок за это отвечает. Далее смотрите какой контроллер обрабатывает форму обзоров, наследуйте свой контроллер от него и добавляйте новую логику. Как-то так… подробности уже не помню.
Sign up to leave a comment.

Articles