Magnec — Drupal

Drupal
Web Geliştirme

Modül geliştirmeden yük dengelemeye, migrasyondan güvenliğe, performans optimizasyonundan DevOps pipeline'ına — Drupal'ı her katmanda inşa ediyoruz.

Özel Modül Performans Güvenlik Migrasyon Yük Dengeleme API DevOps
200+
Drupal Projesi
50+
Özel Modül
15+
Yıl Deneyim
D6→11
Tüm Sürümler
98%
Memnuniyet
01
Backend & Özel Modül

Her İş Kuralı İçin
Özel Bir Modül

Drupal'ın hazır modülleri projenizin %80'ini karşılar. Geri kalan %20 — işte asıl değer yaratan özel geliştirme burada başlar.

Hook & Plugin API
Drupal'ın davranışını değiştirmek için doğru yol: hook sistemi ile müdahale, Plugin API ile yeni bileşen tanımları. Annotation-based ve tagged service yaklaşımları.
Entity & Field API
Özel içerik tipleri, ECK entegrasyonu, custom field widget ve formatter geliştirme. Entity query ile performanslı veri sorgulama.
Servis Katmanı & DI
Symfony Dependency Injection container ile test edilebilir, bakımı kolay servis mimarisi. services.yml ile bağımlılık tanımları, constructor injection ile temiz kod.
Queue & Batch API
Büyük veri işleme, uzun süren operasyonlar ve asenkron görevler için Queue Worker ve Batch API. Cron entegrasyonu ve hata toleransı.
Config & State API
Configuration Management Interface (CMI) ile ortamlar arası taşınabilir konfigürasyon. State API ile geçici sistem durumu takibi.
MagnecCustomService.php — Gerçek Dünya ÖrneğiPHP 8.3
#[AutowireService]
class MagnecCustomService {

  public function __construct(
    private readonly EntityTypeManagerInterface $etm,
    private readonly CacheBackendInterface $cache,
    private readonly QueueFactory $queue,
  ) {}

  public function processNodes(string $type): void {
    $cid = "magnec:proc:{$type}";
    if (!$data = $this->getCached($cid)) {
      $data = $this->loadFromDB($type);
      $this->cache->set($cid, $data, Cache::PERMANENT, ["node_type:{$type}"]);
    }
    $this->queue->get('magnec_processor')->createItem(['nodes' => $data]);
  }
}
"Yazdığımız her servis, PHPUnit testi ile birlikte gelir. Test edilmemiş kod, canlı sistemde sürpriz üretir."
PHPUnitPHPCSPHPStanComposerDrushXdebug
02
Performans & Optimizasyon

Yavaş Site,
Kaybedilen Müşteri

Google'ın sıralama algoritması ve kullanıcı davranışı aynı sonucu söylüyor: her saniye önemli. Drupal'ın tüm önbellekleme katmanlarını ustaca yönetiyoruz.

"Yalnızca çalışan değil — hızlı çalışan sistemler inşa ediyoruz. 3 saniyelik yükleme süresi, ziyaretçilerin %53'ünü kaybettiriyor."
CDN Layer
Cloudflare / AWS CF
Nginx Microcache
fastcgi_cache
Varnish HTTP Cache
VCL + Purge
Drupal Cache + BigPipe
Cache Tags / Contexts
Redis Object Cache
ChainedFast Backend
PHP OPcache + JIT
PHP 8.3 Tracing JIT
MariaDB InnoDB Tuning
Buffer Pool / Slow Query
TTFB (Time to First Byte)<200ms
Nginx cache + Redis kombinasyonu
PageSpeed Score95+/100
CSS/JS agregasyon + WebP + Lazy load
LCP (Largest Contentful Paint)<1.5s
BigPipe + Critical CSS + Preload
DB Query Optimizasyonu-80%
N+1 eliminasyonu + Entity Query cache
RedisVarnishBigPipeOPcache JITWebPHTTP/2Lazy LoadCDN
03
Güvenlik

Güvenlik Sonradan
Eklenemez

Drupal, güvenlik açısından en güvenilir CMS platformlarından biridir — ama yanlış yapılandırma ve bakımsız kod her sistemi açık hale getirir. Biz güvenliği baştan inşa ediyoruz.

"Drupal Security Team her hafta güvenlik açıklarını yayınlar. Bakımsız bir site, her hafta biraz daha savunmasız hale gelir."

Güvenlik Güncellemeleri

Drupal core, contrib modüller ve tema güncellemeleri proaktif izlenmesi ve zamanında uygulanması. CVE takibi ve yamalar.

SA-CORESA-CONTRIBCVE

Erişim Kontrolü & RBAC

Rol tabanlı izin sistemi, node_access API, custom Access Check ve field-level güvenlik. En az yetki prensibi uygulaması.

Permissionsnode_accessAccessResult

Güvenlik Denetimi

Drupal Security Checklist, otomatik zafiyet taraması, log analizi ve penetrasyon testi. OWASP Top 10'a karşı sistematik test.

OWASPPentestAudit

Koruduğumuz Tehditler

Her Drupal projesinde standart olarak uygulanan güvenlik önlemleri:

SQL Injection
Drupal Database API ile parametrik sorgular, hiçbir ham SQL yoktur.
Korunuyor — Database::query() / ->condition()
XSS (Cross-Site Scripting)
Twig auto-escape, Html::escape() ve Markup sınıfı ile tüm çıktılar güvende.
Korunuyor — Twig autoescaping aktif
CSRF Saldırıları
Drupal'ın form token sistemi ve CSRF token doğrulaması.
Korunuyor — FormBuilder token sistemi
Kaba Kuvvet (Brute Force)
Flood Control API, Fail2Ban ve login attempt limiting.
Korunuyor — Flood Control + Fail2Ban
Dosya Yükleme Tehditleri
MIME tipi doğrulama, uzantı filtreleme ve private dosya sistemi.
Korunuyor — File System + MIME validation
Ayrıcalık Yükseltme
Granüler RBAC sistemi, hook_node_access() ve custom Access Check ile katmanlı kontrol.
Korunuyor — Çok katmanlı RBAC
04
Göç & Migrasyon

Eski Sistemden
Drupal'a Güvenli Geçiş

Drupal 7'den 10/11'e, WordPress'ten Drupal'a, custom CMS'den Drupal'a — migrasyon projeleri veri kaybı olmadan, doğrulanmış şekilde gerçekleşiyor.

01
Kaynak Analizi
Mevcut veri modeli, içerik tipleri, kullanıcılar ve medya incelenerek migrasyon kapsamı çıkarılır.
02
Mapping & Tasarım
Kaynak alanlar ile Drupal hedef alanlar eşleştirilir. Process plugin'leri ile veri dönüşüm kuralları yazılır.
03
Kademeli Çalıştırma
drush migrate:import ile kademeli aktarım. Her aşamada doğrulama, hata kaydı ve rollback imkânı.
04
Doğrulama & Canlı
Kayıt sayısı, medya bütünlüğü ve ilişki doğrulama. İçerik sayımı 1:1 onaylandıktan sonra canlıya alım.
D7 → D11WordPress → DrupalMigrate APICustom SourceRollbackIncremental
05
Yük Dengeleme & Ölçeklendirme

Kampanya Gününde
Sistem Çökmez

Black Friday'de 10x trafik artışı, büyük etkinlik duyurularında anlık spike — doğru altyapı tasarımıyla Drupal her ölçekte çalışır.

CDN / Edge Cache
Cloudflare · AWS CloudFront
Global
Load Balancer
Nginx / HAProxy · Round-Robin
HA
↓↓
Web Nodes (N adet)
PHP-FPM + Nginx · Horizontal Scale
Scale-Out
Shared Redis Cluster
Session · Cache · Queue
Central
DB Primary + Replica
MariaDB · Read/Write Split
Replicated
Shared-Nothing Mimari
Her web node bağımsız çalışır. Session ve cache Redis'te, dosyalar NFS/S3'te tutulur. Yeni node ekleme dakikalar içinde.
Drupal için Özel Varnish VCL
Cache-Control header yönetimi, Purge modülü entegrasyonu ve X-Drupal-Cache-Tags ile hassas önbellek geçersizleştirme.
Auto-Scaling Hazırlığı
Hetzner, AWS ve Hetzner Cloud üzerinde load-based auto-scaling. Trafik spike'larında otomatik kapasite artışı.
Veritabanı Okuma Ayrımı
Drupal'ın replica target desteği ile yazma işlemleri primary'ye, okuma sorguları replica'ya yönlendirilir.
06
API & Entegrasyon

Drupal Merkez,
Her Sistem Bağlı

Headless CMS, üçüncü taraf entegrasyonlar, mobil uygulama backend'i veya microservice mimarisi — Drupal'ı dijital ekosistemin merkezi yapıyoruz.

JSON:API
GET /jsonapi/node/article
Drupal core JSON:API ile sıfır konfigürasyonda REST endpoint. Filtering, sorting, include ve sparse fieldsets.
Custom REST
POST /api/v1/magnec
RestResource plugin ile özel business logic. Authentication, normalizer ve response format kontrolü.
WebSocket
ws://api.site.com/chat
Node.js + Drupal entegrasyonu ile gerçek zamanlı messaging. Socket.io ve Drupal session bridge.
Webhook
POST /webhook/receive
Dışarıdan gelen webhook'ları güvenli şekilde karşılama, doğrulama ve Queue'ya yönlendirme.
OAuth2
POST /oauth/token
Simple OAuth modülü ile Authorization Code, Client Credentials ve PKCE flow desteği.
3rd Party
→ ERP / CRM / Payment
Logo, SAP, Salesforce, PayTR, İyzico ve diğer sistemlerle çift yönlü entegrasyon. Retry ve hata toleransı.
07
DevOps & CI/CD

Kod Yazıldıktan Sonra
İş Bitmez

Deployment, test, izleme ve geri alma — her aşama otomatikleştirilmiş ve güvenli. İnsan hatasına değil, pipeline'a güveniyoruz.

Commit
Git flow, code review, branch stratejisi
git push
Test
PHPUnit, Behat, PHPCS otomatik koşumu
phpunit --testsuite
Build
Composer install, CSS/JS derleme, Docker image
composer install
Staging
Smoke test, content sync, UAT onayı
drush updb --yes
Deploy
Zero-downtime blue/green deployment
./deploy.sh --prod
Monitor
Uptime, error log, performance izleme
alert → Slack/SMS
DockerGitHub ActionsGitLab CIDrushComposerHetznerISPConfigNginxZero-Downtime
08
Nasıl Çalışıyoruz

Bir Drupal Projesinin
Tam Yaşam Döngüsü

Fikir aşamasından production'a, oradan süregelen büyümeye — her adım tanımlanmış, her teslim doğrulanmış.

01
Keşif ve Teknik Analiz

İş gereksinimleri, mevcut sistem analizi, Drupal modül kararları ve proje kapsamı belirlenir. Hangi Drupal API'lerinin, hangi contrib modüllerin, hangi özel geliştirmelerin gerektiğini netleştiriyoruz.

Teknik ŞartnameModül ListesiZaman Planı
02
Drupal Kurulum ve Altyapı

Composer tabanlı proje kurulumu, geliştirme ortamı (Docker/DDEV), Git repo, CI pipeline ve Hetzner/cloud sunucu yapılandırması. Staging ortamı hazır.

composer.jsonDocker ComposeCI Pipeline
03
İçerik Modeli ve Veri Mimarisi

Content type'lar, taxonomy, custom entity'ler, field yapısı ve ilişkiler tanımlanır. Doğru veri mimarisi, gelecekteki her geliştirmenin temelidir.

Content ModelEntity SchemaTaxonomy
04
Özel Modül Geliştirme

Sprint bazlı agile geliştirme. Her sprint sonunda çalışan özellik. Hook'lar, plugin'ler, servisler, formlar ve API endpoint'leri — test edilmiş ve dokümante edilmiş.

Custom ModulesPHPUnit TestsSprint Demo
05
Entegrasyon ve API Bağlantıları

Ödeme sistemleri, ERP/CRM, marketplace API'leri ve diğer sistemlerle entegrasyon. Her entegrasyon için hata toleransı, retry mekanizması ve monitoring.

API ContractsWebhook HandlerQueue Worker
06
Performans ve Güvenlik Sertleştirme

Cache katmanları devreye alınır, güvenlik denetimi yapılır, load test çalıştırılır. Core Web Vitals hedeflerine ulaşıldığından emin olunur.

Load TestSecurity AuditPageSpeed 95+
07
Canlıya Alım ve Migrasyon

Zero-downtime deployment, veri migrasyonu ve DNS geçişi. İlk 48 saat yoğun izleme. Geri alma planı hazır ve test edilmiş.

Blue/Green DeployMigrate:importRollback Plan
08
Süregelen Bakım ve Büyüme

Güvenlik güncellemeleri, performans izleme, yeni özellik geliştirme ve büyüme için teknik danışmanlık. Proje bitmez — evrilir.

7/24 DestekGüvenlik GüncellemeleriRoadmap
09
Neden Magnec

Drupal Geliştirmede
Magnec Farkı

"Drupal'ı kullanan değil,
derinlemesine bilen
bir ekip."

D6'dan D11'e her sürümü deneyimledik. Core API değişimlerini, major sürüm geçişlerini ve enterprise projelerin getirdiği her zorlukla bizzat karşılaştık. Bu birikim — dokümanda değil, kodumuzda görünür.

200+
Tamamlanan proje
50+
Özel modül
15+
Yıl Drupal
0
Sürüm kırılması
Tek Çatı: Tasarım + Geliştirme
Frontend ve backend aynı ekipten çıkar. Handoff kaybı yok, vizyon tutarlı, teslim hızlı.
Güvenlik Kültürü
Her satır kod güvenlik perspektifiyle yazılır. Drupal Security Advisory takibi ve proaktif yama uygulaması.
Performans Farkındalığı
Cache tag, entity query ve render pipeline optimizasyonu. Yavaş sistem değil, ölçeklenebilir sistem.
Sürdürülebilir Kod
PHPCS standartları, dokümantasyon ve PHPUnit testleri. Teslim ettiğimiz modülü başka geliştirici de okuyabilir.
Altyapı Sahipliği
Geliştirme bitince ortada bırakmıyoruz. Hosting, bakım ve destek için de yanınızdayız.

Drupal Projenizi
Konuşalım

Yeni bir Drupal projesi, mevcut sitenizin yenilenmesi, performans sorunu veya güvenlik denetimi — ne aşamada olursa olsun teknik görüşme için ulaşın.

Teknik Görüşme Başlat →
İletişim
E-Posta
hello@magnec.com
Telefon
(0850) 303-32 25
Web
magnec.com