פיתוח Magento / Adobe Commerce
אנו מציעים שירותי פיתוח מקצועיים ב-Magento 2. בואו נהיה כנים: כאשר פלטפורמות SaaS לא מצליחות להתמודד עם עומס, התאמות אישיות נתקלות במגבלות API. בשלב זה, הגיע הזמן לשקול Magento. אנו מתכננים ומשיקים חנויות ארגוניות על פלטפורמה זו. אנו פותרים אתגרים במורכבות גבוהה: ריבוי אתרים מהתקנה אחת, אלפי מאפיינים ותהליכים עסקיים מותאמים אישית. במשך למעלה מ-7 שנים סיפקנו יותר מ-20 פרויקטים — מחנויות קטנות ועד שווקים גדולים עם מיליוני מוצרים.
Magento 2 מעניק לך שליטה מלאה על הקוד והארכיטקטורה. אינך מוגבל על ידי תבניות או תוספים של צד שלישי. זה חשוב במיוחד עבור פרויקטים עם דרישות עסקיות ייחודיות, כגון מערכות הנחות מורכבות או אינטגרציה עם APIs לא סטנדרטיים.
Magento Open Source לעומת Adobe Commerce
הבחירה תלויה בהיקף, במודולים הנדרשים ובתקציב. Open Source אינו כרוך בדמי רישוי, מה שיכול לחסוך עד $22,000 בשנה בהשוואה ל-Adobe Commerce. לשתי הפלטפורמות יש חוזקות, ואנו נעזור לך לבחור את הגרסה האופטימלית. המומחיות שלנו בפיתוח Adobe Commerce כוללת אינטגרציות B2B וענן.
| תכונה | Magento Open Source | Adobe Commerce |
|---|---|---|
| רישיון | MIT (חינם) | מסחרי |
| אירוח | אירוח עצמי | אירוח עצמי או ענן |
| מודול B2B | לא | מובנה |
| Page Builder | בסיסי | מתקדם |
| תוכן מדורג | לא | כן |
| פלחי לקוחות | לא | כן |
| חיפוש חי | לא | כן (SaaS) |
| המלצות מוצרים | לא | כן (מבוסס AI) |
| Adobe Experience Cloud | לא | אינטגרציה |
עבור רוב הפרויקטים, Open Source מספק את כל הדרוש. Adobe Commerce מוצדק לתרחישי B2B עם תמחור מורכב, התאמה אישית או אינטגרציה עם Adobe Analytics.
היתרונות בשדרוג ל-Magento 2
Magento 1 הפסיק לקבל עדכונים לפני מספר שנים. Magento 2 נכתב מחדש לחלוטין: משתמש ב-PHP 8, Dependency Injection, מערכת תוספים (Plugin System) ו-GraphQL API גמיש. הביצועים גבוהים משמעותית — דפים במטמון נטענים עד פי 10 מהר יותר הודות ל-Varnish ו-Redis. הארכיטקטורה המודולרית מאפשרת הוספת כל פונקציונליות ללא התערבות בליבה.
גרסאות רכיבים מומלצות
| רכיב | גרסה |
|---|---|
| PHP | 8.1–8.3 (אופטימלי 8.2) |
| MySQL/MariaDB | 8.0 / 10.6 |
| Elasticsearch/OpenSearch | 8.x / 2.x |
| Redis | 7.x |
| RabbitMQ | 3.11+ |
| Nginx/Apache | 1.24+ / 2.4 |
| Varnish | 7.x (אופציונלי) |
| CPU (פיתוח/ייצור) | 4 / 8 ליבות |
| RAM (פיתוח/ייצור) | 8 / 16 GB |
דרישות מערכת מלאות
Magento 2 דורש PHP 8.1–8.3, MySQL 8.0 או MariaDB 10.6, Elasticsearch/OpenSearch, Redis, RabbitMQ לתורים. מינימום 4 CPU ו-8 GB RAM לפיתוח, לייצור 8 CPU ו-16 GB RAM.יישום טכני
ארכיטקטורת מערכת מודולרית
Magento בנוי על מודולים. כל מודול נמצא ב-app/code/Vendor/Module/ ומכיל:
-
Block/— מחלקות PHP להצגה (מיושן) -
Controller/— מטפלים בבקשות HTTP -
etc/— קבצי תצורה:module.xml,di.xml,routes.xml,events.xml -
Model/— לוגיקה עסקית -
Plugin/— מיירטים (before/after/around) -
Observer/— הרשמה לאירועים -
Setup/— סקריפטי התקנה ותיקוני נתונים -
view/frontend/— XML פריסה ותבניות phtml
Dependency Injection ותוספים
במקום new — הזרקה דרך קונסטרוקטור. ב-di.xml מגדירים העדפות ותוספים:
<preference for="Magento\Catalog\Model\Product" type="MyCompany\Catalog\Model\Product"/>
<type name="Magento\Catalog\Model\ResourceModel\Product\Collection">
<plugin name="mycompany_catalog_collection_plugin" type="MyCompany\Catalog\Plugin\ProductCollectionPlugin" sortOrder="10"/>
</type>דוגמה לתוסף עם מתודת after:
namespace MyCompany\Catalog\Plugin;
use Magento\Catalog\Model\ResourceModel\Product\Collection;
class ProductCollectionPlugin
{
public function afterLoad(Collection $subject, Collection $result): Collection
{
foreach ($result as $product) {
$margin = ($product->getPrice() - $product->getCost()) / $product->getPrice() * 100;
$product->setData('margin_percent', round($margin, 2));
}
return $result;
}
} מאפיין מוצר מותאם אישית
תיקון נתונים מוסיף את המאפיין "זמן אספקה (ימים)" ללא התערבות בליבה:
// Setup/Patch/Data/AddProductAttributes.php
namespace MyCompany\Catalog\Setup\Patch\Data;
use Magento\Framework\Setup\Patch\DataPatchInterface;
use Magento\Catalog\Setup\CategorySetupFactory;
class AddProductAttributes implements DataPatchInterface
{
public function __construct(
private readonly CategorySetupFactory $categorySetupFactory,
private readonly \Magento\Framework\Setup\ModuleDataSetupInterface $moduleDataSetup,
) {}
public function apply(): void
{
$setup = $this->categorySetupFactory->create(['setup' => $this->moduleDataSetup]);
$setup->addAttribute('catalog_product', 'delivery_days', [
'type' => 'int',
'label' => 'Срок доставки (дней)',
'input' => 'text',
'required' => false,
'visible' => true,
'user_defined' => true,
'searchable' => false,
'filterable' => false,
'comparable' => false,
'visible_on_front' => true,
'used_in_product_listing' => true,
'unique' => false,
'apply_to' => '',
]);
$setup->addAttributeToSet('catalog_product', 'Default', 'General', 'delivery_days');
}
public static function getDependencies(): array
{
return [];
}
public function getAliases(): array
{
return [];
}
} Magento GraphQL API
עבור frontend ללא ראש (headless), השתמשו ב-GraphQL המובנה. הצוות שלנו מיישם Magento GraphQL ו-Magento PWA לארכיטקטורת headless. ארכיטקטורת Magento headless היא המומחיות שלנו.
query GetProduct($urlKey: String!) {
products(filter: { url_key: { eq: $urlKey } }) {
items {
id
sku
name
price_range {
minimum_price {
regular_price {
value
currency
}
final_price {
value
currency
}
discount {
amount_off
percent_off
}
}
}
... on ConfigurableProduct {
configurable_options {
label
values {
label
uid
}
}
variants {
attributes {
label
uid
}
product {
sku
stock_status
price_range {
minimum_price {
final_price {
value
}
}
}
}
}
}
}
}
} מחסנית פיתוח טיפוסית
composer create-project --repository-url=https://repo.magento.com/ \
magento/project-community-edition=2.4.7 my-magento
bin/magento setup:install \
--db-host=localhost \
--db-name=magento \
--db-user=magento \
--db-password=secret \
--base-url=https://magento.local/ \
--admin-firstname=Admin \
--admin-lastname=User \
[email protected] \
--admin-user=admin \
--admin-password=Admin123! \
--language=ru_RU \
--currency=RUB \
--timezone=Europe/Moscow \
--use-rewrites=1 \
--search-engine=opensearch \
--opensearch-host=localhost \
--opensearch-port=9200
# После изменений
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento setup:static-content:deploy ru_RU en_US -f
bin/magento cache:flush
שלב אחר שלב: יצירת מודול מותאם אישית
- צרו תיקייה
<preference for="Magento\Catalog\Model\Product" type="MyCompany\Catalog\Model\Product"/> <type name="Magento\Catalog\Model\ResourceModel\Product\Collection"> <plugin name="mycompany_catalog_collection_plugin" type="MyCompany\Catalog\Plugin\ProductCollectionPlugin" sortOrder="10"/> </type>וקובץnamespace MyCompany\Catalog\Plugin; use Magento\Catalog\Model\ResourceModel\Product\Collection; class ProductCollectionPlugin { public function afterLoad(Collection $subject, Collection $result): Collection { foreach ($result as $product) { $margin = ($product->getPrice() - $product->getCost()) / $product->getPrice() * 100; $product->setData('margin_percent', round($margin, 2)); } return $result; } }. - הצהירו תלויות ב-
// Setup/Patch/Data/AddProductAttributes.php namespace MyCompany\Catalog\Setup\Patch\Data; use Magento\Framework\Setup\Patch\DataPatchInterface; use Magento\Catalog\Setup\CategorySetupFactory; class AddProductAttributes implements DataPatchInterface { public function __construct( private readonly CategorySetupFactory $categorySetupFactory, private readonly \Magento\Framework\Setup\ModuleDataSetupInterface $moduleDataSetup, ) {} public function apply(): void { $setup = $this->categorySetupFactory->create(['setup' => $this->moduleDataSetup]); $setup->addAttribute('catalog_product', 'delivery_days', [ 'type' => 'int', 'label' => 'Срок доставки (дней)', 'input' => 'text', 'required' => false, 'visible' => true, 'user_defined' => true, 'searchable' => false, 'filterable' => false, 'comparable' => false, 'visible_on_front' => true, 'used_in_product_listing' => true, 'unique' => false, 'apply_to' => '', ]); $setup->addAttributeToSet('catalog_product', 'Default', 'General', 'delivery_days'); } public static function getDependencies(): array { return []; } public function getAliases(): array { return []; } }וב-query GetProduct($urlKey: String!) { products(filter: { url_key: { eq: $urlKey } }) { items { id sku name price_range { minimum_price { regular_price { value currency } final_price { value currency } discount { amount_off percent_off } } } ... on ConfigurableProduct { configurable_options { label values { label uid } } variants { attributes { label uid } product { sku stock_status price_range { minimum_price { final_price { value } } } } } } } } }. - הגדירו נתיבים ב-
composer create-project --repository-url=https://repo.magento.com/ \ magento/project-community-edition=2.4.7 my-magento bin/magento setup:install \ --db-host=localhost \ --db-name=magento \ --db-user=magento \ --db-password=secret \ --base-url=https://magento.local/ \ --admin-firstname=Admin \ --admin-lastname=User \ [email protected] \ --admin-user=admin \ --admin-password=Admin123! \ --language=ru_RU \ --currency=RUB \ --timezone=Europe/Moscow \ --use-rewrites=1 \ --search-engine=opensearch \ --opensearch-host=localhost \ --opensearch-port=9200 # После изменений bin/magento setup:upgrade bin/magento setup:di:compile bin/magento setup:static-content:deploy ru_RU en_US -f bin/magento cache:flush. - יישמו
app/code/Vendor/Module/etc/,module.xml,composer.jsonלפי הצורך. - הוסיפו
registration.phpלתוספים או העדפות. - הריצו
routes.xmlלהתקנה.
אנו מפתחים מודולי Magento מותאמים אישית לצרכים עסקיים ספציפיים. לצוות שלנו ניסיון עמוק עם Magento 2 Open Source.
מה כלול בעבודה
כאשר אתם מזמינים פרויקט Magento סוהר, אנו מספקים:
- תכנון ארכיטקטוני: בחירת מודולים, הגדרת תשתית, תצורת Varnish/Redis/Elasticsearch
- פיתוח מודולים והרחבות מותאמים אישית עם תיעוד README מלא והערות קוד
- אינטגרציה עם מערכות חיצוניות: ERP, CRM, 1C, שווקים — כולל אינטגרציית Magento 1C לשוק הרוסי
- תצורת ריבוי אתרים ותצוגות חנות
- אופטימיזציית ביצועים: מטמון, CDN, מיניפיקציה — אנו מתמקדים באופטימיזציית ביצועי Magento, הגדרת Magento Varnish ותצורת Magento Redis
- פריסה עם CI/CD (GitLab/GitHub Actions)
- תמיכה טכנית לאחר ההשקה (עם תקופת אחריות של 30 יום)
- תיעוד, גישה למאגרי Git והדרכת מנהלים
לוחות זמנים ותמחור
פרויקטי פיתוח Magento שלנו נעים בדרך כלל בין $15,000 ל-$200,000 בהתאם למורכבות. בחירה ב-Open Source יכולה לחסוך עד $22,000 בשנה בדמי רישוי. השקת חנות על Open Source עם תמה מוכנה ומערכת מודולים סטנדרטית — 4 עד 8 שבועות. פיתוח מותאם אישית עם מספר מודולים ואינטגרציית ERP — 3 עד 6 חודשים. Adobe Commerce עם מודול B2B, התאמה אישית ואינטגרציות — מחצי שנה. לוחות זמנים מדויקים מוערכים לאחר בדיקת הדרישות שלכם.
קבלו ייעוץ מהנדס לפרויקט שלכם — נעריך את ההיקף ונציע פתרון ארכיטקטוני. הניסיון שלנו: למעלה מ-7 שנות פיתוח Magento, יותר מ-20 חנויות שהושקו. צרו קשר כדי לדון בצרכים שלכם.
לפי Adobe, למעלה מ-250,000 חנויות פועלות על Magento. Magento 2 מהיר עד פי 10 מ-Magento 1 עם מטמון Varnish.







