Yedekalma — Yedek Alma, Geri Yükleme ve Taşıma

Description

Yedekalma, WordPress yedekleme işini tek ekranda toplayan ücretsiz bir yedek alma eklentisidir. Tek tıkla sitenizin tam yedeğini alır — dosyalar ve veritabanı — ve aynı ekrandan geri yükler. Ayrıca WordPress site taşıma (yeni sunucu veya yeni alan adı) yapar ve virüs / zararlı yazılım taraması ile bulaşmış dosyaları temizler. Yedekleme, geri yükleme, taşıma ve güvenlik tek eklentide toplandığı için her iş için ayrı bir araca ihtiyacınız olmaz.

Her şey kendi sunucunuzda çalışır. Hesap, kayıt veya API anahtarı gerekmez: kurun, etkinleştirin, Yedek Al‘a basın. Yedek dosyalarınız kendi hostingunuzda kalır ve dilediğiniz zaman ZIP olarak indirebilirsiniz.

Neler yapar?

  • Site yedekleme — tema, eklenti ve yüklemeler dahil tüm dosyalar.
  • Veritabanı yedekleme — gzip sıkıştırmalı MySQL dökümü (.sql.gz), büyük siteler için uygun.
  • Paylaşımlı hostingde çalışırexec() kapalı ve PHP limitleri dar olsa bile parçalı (zaman dilimli) çalışıp yedeği tamamlar.
  • Artımlı yedekleme — dosyaların gerçek değişiklik zamanına bakar, değişen dosya asla atlanmaz.
  • Tek tıkla geri yükleme — veritabanı, eklentiler, temalar ve yüklemeler; ya da yalnızca seçtiğiniz parça.
  • Elinizdeki arşivden geri yükleme.zip, .sql veya .sql.gz dosyasını sürükleyip bırakın.
  • Site taşıma / alan adı değiştirme — geri yükleme sırasında site adresi veritabanında otomatik güncellenir.
  • Virüs tarama — WordPress çekirdeği, eklentiler ve aktif temada kod enjeksiyonu, web shell ve arka kapı arar; bulunanları toplu silebilirsiniz.
  • Kendi bulutunuza gönderim (isteğe bağlı) — Google Drive, Dropbox, OneDrive, Amazon S3 / S3 uyumlu, FTP / SFTP.
  • Zamanlanmış otomatik yedekleme (isteğe bağlı) — günlük, haftalık, saatlik veya birkaç dakikada bir; saklama kuralı ile.
  • AES-256 uçtan uca şifreleme (BYOK) — parola sitenizden çıkmaz.

Ücretsiz bir yedekleme eklentisi arıyorsanız: geri yükleme, taşıma ve virüs taraması dahil hepsi ücretsizdir; hiçbiri “premium” kilidinin arkasında değildir.

In English

Yedekalma is a free WordPress backup plugin that takes a one-click backup of your entire site — files and database — and restores it again from the same screen. It also migrates your WordPress site to a new host or domain and scans it for malware. One backup plugin covers backup, restore, migration and security, so you do not need a separate tool for each job.

Everything runs on your own server. No account, no sign-up and no API key: install, activate, click Take Backup. Your backup archives stay on your hosting, and you can download them as a ZIP at any time.

Looking for a free backup plugin that also does migration and malware scanning without a paywall? Yedekalma gives you a full WordPress backup, a database backup, one-click restore, site migration and a malware scanner in a single plugin — no premium unlock required for any of it.

Backup

  • Full backup — every file (themes, plugins, uploads) plus the complete database.
  • Database backup — MySQL dump only, gzip compressed (.sql.gz) for large sites.
  • Files backup — site files only, without the database.
  • Works on shared hosting — chunked, time-sliced backup that finishes even when exec() is disabled and PHP limits are strict.
  • Incremental backup — compares real file modification times, so a changed file is never skipped.
  • Safe storage — local backups live in a hardened, non-browsable folder with unguessable file names.

Restore

  • One-click restore of the database, plugins, themes and uploads straight from your dashboard.
  • Restore only what you need — pick just the database, just uploads, just plugins or the whole site.
  • Restore from an archive you already have — drag & drop a .zip, .sql or .sql.gz file and restore from it.
  • Integrity checked — a truncated or corrupt archive is refused instead of half-applied, so a bad file can never damage a working site.
  • SHA-256 verification of every archive before a restore begins.

Migration

  • Move your site to a new host — download the backup, install Yedekalma on the target server and restore.
  • Change domain safely — site URL and home URL are rewritten in the database automatically during the restore.
  • New database serverwp-config.php credentials can be updated as part of a restore.
  • Clone your website to a fresh install for disaster recovery or a redesign.

Malware scanner

  • Security scan of PHP, JS and configuration files across WordPress core, your plugins and the active theme.
  • Detects code injections, web shells and backdoors using malicious-pattern matching.
  • Persistent results — the scan report survives page reloads, so you can review it whenever you like.
  • Bulk clean — select detected files and delete them in one click.
  • Core protection — WordPress core files are shielded from accidental deletion while planted files can still be removed.

Optional cloud service — backup to your own cloud storage

Local backup, restore, migration and the malware scanner are complete on their own and never contact an external server. If you also want off-site backup copies, you can connect the optional Yedekalma cloud service (see External services below) to:

  • Backup to Google Drive — stream backups straight to your own Google Drive.
  • Backup to Dropbox and OneDrive — send archives to your own Dropbox or Microsoft OneDrive account.
  • Backup to Amazon S3 and S3-compatible storage — Backblaze B2, Wasabi, Cloudflare R2 and MinIO.
  • Backup to FTP / SFTP — upload to any FTP or SFTP server you control.
  • Run scheduled automatic backups — daily, weekly, hourly or as often as every few minutes for busy sites — with retention rules.
  • Table-level incremental database backup — only the database tables that actually changed are exported, so even very frequent backups stay small and fast; unchanged runs are skipped automatically.
  • Encrypt archives with client-side AES-256 (BYOK) before they leave your server — the passphrase never leaves your site.

Languages

Yedekalma ships with English, Turkish (Türkçe), German, Russian and Arabic translations.

External services

This plugin can optionally connect to the Yedekalma cloud service (an external SaaS) to perform off-site backup and restore operations, package backups for delivery to your own cloud storage, check subscription state, and monitor backup quota. This connection only happens if you choose to use the cloud service (by entering an API token, by clicking the optional “Connect with Google” button, by clicking the optional “register this site” button, or by sending a support request from the Support screen — all described below); the plugin’s local backup, restore, migration and malware-scanner features work with no external connection at all.

  • Service URL: https://yedekalma.com
  • Terms of Service: https://yedekalma.com/legal
  • Privacy Policy: https://yedekalma.com/legal#privacy
  • Connect with Google (opt-in): The dashboard shows an optional “Connect with Google” button. It does nothing unless you click it. If you click it, your browser is sent to https://yedekalma.com where you sign in with Google; Yedekalma then creates or finds your account from your Google e-mail address and links this site (identified by its Site URL) to it. Only your e-mail address and the Site URL are used for this; no Google Drive or other Google data permission is requested, and no site content is sent. A one-time connection token is returned to your site and stored encrypted locally.
  • Optional site registration (opt-in): The dashboard also shows an optional “register this site with Yedekalma” button. It does nothing unless you click it. If you click it, the plugin sends only your Site URL and technical version info (plugin, WordPress, PHP version and locale) to https://yedekalma.com so the site can be listed in your Yedekalma panel; no site content or personal data is sent. If you also enter a notification e-mail, that address and your marketing-consent choice are sent as well. You can ignore the button entirely and every built-in feature still works.
  • Support form (opt-in, no account needed): The plugin has a Yedekalma Support screen. It sends nothing until you fill it in and press “Send”. When you do, the message you typed, the reply e-mail address and name you entered, the chosen category and your Site URL are sent to https://yedekalma.com so the support team can answer you by e-mail. A separate checkbox — shown ticked, and you can untick it — additionally sends technical details of this installation: plugin, WordPress, PHP and MySQL versions, web server, site language, multisite flag, active theme name, the number of active plugins, PHP limits (memory_limit, max_execution_time, upload_max_filesize), whether ZipArchive and exec() are available, free disk space, whether the backup folder is writable, whether the site is connected to the cloud service, and the date and count of your local backups. The full list is shown on screen before you send it. No site content, database content, passwords, plugin list or user data is sent, and no Yedekalma account is required to use this form.
  • Data Transmission: When connected (or after opt-in registration), the plugin sends requests to the Yedekalma API containing your Site URL, active plugin features, backup metadata (such as file lists, sizes, and checksums), and your API token (or anonymous install id) to perform secure backup and restore tasks.

Screenshots

Installation

  1. In your WordPress admin, go to Plugins Add New.
  2. Search for Yedekalma.
  3. Click Install Now, then Activate.
  4. Open Yedekalma in the admin sidebar.
  5. Click Start without an account and take your first backup.

Manual installation: upload the yedekalma folder to /wp-content/plugins/ and activate it from the Plugins screen.

FAQ

WordPress sitemin yedeğini nasıl alırım?

Yedekalma Kontrol Paneli‘ni açın ve Yedek Al‘a basın. Tam Yedek (dosya + veritabanı), Sadece Dosya veya Sadece Veritabanı seçebilirsiniz. Yedekleme kendi sunucunuzda parça parça çalışır; bittiğinde arşivi ZIP olarak indirebilirsiniz.

Veritabanı yedeği nasıl alınır?

Yedek Al Sadece Veritabanı deyin. Sıkıştırılmış bir MySQL dökümü (.sql.gz) elde edersiniz; indirebilir veya daha sonra geri yükleyebilirsiniz.

Yedek alma eklentisi ücretsiz mi?

Evet. Yedekleme, geri yükleme, taşıma ve virüs taraması hesap açmadan ve ücret ödemeden tam olarak çalışır. İsteğe bağlı Yedekalma bulut hizmeti site dışı (off-site) depolama ekler ve ücretsiz bir başlangıç paketi vardır.

WordPress site taşıma nasıl yapılır?

Evet. Yedeği indirin, yeni sunucuda Yedekalma’yı kurun ve arşivden geri yükleyin. Site adresi ve ana sayfa adresi veritabanında otomatik olarak yeni alan adına göre güncellenir.

Yedekler nerede saklanıyor?

Varsayılan olarak kendi hostingunuzda, dışarıdan listelenemeyen korumalı bir klasörde ve tahmin edilemez dosya adlarıyla. İsterseniz isteğe bağlı bulut hizmetiyle kendi Google Drive, Dropbox, OneDrive, S3 veya FTP alanınıza gönderebilirsiniz — yedeğin içeriği Yedekalma sunucularında tutulmaz.

Paylaşımlı hostingde çalışır mı?

Evet. Yedekleme zaman dilimli parçalar halinde ilerler; exec() kapalı olsa ve PHP zaman/bellek limitleri dar olsa bile tamamlanır. Sunucu yoğunluk nedeniyle isteği reddederse eklenti bekleyip kaldığı yerden devam eder.

WordPress virüs temizleme yapar mı?

Evet. Yedekalma Zararlı Yazılım Taraması ekranından tarama başlatın: WordPress çekirdeği, eklentiler ve aktif tema PHP/JS ve yapılandırma dosyaları için kod enjeksiyonu, web shell ve arka kapı kalıplarına karşı taranır. Bulunan dosyaları tek tıkla toplu silebilirsiniz; WordPress çekirdek dosyaları yanlışlıkla silinmeye karşı korunur. Virüs temizleme ücretsizdir, hesap açmanız gerekmez.

Otomatik (zamanlanmış) yedekleme var mı?

Evet, isteğe bağlı bulut hizmetiyle. Günlük, haftalık, saatlik ya da yoğun siteler için birkaç dakikada bir otomatik yedekleme kurabilir, her biri için saklama kuralı tanımlayabilirsiniz. Tek tıkla manuel yedek her zaman ücretsizdir ve zamanlama gerektirmez.

Büyük siteleri (5 GB, 10 GB) yedekleyebilir mi?

Evet. Yedekleme küçük zaman dilimlerine bölünerek ilerler ve veritabanı doğrudan gzip sıkıştırmalı döküme akıtılır; böylece PHP süre ve bellek limitlerine takılmadan tamamlanır. Çok büyük siteler için isteğe bağlı bulut hizmetiyle arşivi hostinginizi doldurmadan doğrudan kendi Google Drive, S3 veya FTP alanınıza gönderebilirsiniz.

WooCommerce mağazamı yedekler mi?

Evet. Tam yedek tüm WordPress veritabanını içerir — WooCommerce siparişleri, ürünler, müşteriler ve ayarlar dosyalarla birlikte kaydedilir. Yoğun mağazalarda isteğe bağlı bulut hizmetiyle sık artımlı yedekleme kurup iki yedek arasındaki yeni siparişleri de koruyabilirsiniz.

Nasıl destek alabilirim? Üye olmam gerekiyor mu?

Hayır, üyelik gerekmez. WordPress yönetim panelinizde Yedekalma Destek ekranını açın, sorununuzu yazın ve gönderin. Site adresiniz otomatik olarak eklenir; isterseniz PHP/WordPress sürümü ve sunucu limitleri gibi teknik bilgileri de tek tıkla iletebilirsiniz (ne gönderileceğini göndermeden önce ekranda görürsünüz). Yanıt, yazdığınız e-posta adresine gelir — yedekalma.com hesabınız olmasa bile.

Yedeklerimi Google Drive’a gönderebilir miyim?

Evet, isteğe bağlı Yedekalma bulut hizmetiyle. Arşiv sunucunuzdan doğrudan kendi Google Drive, Dropbox, OneDrive, Amazon S3 / S3 uyumlu veya FTP / SFTP alanınıza aktarılır; Yedekalma bir kopyasını saklamaz.

Is this backup plugin free?

Yes. Backup, restore, migration and the malware scanner are fully functional with no account and no payment. The optional Yedekalma cloud service adds off-site storage and has a free tier.

Is this a good free backup plugin for WordPress?

Yedekalma is a free WordPress backup plugin that bundles full-site backup, database backup, one-click restore, site migration and a malware scanner — features that many plugins split between free and premium tiers. Everything runs on your own server and needs no account.

How do I back up my WordPress site?

Open Yedekalma Dashboard and click Take Backup. Choose Full (files + database), Files Only or Database Only. The backup runs in time-sliced chunks on your own server and you can download the archive as a ZIP when it finishes.

How do I back up my WordPress database?

Open Yedekalma Dashboard, click Take Backup and choose Database Only. You get a compressed MySQL dump (.sql.gz) that you can download or restore later.

Can I back up a WooCommerce store?

Yes. A full backup includes your entire WordPress database — WooCommerce orders, products, customers and settings — together with your files, so your whole store is captured. For very busy stores you can schedule frequent incremental backups through the optional cloud service so new orders are protected between runs.

Can it back up large sites (5 GB, 10 GB or more)?

Yes. Backups run in small time-sliced chunks and the database is streamed to a gzip-compressed dump, so large sites finish without hitting PHP time or memory limits. For very large sites, connecting the optional cloud service lets archives stream straight to your own Google Drive, S3 or FTP storage instead of filling your hosting disk.

Does it work on shared hosting, cPanel, Plesk or DirectAdmin?

Yes. Yedekalma is a pure-PHP plugin with no server dependencies, so it works on any standard WordPress host — shared hosting, cPanel, Plesk, DirectAdmin or a managed platform. It does not need exec(), shell access or SSH.

Does it work on LiteSpeed, Nginx and Apache?

Yes. The plugin runs inside WordPress itself and does not depend on the web server, so it works the same on LiteSpeed, Nginx, Apache or any other server that runs PHP.

Can I use it to migrate my site to a new host or domain?

Yes. Take a full backup, download the ZIP, install Yedekalma on the target site and restore the archive there. The site URL and home URL in the database are updated for the new domain automatically.

Can I clone my website for disaster recovery?

Yes. Take a full backup and restore it onto a completely separate install; the site URL is rewritten for the new domain automatically. Your original site is never modified.

Where are my backups stored?

In wp-content/uploads/yedekalma-backups/ on your own server. The folder is protected from directory browsing and the archive names include a random token, so nobody can guess the URL. If you connect optional cloud storage, backups go to your own Google Drive, Dropbox, OneDrive, S3 or FTP account instead.

Can I back up to Google Drive?

Yes, through the optional Yedekalma cloud service. Backups stream directly from your server to your own Google Drive; Yedekalma never keeps a copy.

Can I back up to Dropbox or OneDrive?

Yes. With the optional cloud service you can send scheduled backups to your own Dropbox or Microsoft OneDrive account.

Does it support Amazon S3, Backblaze B2 or Wasabi?

Yes. The optional cloud service supports Amazon S3 and any S3-compatible storage — Backblaze B2, Wasabi, Cloudflare R2 and MinIO. Uploads use a client-side signed (SigV4) request and your secret key is AES-256 encrypted on your own site, never sent to Yedekalma.

Can I back up to FTP or SFTP?

Yes. The optional cloud service can upload backups to any FTP or SFTP server you control. The credentials are encrypted on your own site.

Does it support scheduled automatic backups?

Yes, through the optional cloud service. You can schedule automatic backups daily, weekly, hourly or as often as every few minutes for busy sites, each with its own retention rules. One-click manual backups are always available for free without any schedule.

What is incremental backup and does it support it?

An incremental backup only saves what changed since the last run, so it stays small and fast. Yedekalma compares real file modification times for files and, with the cloud service, exports only the database tables that actually changed — unchanged runs are skipped automatically.

Can I encrypt my backups?

Yes. With the optional cloud service you can turn on client-side AES-256 (BYOK) encryption. Archives are encrypted on your own server before they leave it, and the passphrase never reaches Yedekalma.

How does the malware scanner work?

It scans PHP, JS and configuration files in WordPress core, your plugins and the active theme for malicious patterns, code injections, web shells and backdoors. Results are saved so you can review them later, and you can delete detected files in bulk. Core WordPress files are protected from deletion.

How do I restore a WordPress backup for free?

Open Yedekalma Backups, find the backup you want and click Restore. You can restore the database, plugins, themes and uploads separately or all at once. You can also drag & drop a .zip, .sql or .sql.gz archive you already have and restore from it — no account and no payment required.

Can I restore only the database?

Yes. When restoring, pick the Database section on its own and the rest of the site is left untouched. This is handy for rolling back a bad content change without reverting files.

Can I restore only the uploads, media or a single component?

Yes. Restore offers each section your backup contains — database, plugins, themes and uploads — so you can restore just your media/uploads, just plugins or any single part instead of the whole site.

Is there a free WordPress migration plugin here?

Yes. Yedekalma migrates your WordPress site to a new host or domain for free: take a full backup, download the ZIP, install Yedekalma on the target site and restore. The site URL and home URL are rewritten in the database automatically, and wp-config.php credentials can be updated during the restore.

How can I scan WordPress for malware without a subscription?

The built-in malware scanner is completely free and needs no account. Open Yedekalma Malware Scanner and start a scan; it checks WordPress core, your plugins and the active theme for injected code, web shells and backdoors, then lets you delete detected files in bulk while protecting core files.

How often should I back up my WordPress site?

For most sites a weekly full backup plus a daily database backup is a good baseline; busy or e-commerce sites should back up daily or more often. You can run a one-click backup any time for free, and the optional Yedekalma cloud service adds scheduled automatic backups with retention rules.

What happens to my backups if I delete the plugin?

Nothing. Local archives under wp-content/uploads/yedekalma-backups/ stay where they are unless you remove them yourself, and anything in your own cloud storage stays there too.

Türkçe destekliyor mu?

Evet. Yedekalma tamamen Türkçe arayüze sahiptir: site yedekleme, veritabanı yedekleme, yedekten geri yükleme, site taşıma ve virüs/zararlı yazılım taraması işlemlerinin tümünü Türkçe olarak yapabilirsiniz.

Is Multisite supported?

Not in version 1 — a separate plugin instance per site is required. Full Multisite support is on the roadmap.

Is it GDPR / KVKK compliant?

Yes. The plugin makes no external connection at all unless you deliberately connect the optional cloud service, and explicit consent is collected for that data transfer.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Yedekalma — Yedek Alma, Geri Yükleme ve Taşıma” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

For the full history of older releases, see changelog.txt in the plugin folder.

1.58.2 — 2026-08-22

  • “Pro özelliklerini açmak için bağlanın” başlığı yeniden en üstte. 1.58.1’de tanıtım
    bölümü onay kutularının üstüne alınırken başlığın da üstüne geçmişti; ekranın ne için
    olduğunu söyleyen çağrı, uzun anlatımın altında kalıyordu. Sıra artık şöyle:
    başlık kısa özet “Yedekalma nedir / verim nereye gidiyor” onay bağlan.
    Böylece hem çağrı ilk görünen şey oluyor, hem de aydınlatma rızadan önce geliyor.

1.58.1 — 2026-08-22

  • Bağlanmadan önce ne olduğunu okuyorsunuz. “Yedekalma nedir, yedeğim nerede
    hazırlanıyor, verim nereye gidiyor” anlatımı artık onay kutularının ve “Google ile
    bağlan” düğmesinin üstünde. Önceden düğmenin altındaydı; yani kullanıcı önce karar
    verip sonra okuyordu. Onay ancak bilgilendirmeden sonra anlamlıdır — KVKK’da da
    aydınlatma, açık rızadan önce gelir.
  • Sözleşme bilgisi alınamadığında artık “Tekrar dene” bağlantısı var. Önceden tek çare
    koca yönetim sayfasını yeniden yüklemekti; geçici bir ağ hatası gereksiz bir çıkmaza
    sokuyordu.

1.58.0 — 2026-08-22

  • Yedekalma hesabı açılırken artık açık rıza alınıyor (KVKK). “Google ile bağlan”
    düğmesi yalnız bağlantı kurmuyor — yedekalma.com’da sizin adınıza bir müşteri hesabı
    açıyor
    . Panelden kayıt olurken Kullanım Koşulları ve KVKK aydınlatma metni onayı
    zorunluyken, bu yol onları hiç sormuyordu. Artık iki onay kutusu işaretlenmeden düğme
    açılmıyor; onayınız tarih, sürüm ve IP ile birlikte kaydediliyor.
  • Sözleşme bağlantıları yeni sekmede yedekalma.com üzerinden açılır. Metinler ve sürüm
    bilgisi eklentiye gömülü DEĞİL, panelden çekilir — böylece belgeler güncellendiğinde
    eklentiyi yeniden yayınlamak gerekmez ve onay kaydınız her zaman gerçekten okuduğunuz
    metnin sürümünü gösterir.
  • Sözleşme bilgisi alınamazsa bağlantı başlatılmaz ve sebebi ekranda yazılır. Bilinçli
    bir karar: hangi metne onay verildiği bilinmeden hesap açmak, kaydı baştan değersiz kılar.

1.57.13 — 2026-08-21

  • Büyük satırlı veritabanlarında yedek artık bellek yetmediği için durmuyor. Veritabanı
    dökümü partileri şimdiye kadar SATIR SAYISIYLA ölçülüyordu (sabit 500). Satır sayısı
    belleği ölçmez: şişmiş bir ayar kaydı ya da serileştirilmiş büyük bir meta değeri tek
    başına megabaytlarca olabilir. Böyle bir sitede 500 satır PHP bellek sınırını aşıyor ve
    yedek her denemede aynı noktada, birkaç saniye içinde ölüyordu. Parti boyutu artık
    tablonun ortalama satır büyüklüğüne göre BAYT bütçesiyle belirleniyor; ölçüm alınamazsa
    eski davranış aynen korunur (parti yalnızca küçültülür, asla büyütülmez).
  • Her partiden sonra WordPress’in tuttuğu ikinci kopya serbest bırakılıyor. WordPress
    sorgu sonucunu ayrıca kendi içinde saklar ve bir sonraki sorguya kadar bırakmaz; bu,
    döküm sırasında tepe bellek kullanımını gereksiz yere iki katına çıkarıyordu. Düzeltme
    yedekleme, döküm ve geri yükleme (ara/değiştir) yollarının ÜÇÜNE de uygulandı.

1.57.12 — 2026-08-20

  • Yedek biletleri artık adres satırında taşınmıyor. Yükleme/indirme isteklerinde
    kullanılan tek kullanımlık bilet, sunucu erişim kayıtlarına ve aradaki vekillere
    düşmesin diye yalnızca istek başlığında gönderiliyor. Eski sürüm alıcı modüllerle
    uyum korunuyor: karşı taraf yeni biçimi tanımıyorsa önceki yöntem kullanılmaya devam eder.

1.57.11 — 2026-08-20

  • Yarım kalan yükleme artık kilitlenmiyor. Büyük bir yedek parça parça gönderilirken
    son parçanın yanıtı kaybolursa, eklenti “her şey karşıda” cevabını alıp gönderimi
    tamamlanmış saymıyor; tamamlama sinyalini yeniden gönderiyor. Önceden bu durumda arşiv
    hedefe hiç taşınmıyor, her yeni deneme aynı noktada başarısız oluyor ve yedek
    tamamlanamıyordu.
  • Yedek biletleri artık istek başlığında da gönderiliyor. Sunucu erişim kayıtlarına ve
    aradaki vekillere adres satırıyla birlikte düşmemesi için; eski sürüm alıcılarla uyum
    korunuyor.

1.57.10 — 2026-08-20

  • Yedek klasörü artık kendi kendini yedeklemiyor. Klasör adı yeniden adlandırılamayıp
    eskisi yerinde kaldığında, eski klasör yedeğin içine giriyordu — arşiv kendi eski
    arşivlerini taşıyor ve gereksiz yere büyüyordu. Hariç tutma artık tüm yedek klasörlerini
    tanıyor (yalnızca güncel adı değil).
  • Sağlaması olmayan katman artık geri yüklemede açık onay ister. Bütünlük doğrulaması
    yapılamayan bir yedek katmanı sessizce uygulanmıyor; ne olduğu ekranda yazıyor ve
    kullanıcı bilerek onaylamadan işlem başlamıyor.

1.57.9 — 2026-08-20

  • Parçalı yedekte kesik arşiv koruması. Arşiv, büyük sitelerde birden çok istekte
    parça parça yazılır. Bir parça yarıda kesilirse (hosting zaman aşımı, bellek sınırı)
    aynı dosya ikinci kez yazılabiliyor ve arşiv tutarsız hâle gelebiliyordu. Yazıcı artık
    arşivin yan kaydını okuyup hangi dosyaların gerçekten TAM yazıldığını doğruluyor;
    yarım kalmış bir girdi “tamam” sayılmıyor.
  • Virüs tarama ekranında dosya adı kaçışı. Taranan bir dosyanın adı ekrana
    kaçırılmadan basılıyordu; siteye kötücül adlı bir dosya bırakabilen biri, tarama
    ekranını açan yöneticinin tarayıcısında kod çalıştırabilirdi.
  • Yedek klasörü adı. Klasör adı yeniden oluşturulurken tahmin edilebilir bir ada
    düşebiliyordu; artık her durumda rastgele ad üretiliyor ve mevcut yedek kayıtları
    öksüz kalmıyor.
  • Manuel yedekte geçici dosya konumu. wp-admin üzerinden alınan yedeklerde
    veritabanı dökümü ve arşiv, bazı sunucularda web’den erişilebilen bir klasöre
    yazılabiliyordu; artık sertleştirilmiş geçici klasör kullanılıyor.
  • Hariç tutma listesi. Virgülle ayrılmış satırlar ve nicelik aralığı içeren düzenli
    ifadeler (\d{1,3} gibi) artık modülle birebir aynı biçimde yorumlanıyor — panelde
    görünen kural sayısı ile yedeğe gerçekten uygulanan kural aynı.

1.57.8 — 2026-08-19

  • Güvenlik/kararlılık: bozuk ya da kötücül bir şifreli yedek artık belleği tüketip
    geri yüklemeyi öldüremiyor.
    Şifreli arşivler çerçeve çerçeve okunur ve her çerçevenin
    başında 4 baytlık bir uzunluk alanı vardır. Doğrulama geçişinde (HMAC) bu uzunluk için
    bir üst sınır YOKTU — dosya bozulmuş ya da kasten değiştirilmişse tek bir çerçeve 4 GB’a
    kadar okuma istetebiliyor ve PHP “Allowed memory size exhausted” ile ölüyordu; WordPress
    tarafında bu, geri yüklemenin 500 ile düşmesi demek. Çözme geçişinde sınır zaten vardı
    ama doğrulama geçişi ONDAN ÖNCE koştuğu için sıra ona hiç gelmiyordu. Sınır artık her
    iki geçişte de var (meşru azami çerçeve 1 MB; sınır 5 MB).
  • Not: bu, aynı hatanın üçüncü kopyasıydı. Panel modülü ve sunucu tarafındaki kopyalar aynı
    gün düzeltilmişti; eklentideki kopyayı otomatik “ikiz parite” kapımız yakaladı.

1.57.7 — 2026-08-19

  • Yeni: geri yüklemede “sunucu yapılandırma dosyalarını da geri yükle” seçeneği. 1.57.6’dan
    beri wp-config.php, .htaccess ve .user.ini geri yüklemede korunuyordu — doğru varsayılan,
    çünkü yedek alındığından bu yana veritabanı bilgileriniz ya da hosting sunucunuz değiştiyse eski
    ayarların geri gelmesi siteyi ONARMAK yerine DÜŞÜRÜR. Ama bu üç dosyayı bilerek geri istemenin
    hiçbir yolu yoktu (sunucu taşımasından sonra eski .htaccess kurallarını geri almak gibi).
    Artık geri yükleme penceresinde açık bir onay kutusu var: işaretlemediğiniz sürece davranış
    aynı (dosyalar korunur), kutu her açılışta kapalı başlar ve “Sadece Veritabanı” modunda hiç
    görünmez.
  • Yeni uyarı: geri yüklenen wp-config.php farklı bir AUTH_KEY taşıyorsa artık söylüyoruz.
    Panel bağlantınız ve yedek şifreleme (BYOK) parolanız bu sitede AUTH_KEY’den türetilen bir
    anahtarla şifreli saklanır. Eski bir sunucudan gelen wp-config.php geri yüklenirse ikisi de
    okunamaz hâle gelir — önceden bunu hiçbir yerde göremiyor, ancak bir sonraki yedek
    başarısız olunca fark ediyordunuz. Artık dosya yazılmadan ÖNCE ölçülüyor ve sonuç ekranında
    ne yapmanız gerektiği yazıyor (paneli yeniden bağlayın, şifreleme parolanızı yeniden girin).
  • Geri yükleme sonucu artık ne olduğunu SÖYLÜYOR. “Başarıyla tamamlandı” mesajının altında
    yapılandırma dosyalarının korunup korunmadığı ve — yedek bir sağlama (SHA-256) kaydı
    taşımıyorsa — arşivin yalnızca YAPISAL olarak doğrulandığı yazıyor. Bu bilgiler 1.57.6’dan beri
    üretiliyordu ama ekrana hiç gelmiyordu; üretilip gösterilmeyen uyarı, verilmemiş uyarıdır.
  • Düzeltildi: “Alıcı Modül” hedefine yedek yüklenemiyordu. Kendi sunucunuza kurduğunuz
    Alıcı Modül’ü depolama hedefi olarak seçtiyseniz, WordPress eklentisi bu yükleme yöntemini
    HİÇ uygulamıyordu: yedek hazırlanıyor, sonra yükleme adımında düşüyordu. (Panel modülü bu
    yöntemi destekliyordu, eklenti desteklemiyordu.) Artık destekleniyor — büyük arşivlerde
    parçalı ve kopan bağlantıda kaldığı yerden devam edebilen biçimde.

1.57.6 — 2026-08-19

  • Düzeltildi: wp-admin’den BULUT yedeğini geri yükleme her zaman “403” veriyordu. Yerel
    (bu sunucudaki) yedeklerden geri yükleme çalışıyordu, ama bulut hedefinizdeki (Google
    Drive/S3/FTP) yedeği wp-admin’den geri yüklemeye çalıştığınızda işlem daima yetki hatasıyla
    düşüyordu. Gerekli kimlik başlığı iki çağrı yerinden yalnız birine eklenmişti. Felaket anında
    ilk basacağınız düğme buydu; artık iki yol da TEK bir kapıdan geçiyor.
  • Düzeltildi: sembolik bağlı site kökünde geri yükleme “başarılı” diyor ama HİÇBİR dosyayı
    yazmıyordu.
    Birçok paylaşımlı hostingde public_html gerçek bir klasör değil, başka bir
    yola işaret eden bir bağdır. Eklenti site kökünü çözümlemeden karşılaştırdığı için o
    sunucularda arşivdeki her dosya sessizce “atlandı” sayılıyor, işlem yine de “Geri yükleme
    başarıyla tamamlandı” diyordu — site ONARILMAMIŞ oluyordu ve bu ancak felaket gününde
    anlaşılıyordu. Kök artık çözümleniyor; ayrıca arşivde dosya varken hiçbiri yazılamadıysa
    bu artık bir HATADIR
    , başarı değil. Aynı kök neden Pro klasör gezginini de o hostlarda
    kullanılamaz hâle getiriyordu; o da düzeldi.
  • Geri yükleme öncesi arşiv doğrulaması sertleşti. Bir yedek katmanı sağlama (SHA-256)
    taşımıyorsa eskiden HİÇBİR bütünlük kontrolü yapılmıyordu; indirmenin başarısı yalnızca
    “dosya 22 bayttan büyük mü” ile ölçülüyordu (22 bayt = boş bir zip). Artık indirilen boyut
    sunucunun bildirdiği boyutla karşılaştırılıyor (HTTP/FTP/SFTP), arşiv sitenizin üzerine
    yazılmadan ÖNCE içerik tutarlılığı denetleniyor ve yarım/kesik aktarım “başarılı” sayılmıyor.
  • Düzeltildi: hariç tutma kalıpları hostinga göre FARKLI davranıyordu. logs[0-9] gibi
    karakter aralıkları ve büyük/küçük harf duyarlılığı, PHP’nin fnmatch fonksiyonu bulunmayan
    sunucularda başka türlü yorumlanıyordu — yani aynı eklenti, aynı kalıp, iki hostta İKİ FARKLI
    arşiv içeriği üretebiliyordu ve size hiçbir uyarı gitmiyordu. İki yol artık birebir aynı
    kararı veriyor.
  • Düzeltildi: geri yüklemede tam veritabanı dökümü sunucuda kalabiliyordu. İşlem bir hata
    ya da zaman aşımıyla yarıda kesilirse, geçici olarak açılan .sql.gz dökümü yükleme
    klasöründe kalıyordu. Artık istek nasıl biterse bitsin siliniyor.
  • Ek depolama hedefleri artık sessiz kalmıyor. Birden çok hedef tanımladıysanız, ek
    hedeflerden birine yükleme başarısız olduğunda hiçbir iz kalmıyordu: panelde de,
    kütükte de. Ödediğiniz ikinci/üçüncü kopyanın yazılmadığını öğrenemiyordunuz. Sonuç artık
    panele raporlanıyor ve başarısızlıkta bildirim gidiyor. Ayrıca “Sadece değişenler” rejimi
    açıkken WordPress kopyaları da zincir klasörüne düşüyor (önceden yalnız modül kopyaları
    düşüyordu).
  • Güvenlik: site anahtarını (pull_secret) döndüren uç, kardeşlerinde bulunan ikinci yetki
    kontrolünü taşımıyordu. Bugün açık bir kapı değildi; yine de eklendi.

1.57.5 — 2026-08-18

  • Düzeltildi: bazı paylaşımlı hostinglerde yedek ilk saniyesinde ölüyordu. PHP’nin
    set_time_limit, ignore_user_abort, php_uname ve fsockopen fonksiyonları
    hostingler tarafından disable_functions ile kapatılabilir. Kapalı olduklarında
    @ işareti KORUMAZ — PHP ölümcül hata verir ve yedekleme, geri yükleme ya da parçalı
    yedek o anda durur. Aynı sınıf hata bu eklentide daha önce disk_free_space için
    düzeltilmişti; bu sürüm kalan 13 çağrıyı da tek bir güvenli kapıya aldı.
  • Düzeltildi: geri yükleme wp-config.php ve .htaccess dosyalarını eziyordu.
    Yedek alındıktan sonra veritabanı bilgileriniz, sunucunuz ya da .htaccess
    kurallarınız değiştiyse, geri yükleme sitenizi ESKİ yapılandırmaya döndürüyor ve
    “Error establishing a database connection” hatasına yol açabiliyordu. Bu dosyalar
    artık geri yüklemede KORUNUR — kurtarma işlemi sitenizi düşürmez.
  • Güvenlik: yükleme sınırı ayarı yetki kontrolü olmadan çalışıyordu. Eklenti,
    yükleme sınırlarını yükseltmek için site kökünde .user.ini oluşturuyor; bu işlem
    herhangi bir oturum açmış kullanıcı (ör. Abone) tarafından tetiklenebiliyordu. Artık
    yalnızca yöneticiler tetikleyebilir.
  • Düzeltildi: yedek klasörünün yanındaki benzer adlı klasör sessizce yedeğe girmiyordu.
    Klasör karşılaştırması ayraç sınırı kullanmadığı için yedekalma-backups tabanının
    yanında duran yedekalma-backups-eski gibi bir klasörün TAMAMI “yedek klasörü”
    sayılıyor ve yedeğin dışında kalıyordu — hiçbir uyarı çıkmadan.
  • Düzeltildi: geri yüklemede bilinmeyen bileşen seçimi “her şeyi geri yükle”ye
    düşüyordu.
    Artık geçersiz bir seçim sessizce en yıkıcı seçeneğe çevrilmek yerine
    reddediliyor (REST ucunda zaten böyleydi).
  • Güvenlik/sağlamlık: arka plan yedek işinin gizli anahtarı artık yalnızca POST
    gövdesinden okunuyor (adres satırından geçtiğinde sunucu erişim kütüğüne düşüyordu);
    yedek dosya adı çözümünde dizin dışına çıkma koruması; arşiv içi dosya adı eşlemeleri
    artık büyük/küçük harfe duyarsız (modüldeki davranışla eşitlendi).

1.57.4 — 2026-08-18

  • Düzeltildi: taşınmış sitelerde wp-admin “Yedekler” listesi BOŞ görünüyordu. 1.57.3
    yedek klasörünün yolunu tek bir doğrulanmış kaynağa bağlamıştı, ama yalnızca panel/REST
    tarafında. WordPress yönetim ekranları (yedek listesi, silme, indirme, içe aktarma,
    klasör gezgini, geçici dosya temizleyici, karantina ve destek tanılaması) hâlâ eski
    yöntemle hesaplıyordu. Sitesi başka bir sunucuya taşınmış kurulumlarda WordPress’in
    bildirdiği yükleme klasörü yolu ESKİ sunucuya ait olabildiği için bu ekranlar var
    olmayan bir klasöre bakıyordu: yedekler diskte dururken listede görünmüyor, temizlik
    yanlış klasörü hedefliyor, zamanlanmış yedek sessizce kayboluyordu.
  • Sebebi söylemeyen hata kalktı: yükleme klasörü gerçekten kullanılamıyorsa artık
    “izinleri kontrol edin” yerine ne yapılması gerektiği yazıyor (Ayarlar > Medya’daki
    yükleme klasörü yolunu boşaltmak çoğu taşınma sorununu çözer).
  • Destek tanılamasındaki “Yedek klasörü” satırı eski sabit klasör adına bakıyordu ve bu
    yüzden her sitede “henüz oluşmamış” diyordu; artık gerçek klasörü raporluyor. WordPress’in
    bildirdiği yol ile gerçekte kullanılan yol farklıysa bu da ayrıca gösteriliyor.
  • Eklentiyi silerken “yedekleri de sil” seçeneği taşınmış sitelerde arşivleri diskte
    bırakıyordu; artık olası tüm yükleme klasörü konumları temizleniyor.

1.57.3 — 2026-08-18

  • Düzeltildi: yedek başarıyla alınıyordu ama panel “dosya bulunamadı” diyordu. Arşiv
    doğru klasöre yazılıyor, ancak indirme ve silme işlemleri klasörü BAŞKA bir kaynaktan
    hesaplıyordu. Sitesi başka bir sunucuya taşınmış kurulumlarda WordPress’in bildirdiği
    yükleme klasörü yolu ESKİ sunucuya ait olabiliyor; yazma tarafı bunu 1.57.0’da
    doğrulamaya başlamıştı ama okuma/silme tarafı ham değeri kullanmaya devam ediyordu.
    Sonuç: yedek 3-4 dakika boyunca paketleniyor, tamamlanıyor, sonra panel dosyayı
    bulamayıp işi başarısız sayıyordu. Dosya aslında YERİNDEYDİ.
  • Aynı hata yedeğin İÇERİĞİNİ de bozuyordu: yedek klasörünün yeni arşive dahil
    EDİLMEMESİNİ sağlayan kural da aynı yanlış yoldan hesaplandığı için taşınmış sitelerde
    çalışmıyordu — arşiv kendi önceki arşivlerini içine alıp gereksiz yere büyüyordu.
  • Artık yedek klasörünün yolu tek bir doğrulanmış kaynaktan geliyor: yazma, okuma, silme,
    geçici dosya ve dışlama kuralı aynı yeri gösteriyor.

1.57.2 — 2026-08-18

  • Düzeltildi: yedek %97’de “kayıt onayı bekleniyor”da takılıp başarısız oluyordu.
    Arşiv aslında hedefe SORUNSUZ yüklenmiş oluyordu; eklenti son adımda panele kayıt
    bilgisini yalnızca BİR KEZ gönderiyor, o tur tamamlanamazsa sonraki denemelerde boş
    gönderiyordu. Panel de bunu “bilgi gelmedi” sayıp yedeği başarısız işaretliyordu.
    Artık kayıt bilgisi saklanıyor ve gerektiğinde tekrar gönderiliyor.
  • Bu durumda takılı kalmış eski bir oturum varsa artık otomatik temizleniyor; eskiden
    o oturum sonraki her yedeği de düşürüyordu.

1.57.1 — 2026-08-18

  • Düzeltildi: bazı hostinglerde yedek “Call to undefined function disk_free_space()”
    hatasıyla düşüyordu.
    1.57.0’daki yeni disk/kota kontrolü, bu fonksiyonu kapatan
    paylaşımlı hostinglerde ölümcül hataya yol açıyordu. Artık fonksiyonun varlığı tek bir
    yerden kontrol ediliyor; yoksa disk bilgisi “ölçülemedi” olarak geçiliyor ve yedek
    normal şekilde devam ediyor.
  • Not: aynı sınıf hata 1.53.x’te de yaşanmıştı. Kontrolün her çağrı yerinde elle
    tekrarlanması hatayı geri getirdiği için artık tek bir yardımcıdan geçiliyor ve
    otomatik bir kontrol, korumasız çağrı eklenmesini engelliyor.

1.57.0 — 2026-08-18

  • Yedek artık BAŞLAMADAN önce sistemi kontrol ediyor. Eskiden bir sorun varsa (klasör
    yazılamıyor, disk dolu, veritabanına erişilemiyor, ZipArchive yok) bunu ancak yedek %95’e
    geldiğinde, 15-20 dakika sonra öğreniyordunuz. Artık yedek başlamadan önce tek bayt
    paketlenmeden kontrol yapılıyor ve sorun varsa saniyeler içinde net bir mesajla duruyor.
    Kontrol edilenler: PHP sürümü, gerekli eklentiler (ZipArchive, cURL), yedek klasörüne
    GERÇEK yazma testi, disk/kota, veritabanı erişimi, bellek ve süre limitleri, yarım kalmış
    yedek artıkları.
  • Yazma testi bilerek gerçek bir dosya yazıp siliyor: paylaşımlı hostingde izin bilgisi
    “yazılabilir” dese bile kota veya bağlama sorunu yüzünden yazma başarısız olabiliyor —
    bugün yaşanan arıza tam olarak bu türdendi.
  • Uyarılar yedeği durdurmaz, yalnızca bildirilir; yedek yalnızca gerçekten engelleyici bir
    sorun varsa başlatılmaz.

1.56.0 — 2026-08-18

  • Yedek klasörü artık eklenti etkinleştirilirken oluşturuluyor. Eskiden klasör ilk yedeğin
    SONUNDA, arşiv paketlendikten sonra yaratılıyordu. Bu yüzden yazılamayan bir klasör ancak
    saatler sonra, yedek %95’teyken hata veriyordu; o zamana kadar harcanan süre boşa gidiyordu.
    Artık kurulumda deneniyor: klasör oluşturulup korumaları (.htaccess, index.php) HEMEN
    uygulanıyor. Bir sorun varsa yönetim panelinde net bir uyarı görüyorsunuz — yedeğin
    başarısız olmasını beklemenize gerek kalmıyor.
  • Sorunu düzeltince uyarı kendiliğinden kalkıyor. Yükleme klasörü yolunu düzelttiğinizde
    eklentiyi yeniden etkinleştirmeniz gerekmez; panel her açılışta (saatte en fazla bir kez)
    yeniden deneyip klasörü oluşturur ve uyarıyı kaldırır.

1.55.8 — 2026-08-18

  • Sunucu taşıması sonrası yedek alınamıyordu (kritik). Site başka bir sunucuya taşındığında
    veritabanı, ESKİ sunucunun mutlak klasör yolunu taşımaya devam edebiliyor (Ayarlar > Medya
    altındaki “upload_path” ayarı). WordPress yükleme klasörünü oradan bildirdiği için eklenti,
    yeni sunucuda HİÇ VAR OLMAYAN bir yola yazmaya çalışıyor ve yedek her seferinde
    “Hedef klasör oluşturulamadı — Permission denied” ile ölüyordu. Diskte 30 GB boş yer olsa bile.
    Eklenti artık bu yola körü körüne güvenmiyor: kullanılabilir olduğunu (var + yazılabilir)
    doğruluyor, değilse kurulumun gerçek yapısından (WP_CONTENT_DIR, ardından ABSPATH) sağlam bir
    klasöre düşüyor. Yol hiçbir şekilde kullanılamıyorsa hata mesajı ne yapmanız gerektiğini
    söylüyor.

1.55.7 — 2026-08-18

  • “Hedef klasör oluşturulamadı” hatası artık sebebini ÖLÇEREK söylüyor. Önceki sürüm
    “üst klasörde yazma izni yok olabilir” diyordu; “olabilir” sizi doğru yere götürmez, çünkü
    bu hata hem izin, hem disk/kota dolması, hem de bir üst klasörün hiç bulunmaması yüzünden
    oluşur ve çözümleri birbirinden farklıdır. Artık mesaj şunları içeriyor: en derin VAR OLAN
    üst klasör hangisi, o klasör yazılabilir mi, orada ne kadar boş alan var ve sistemin kendi
    hata mesajı. Böylece disk mi dolu yoksa izin mi eksik, bakar bakmaz görülüyor.

1.55.6 — 2026-08-17

  • “Ne kadar yer kazandırır?” ölçümü ile yedeğin gerçekte aldığı dosya sayısı ayrışıyordu.
    İlerleme ekranı “5717 dosya” derken ölçüm paneli “5724 dosya” diyordu. Sebep: ölçüm, yedeği
    üreten kodun iki elemesini yapmıyordu — eklentinin kendi geçici artıkları ve okunamayan
    dosyalar. Yani panel, yedeğe girmeyecek dosyaları “girecek” diye sayıyordu.
    Artık üç yer de (parçalı yedek listesi, tam yedek ve ölçüm paneli) tek bir karar noktasını
    kullanıyor; gösterilen sayı yedeğin gerçekte yaptığı işle aynı olmak zorunda.
  • Ölçüm paneli artık yalnızca SİZİN kalıplarınızın elediğini “kazanç” olarak sayıyor; varsayılan
    olarak zaten hariç olanlar (önbellek, yedek klasörü, okunamayan dosya) rakamı şişirmiyor.

1.55.5 — 2026-08-17

  • Başka eklentilerin uyarıları Yedekalma ekranlarında görünmüyor artık. WordPress uyarı
    kancasını tüm yönetim sayfalarında çalıştırdığı için, temanızın “şu eklenti pasif” uyarısı
    veya başka bir eklentinin “veri toplamamıza izin verir misiniz?” kutusu Yedekalma ayar
    sayfasının en üstünde çıkıyordu; bir yedekleme ekranında bunları görmek “bu benim yedeğimle
    mi ilgili?” karışıklığı yaratıyordu. Artık yalnızca KENDİ ekranlarımızda üçüncü taraf
    uyarıları gizleniyor. WordPress çekirdeğinin uyarıları (güvenlik/güncelleme) KORUNUR ve
    sitenizin diğer sayfalarına hiç dokunulmaz.
  • Simge (dashicons) bağımlılığı açıkça beyan edildi. Arayüzdeki simgeler çekirdeğin
    stil dosyasını zaten yüklemiş olmasına dayanıyordu; bir tema veya eklenti onu kaldırırsa
    simgelerin yerinde boş kutular kalıyordu. Artık kendi stilimizin bağımlılığı olarak
    yükleniyor.

1.55.4 — 2026-08-17

  • “Önerilen gereksiz dosya ve klasörleri hariç tut” özelliği kaldırıldı. Tek tıkla 35 kural
    uygulamak, yedeğinizin içeriğini daraltan kararları görmeden kabul etmenize yol açıyordu.
    Neyin hariç tutulacağına artık siz karar veriyorsunuz: sağdaki klasör gezgininden istediğiniz
    klasörü seçip hariç tutabilir, kaydetmeden önce “Ne kadar yer kazandırır?” ile etkisini
    ölçebilirsiniz. Önbellek klasörleri, .git, node_modules ve tanınan yedek eklentisi klasörleri
    zaten varsayılan olarak hariçtir — onlar için bir şey yapmanız gerekmez.

1.55.3 — 2026-08-17

  • “Önerilen gereksiz dosyaları hariç tut” artık NEDEN gereksiz olduklarını da gösteriyor.
    Düğme 35 kalıbı tek tıkla ekliyordu ama her kalıbın gerekçesi ayrı bir pencerede duruyor ve
    yalnızca ayrı bir bağlantıyla açılıyordu. Yani yedeğinizin içeriğini daraltan 35 kuralı
    görmeden kabul etmiş oluyordunuz. Artık kalıplar eklendiği anda gerekçe listesi açılıyor:
    her satırda kalıp, ne olduğu ve neden yedeğe girmesine gerek olmadığı yazıyor; eklenenler
    “✓ eklendi” olarak işaretleniyor. Katılmadığınız satırı kaydetmeden önce kutudan silebilirsiniz.
    Listede site içeriği (yüklemeler, temalar, eklentiler, çeviriler, vendor/) ASLA yer almaz.

1.55.2 — 2026-08-17

  • Yedek, kendi eski arşivini yedeklemeye çalışıyordu (kritik). Eklenti yedeği geçici bir
    dosyada kurar (wp-content/uploads/yedekalma_full_…). Bir yedek koşusu yarıda kalırsa bu
    geçici dosya diskte kalıyor ve SONRAKİ yedek onu normal bir site dosyası sanıp arşive
    eklemeye çalışıyordu. Artık yüzlerce MB olan bu artık tek bir adıma sığmadığı için yedek
    ilerleyemiyor, hosting isteği kesiyor ve yedek hiç tamamlanmıyordu. Aynı şey eski
    kurulumdan kalan YedekAlmaBackup-… klasörleri için de geçerliydi.
    Artık eklentinin kendi geçici dosyaları ve yedek klasörleri her koşuda hariç tutuluyor.
    Belirti: yedeğin sonlara doğru tıkanıp saatlerce aynı dosyada beklemesi, sitenizin gerçekte
    olduğundan çok daha büyük ölçülmesi.
  • Not: diskte kalmış eski yedekalma_full_… dosyalarını silmek yer kazandırır; yedeğe artık
    girmiyorlar ama yer kaplamayı sürdürürler.

1.55.1 — 2026-08-17

  • “Yükleme başarısız” artık SEBEBİNİ söylüyor. Yedek kendi sunucunuzda saklanırken (domain
    içi depolama) bir sorun çıkarsa panelde yalnızca “Yükleme başarısız: upload_failed” yazıyordu;
    disk mi doldu, klasöre yazma izni mi yok, hiç belli olmuyordu. Bu adımda beş ayrı hata yolu
    vardı ve hiçbiri gerekçe döndürmüyordu. Artık disk boş alanı ölçülüyor, yazma izni sınanıyor
    ve mesaj net: “Diskte yeterli yer yok: arşiv 412,0 MB, boş alan 63,4 MB — eski yedekleri
    silip yeniden deneyin.” gibi.
  • Yarım yazılan arşiv artık fark ediliyor. Disk yazma sırasında dolarsa dosya eksik kalıyor
    ve bu sessizce “başarılı” sayılabiliyordu. Artık yazılan boyut beklenenle karşılaştırılıyor;
    eksikse yarım dosya siliniyor ve durum açıkça bildiriliyor.

1.55.0 — 2026-08-17

  • Yedeğe giremeyen dosyalar artık BİLDİRİLİYOR (kritik). Bir dosya izin hatası, açılamayan
    klasör ya da disk/kota sorunu yüzünden okunamazsa, eklenti onu SESSİZCE atlıyordu: yedek
    “tamamlandı” damgası alıyor, o dosyalar arşivde bulunmuyordu. Daha kötüsü, klasör gezinmesi
    bir izin hatasıyla kesilirse YARIM dosya listesi tam liste gibi kullanılıyordu — yani bütün
    bir klasör sessizce yedeğin dışında kalabiliyordu. Bunu ancak geri yüklerken fark ederdiniz.
    Artık okunamayan her dosya/klasör sayılıyor ve yedekalma.com paneline bildiriliyor; panelde
    yedeğin yanında “⚠ N dosya arşive eklenemedi — bu yedek EKSİK” uyarısı görünüyor.
  • Panel tarafı da aynı gün düzeltildi: bu bilgi eskiden gönderiliyor ama panelde OKUNMUYORDU.

1.54.9 — 2026-08-17

  • Hariç tutma kalıplarında karakter sınıfı ([0-9]) uygulanmıyordu. logs[0-9] ya da
    20[12][0-9] gibi bir kalıp yazdıysanız, ekranda “hariç tutulan yol” olarak sayılıyor ama
    yedeğe GİRİYORDU. Aynı kalıp panelin PHP modülünde doğru çalıştığı için iki üründe farklı
    sonuç doğuyordu; artık ikisi birebir aynı davranıyor. Yalnız * ve ? kullandıysanız
    bu sorundan etkilenmediniz.

1.54.8 — 2026-08-17

  • “Diskte bulundu” yedekleri silinemiyordu (kritik kullanılabilirlik). Yedek listesi iki
    kaynağı birleştirir: eklentinin kendi kaydı ve diskte tarama ile bulunan arşivler (satırda
    “Diskte bulundu” etiketiyle görünür). İkinci gruptaki bir yedeği seçip “Sil” dediğinizde
    işlem tamamlanmıyor, satır listede kalıyordu. Sebep: bu satırların kaydı olmadığı için
    eklenti onları bulut yedeği sanıp yedekalma.com’a bilmediği bir kimlikle silme isteği
    gönderiyordu. Artık disk taramasında bulunup dosya doğrudan siliniyor (yol güvenlik
    denetiminden geçirilerek).
  • Arşivi elle sildiyseniz kayıt artık temizlenebiliyor. Bir yedek dosyasını FTP/dosya
    yöneticisiyle kendiniz sildiyseniz, “Sil” işlemi “dosya bulunamadı” diyerek duruyor ve
    listeyi hiç temizleyemiyordunuz. Silme artık idempotent: dosya zaten yoksa istenen sonuç
    sağlanmış sayılır ve kayıt kaldırılır. Dosya diskte VARSA ama silinemiyorsa (izin/kilit)
    bu yine açıkça hata olarak bildirilir — kaydın kalkıp dosyanın kalması engellenir.
    Aynı kural bulut tarafında da geçerli: panelde kaydı bulunmayan bir yedek “zaten silinmiş”
    sayılır.

1.54.7 — 2026-08-17

  • Sayfa önbelleği panelin sitenizi okumasını engelliyordu (kritik). LiteSpeed Cache,
    WP Rocket veya benzeri bir önbellek eklentisi kullanıyorsanız, eklentinin yedekalma.com
    ile konuştuğu /wp-json/ yanıtları önbelleğe alınabiliyordu. Sonucu: panelde “Modül
    durumu alınamadı — eklentiyi güncelleyin” uyarısı çıkıyor, eklentiyi güncellemek de bir
    şey değiştirmiyordu; çünkü sorun eklentide değil, araya giren önbellekteydi.
    Ayrıca aynı önbellek, yetkili bir isteğe verilen yanıtı yetkisiz bir ziyaretçiye
    sunabiliyordu — sitenizin dosya ve veritabanı boyutu bu yolla görünür hâle gelebiliyordu.
    Eklenti artık kendi REST yanıtlarını açıkça önbelleklenemez olarak işaretliyor
    (no-store + DONOTCACHEPAGE + LiteSpeed kontrolü). Yedeklemeniz bundan etkilenmiyordu;
    etkilenen yalnızca panelin ayarlarınızı okuması ve durum göstergeleriydi.
  • S3 uyumlu depolamada özel port kullanan hedeflerde imza hatası (kritik). Kendi
    sunucunuzda çalışan MinIO gibi, adresinde port bulunan (https://depo.ornek.com:9000)
    bir S3 hedefi tanımladıysanız, eklentinin ürettiği imza panelin ürettiğinden FARKLI
    olabiliyordu ve yükleme SignatureDoesNotMatch hatasıyla sessizce reddediliyordu.
    Sebep: Host başlığı varsayılan portu (http’de 80, https’te 443) göstermez; eklenti
    ise portu her koşulda ekliyordu. Artık panelle birebir aynı kural uygulanıyor.
    Amazon S3, Google Cloud Storage, Wasabi gibi standart portlu hedefleri kullanıyorsanız
    bu sorundan etkilenmediniz.

1.54.6

  • Bu sürüm SAHAYA HİÇ ÇIKMADI. Sürüm numarası deponun içinde bir an için ayarlandı ama
    yayınlanmadan önce bir sonraki düzeltmeyle birleştirildi ve 1.54.7 olarak yayınlandı.
    Kayıt, “1.54.6’ya ne oldu?” sorusunun cevabı olarak burada duruyor.

1.54.5 — 2026-08-17

  • Hariç tutma listesi yedeğe HİÇ uygulanmıyordu (kritik). Dosya bölümünde belirlediğiniz
    hariç tutma kalıpları yalnızca ekranda çalışıyordu: rozet doğru sayıyı gösteriyor,
    “ne kadar yer kazandırır?” ölçümü doğru sonucu veriyor, panele bildirilen liste de
    doğruydu — ama yedeği ÜRETEN kod bu listeyi BAŞKA bir kayıttan okuyordu ve oraya hiçbir
    zaman bir şey yazılmıyordu. Sonuç: liste daima boş sayılıyor ve hariç tuttuğunuz her şey
    arşive giriyordu. Aynı hata boyut ölçümünü de etkiliyordu (site boyutu olduğundan büyük
    görünüyordu). Sahada ölçüldü: tahmin “yedeğe giren 9.214 dosya” derken yedek 16.669 dosya
    işliyordu — aradaki ~8,1 GB tam olarak hariç tutulmuş olması gereken veriydi. Artık
    liste tek bir kaynaktan okunuyor; eski kayıtta değer bırakmış kurulumlar için o kayıt da
    birleştiriliyor (hiçbir ayar kaybolmaz).

1.54.4 — 2026-08-17

  • Aynı sitede iki yedek birden başlayabiliyordu (kritik). Eklentinin iki yedek yolu
    vardı ve her biri AYRI bir çalışma kilidi kullanıyordu: panelin sürdürdüğü parçalı
    yedek ile zamanlayıcının tetiklediği yedek birbirini hiç görmüyordu. Panel bir yedeği
    parça parça sürdürürken gelen zamanlı tetik, aynı sitede İKİNCİ bir tam yedek
    başlatabiliyordu — iki kat disk, iki kat CPU ve zaten sınırlı bir sunucuda ikisinin de
    bitememesi. Artık iki yol tek kilidi paylaşıyor: hangisi önce başladıysa diğeri
    ilerlemeyi bozmadan “meşgul” deyip çekiliyor.

1.54.3 — 2026-08-17

  • Eklentinin KENDİ zamanlanmış yedeği büyük sitelerde sonsuz döngüye giriyordu (kritik).
    Panelden tetiklenen yedek 1.49’da yeni arşiv motoruna geçirilmişti; eklentinin kendi
    zamanlamasıyla çalışan yedek ise eski motorda (PHP ZipArchive) kalmıştı. Bu motor arşivi
    her kapanışta BAŞTAN YAZAR — üstelik açık dosya sınırı yüzünden her 400 dosyada bir
    kapanış yapılıyordu. Sonuç: arşiv büyüdükçe her tur, arşivin tamamını yanına açtığı
    geçici bir dosyaya (.part) yeniden kopyalıyor; paylaşımlı hosting isteği 60 saniyede
    kestiği için kopya hep yarım kalıyor ve bir sonraki tur sıfırdan başlıyordu. Geçici
    klasörde büyüyüp büyüyüp sıfırlanan bir dosya, sürekli meşgul bir sunucu ve hiç bitmeyen
    bir yedek. Artık her iki yol da aynı akış motorunu kullanıyor: girdiler arşivin sonuna
    eklenir, hiçbir aşamada yeniden yazma ve geçici kopya olmaz.

1.54.2 — 2026-08-17

  • Büyük sitelerde yedek asla bitmiyordu — arşiv artık kopyalanmıyor, TAŞINIYOR (kritik).
    “Domain içi depolama” hedefinde son adım, tamamlanan arşivi geçici klasörden yedek
    klasörüne koymaktı ve bunu KOPYALAYARAK yapıyordu. 7-9 GB’lık bir sitede bu kopya
    dakikalar sürer; paylaşımlı hosting isteği 60 saniyede kestiği için kopya hep yarım
    kalıyor ve bir sonraki tur AYNI kopyayı sıfırdan başlatıyordu. Sonuç: yedek klasöründe
    büyüyüp büyüyüp sıfırlanan bir dosya, dolan disk ve hiç tamamlanmayan bir yedek.
    Kaynak ve hedef zaten aynı disktedir; artık dosya taşınıyor — işlem anında bitiyor,
    ek disk alanı istemiyor ve yarıda kalamıyor. Ek bir yedek hedefiniz (mirror) varsa
    arşive hâlâ ihtiyaç duyulduğu için eski davranış sürüyor.
  • Arşivin SHA-256 özeti her turda yeniden hesaplanıyordu (kritik). Yükleme aşamasına
    birden çok kez girilir (izin iste yükle kayıt onayı) ve her girişte 7-9 GB’lık
    arşivin tamamı baştan sona okunup özetleniyordu. Tek geçiş bile 60 saniyelik istek
    penceresine sığmadığı için yedek, arşiv çoktan hazırken %95’te takılı kalıyordu.
    Arşiv o noktadan sonra değişmediği için özet artık bir kez hesaplanıyor.
  • Yarım kalan yedeklerin GB’lık artıkları geride kalabiliyordu. Yarıda kesilen bir
    yedeğin oturum bilgisi kaybolursa (nesne önbelleği temizlenir, veritabanı budanır)
    eklentinin elinde silinecek dosyanın yolu kalmıyordu; sahada iki terk edilmiş arşiv
    (9,0 GB + 7,6 GB) aynı anda görüldü. Geçici dosya yolları artık oturumdan bağımsız
    olarak da tutuluyor ve bir sonraki yedek başlarken önceki koşunun artıkları siliniyor.

1.54.1 — 2026-08-17

  • Arşiv yazıcısında kısa yazma artık yakalanıyor (yedek bütünlüğü). Disk ya da hosting
    kotası dolduğunda işletim sistemi bir yazmayı YARIM tamamlayabilir. Yazıcı yalnızca “yazma
    tamamen başarısız oldu mu” diye bakıyordu; yarım yazma başarı sayılıyor ve arşivde izlenen
    konum gerçek dosya boyutundan kayıyordu. Bu kayma, o noktadan sonraki tüm dosya kayıtlarını
    yanlış yere işaret ettirir — arşiv “geçerli” görünür ama açılamaz. Artık yarım yazmalar
    tamamlanıyor, gerçekten yazılamıyorsa paketleme durduruluyor. Aynı boşluk 4 GB üstü
    arşivlerin son kaydında ve dosya küçüldüğünde yazılan dolguda da vardı.
  • Şifreli yedekte “yer yok” hatası artık doğru söyleniyor. Şifreleme geçici olarak
    arşivin ~2 katı boş alan ister; alan yetmediğinde mesaj “openssl yok ya da doğrulama
    başarısız” diyordu ve sorun yanlış yerde aranıyordu. Artık gereken/mevcut alan yazılıyor
    ve şifreleme daha başlamadan kontrol ediliyor.

1.54.0 — 2026-08-17

  • Yedek bütünlüğü — arşiv artık yüklenmeden ÖNCE doğrulanıyor (kritik). Eklenti, ürettiği
    arşivi bugüne kadar hiç sınamıyordu: yazma sırasında bir hata olsa bile (disk dolu, hosting
    kotası, geçici I/O hatası) paketleme sonuna kadar devam ediyor, dosya “geçerli bir zip” gibi
    görünüyor ve bulut alanınıza öyle yükleniyordu. Bozukluk ancak GERİ YÜKLEME günü ortaya
    çıkıyordu. Artık: (1) yazma hatası olduğu anda paketleme durdurulur ve yarım arşiv silinir —
    yanlış bir “başarılı” kaydı oluşmaz; (2) tamamlanan her arşiv, yüklemeden ve şifrelemeden
    önce yapısal olarak doğrulanır; doğrulamayı geçemeyen arşiv gönderilmez.
  • Artımlı yedeklerde “değişmemiş dosyayı atla” kuralı düzeltildi. Kaynak sınırı olan
    hosting’lerde devreye giren parçalı yedekleme yolunda bu kural hesaplanıyor ama
    UYGULANMIYORDU: yedek “artımlı” olarak işaretlense de her turda sitenin TAMAMI yeniden
    paketlenip yükleniyordu. Bu, gereksiz süre, bant genişliği ve bulut alanı tüketiyordu.
  • Yedeklenemeyen dosya artık sessiz kalmıyor. Bir dosya izin/okuma hatası yüzünden arşive
    eklenemediğinde eskiden hiçbir iz kalmıyor, üstelik o dosya “yedeklendi” listesine yazıldığı
    için SONRAKİ artımlı yedeklerde de atlanıyordu — yani bir daha hiçbir yedeğe girmiyordu.
    Artık yalnızca gerçekten arşive giren dosyalar listeye yazılır ve eklenemeyen dosya sayısı
    ilerleme ekranında uyarı olarak gösterilir.
  • Veritabanı olmadan “tam yedek” üretilmiyor. Doğrudan yedekleme yolunda veritabanı dökümü
    arşive eklenemese bile yedek başarılı sayılıyordu; içinde veritabanı olmayan bu arşiv
    saklama sayacına girip gerçekten tam olan eski bir yedeğin silinmesine yol açabiliyordu.
    Artık bu durumda yedek açıkça başarısız olur.
  • E-posta yedeğinde de aynı koruma. Bir e-postanın arşive yazılması başarısız olduğunda
    ileti artık “yedeklendi” sayılmıyor.
  • PHP sürüm kapısı eklendi: eklenti, gerektirdiği PHP sürümünün altındaki sunucularda
    dosyalarını yüklemeden önce durur ve yönetici paneline açıklayıcı bir uyarı basar.

Geri yükleme düzeltmeleri (aynı sürümde):

  • Geri yüklemede bileşen seçimi artık UYGULANIYOR (kritik). Panelde “Veritabanı” kutusunu
    kapatıp yalnızca dosyaları geri yüklediğinizde eklenti bu seçimi YOK SAYIYOR ve yedekteki
    veritabanı dökümünü canlı veritabanınıza uyguluyordu — açıkça hariç tuttuğunuz, geri dönüşü
    olmayan bir üzerine yazma. Dosya, veritabanı ve e-posta seçimlerinin üçü de artık dikkate
    alınıyor.
  • “Bu dosyaya dokunma” listesi artık SİLME adımında da geçerli. Hariç tutma yalnızca yazma
    sırasında uygulanıyordu; artımlı geri yüklemenin “silinenler” listesinde yer alan korumalı
    bir yol (tipik olarak wp-config.php veya wp-content/uploads altındaki dosyalar) yine de
    siteden siliniyordu — yani koruma tam tersine dönüyordu.
  • Hiçbir dosya yazılamadıysa silme adımı artık çalışmıyor. Arşiv açıldı ama izin/disk
    sorunu yüzünden tek bir dosya bile yazılamadıysa, geri yükleme siteyi onarmak yerine yalnızca
    silme uyguluyordu — kurtarma anında ek veri kaybı. Artık bu durumda silme atlanır ve sebebi
    raporlanır.
  • Yarım veritabanı dökümü artık uygulanmadan reddediliyor. Sıkıştırılmış (.sql.gz) dökümde
    “tamamlandı” işareti yalnızca tüm ifadeler ÇALIŞTIRILDIKTAN sonra kontrol ediliyordu: yarım
    bir döküm canlı veritabanına zaten uygulanmış oluyor, ardından “kısmi geri yükleme iptal
    edildi” deniyordu — geri alma diye bir şey yoktu. Artık döküm önce taranıyor; işaret yoksa
    veritabanına tek bir ifade bile uygulanmıyor.
  • Yarım yazılan dosya artık sitede bırakılmıyor. Geri yükleme sırasında disk dolarsa kesik
    bir dosya yazılıp “başarılı” sayılıyordu. Artık kesik dosya siliniyor, sayılıyor ve sonuç
    “kısmi” olarak işaretleniyor.
  • Geri yükleme artık eklentinin kendi dosyalarının üzerine yazmıyor. Arşivdeki eski eklenti
    sürümü, işlem sürerken çalışan eklentinin üzerine yazılabiliyordu.
  • Kullanılmayan üç geri yükleme uç noktası kaldırıldı (/restore-zip, /restore-db,
    /restore-wpconfig). Bunlar yukarıdaki korumaların hiçbirini uygulamıyordu ve zaten
    çağrılmıyorlardı; ayrıca sitenizin kök dizinindeki dosyaları (index.php, wp-config.php,
    .htaccess …) sessizce atlayan bir hata içeriyorlardı.

1.53.3 — 2026-08-16

  • Geri yüklemede “bu dosyayı koru” seçimi artık UYGULANIYOR (önemli). Panelde bir dosyayı
    ya da klasörü geri yükleme dışında bıraktığınızda, eklenti bu seçimi YOK SAYIYOR ve dosyanın
    üzerine yazıyordu. Tipik olarak wp-config.php, .htaccess ve …