Блог

  • Замена названия главной страницы магазина в хлебных крошках

    Хлебные крошки - без сомнения очень удобный функционал в интернет-магазине. Но стандартное отображение первой - "Главная страница" смотрится некрасиво.

    Поменяем!

    • 1. Копируем файл из app/code/core/Mage/Cms/Block/Page.php в app/code/local/Mage/Cms/Block/Page.php
    • 2. Копируем файл из app/code/core/Mage/Catalog/Block/Breadcrumbs.php в app/code/local/Mage/Catalog/Block/Breadcrumbs.php
    • 3. Находим функцию, где формируются крошки ($breadcrumbs->addCrumb('home')...), и меняем значение 'label' в массиве на Mage::getStoreConfig('general/store_information/name')

    Готово


    Читать далее...

  • Ссылки на предыдущий и следующий товары

    В одном из новых проектов появилась задача сделать ссылки на предыдущий с следующий товары в категории. Конечно, в сети гуляет несколько подобных решений, но все они не учитывают того факта что на магазине могут быть включены flat_tables. Такое пренебрежение ведет к ошибкам, возникающим из-за применения недопустимых механизмов доступа к части информации о категориях и продуктах.

    Готовый код, позволяющий получать url`ы к ближайшим товарам, учитывающий flat_tables:

    Инициализация:

      app/etc/modules/Mygento_Prevnext.xml  
    > Читать далее...

  • URLs for next and previous products

    We had a task to create references on the previous and the next items in a category. Of course, there are several similar solutions, but all of them don't consider the fact that flat_tables can be turned on. This neglect leads to errors, which appear because of the application of impossible mechanism of access to the part of information on categories and products.

    Ready code, which allows to get urls to the nearest goods, considers...
    Читать далее...

  • Список глобальных переменных Mage:register

    Всегда удобно иметь перед глазами список всех стандартных переменных реестра Magento. В предыдущей статье я писал про то как самостоятельно вывести содержимое реестра. Если по каким либо причинам это сделать затруднительно, то вот полный список всех переменных:

    1. Registry['original_include_path'] = (string) .:/usr/share/php:/usr/share/pear
    2. Registry['application_params'] = (array) Array
    3. Registry['_singleton/core/resource'] = (object) Mage_Core_Model_Resource
    4. Registry['_resource_singleton/core/resource'] = (object) Mage_Core_Model_Resource_Resource
    5. Registry['_helper/core'] = (object) Mage_Core_Helper_Data
    6. Registry['_singleton/core/resource_setup_query_modifier'] = (object) Mage_Core_Model_Resource_Setup_Query_Modifier
    7. Registry['_resource_singleton/core/website'] = (object) Mage_Core_Model_Resource_Website
    8. Registry['_resource_singleton/core/store_group']...
      Читать далее...

    9. Как получить ссылку для добавления товара в корзину

      В ходе разработки всегда наступает момент, когда нужно сделать неочевидное задание клиента.

      Очередное - ajax добавление товара с кастом редиректом. Для начала нужно получить ссылку для добавления товара.

      Существует несколько функций для получения ссылок для POST- запросов:

      • 1. $this->getAddToCartUrl($_product, array('_secure' => true))
      • 2. Mage::helper('checkout/cart')->getAddUrl($_product)
      • 3. Mage::getUrl('checkout/cart/add', array('product' => $_product->getId()))

      Как показала практика - лучше всего в ajax-запросах работает последний вариант. Только не забывайте учитывать скорость работы вашего веб-сервера (ставьте большой таймаут).


      Читать далее...

    10. How to add breadcrumbs' to any page

      Magento doesn't have default ''breadcrumbs'' on a cart or contact page. But there is a way to make the navigation for these pages more convenient.

      In general, using the following way you can create any structure of bread crumbs on these pages. We will add ''crumds'' through xml.

      So, let's take the cart page as an example, we need to update its layout.

      > Copy from base theme or open:
      Читать далее...