Virtual Products Management Pro - Kombinasyon Başına İndirilebilir Dosya, Sürüm ve GitHub Senkronizasyonu
PrestaShop 9, Sanal ürün ile Kombinasyonlu ürün tiplerini birbirini dışlayan tipler olarak ele alır — bu yüzden birkaç sürüm veya lisans seviyesiyle satılan bir ürün normal şartlarda her varyantı için ayrı bir dosya taşıyamaz. Bu modül indirilebilir dosyaları bu kısıtlamadan bağımsız olarak yönetir; her kombinasyona kendi dosyasını, kendi sürüm numarasını ve kendi değişiklik günlüğünü verir. Ürünleri tek tek açmak yerine tüm kataloğu tek sayfadan yönetin, bir kombinasyonu GitHub deposuna bağlayıp dosyayı, sürümü ve değişiklik günlüğünü tek düğmeyle çekin, yeni sürüm çıktığında önceki alıcılara e-posta gönderin. PrestaShop 1.7 – 9 için.
Bu modülün çözmek için var olduğu PrestaShop 9 sorunu
PrestaShop 9'da "Sanal ürün" ile "Kombinasyonlu ürün", birbirini dışlayan iki ürün tipidir. Yazılım, e-kitap, örnek dosya veya lisans satmaya tek varyantla devam ettiğiniz sürece bu bir sorun değildir; ama Standart ve Pro, tek kullanıcı ve ekip, Windows ve macOS gibi birden fazla varyant sattığınız anda kombinasyonlara ihtiyaç duyarsınız ve tam o anda yerleşik sanal ürün dosya alanı ortadan kaybolur.
Bu modül indirilebilir dosyaları PrestaShop'un sanal ürün sisteminin tamamen dışında yönetir. Ürünü Kombinasyonlu ürün olarak oluşturun, varyantları tanımlayın ve her birine bir dosya yükleyin. Her kombinasyon kendi dosyasına, kendi sürüm numarasına ve kendi değişiklik günlüğüne sahip olur.
Ürünleri tek tek açmak yerine tek sayfa
Tüm kataloğun dosyaları tek bir ekranda toplanır. Bir ürünü genişletin, kombinasyonlarını görün, dosya yükleyin veya değiştirin, sürümü girin, değişiklik günlüğünü yazın. Sayfanın üst kısmındaki yedi sayaç durumu bir bakışta gösterir — Sanal Dosyalar, Ürünler, Kombinasyon Dosyaları, Basit Dosyalar, Eksik Dosyalar, Toplam İndirmeler ve Müşteriler — böylece dosyası hiç yüklenmemiş bir ürün, müşteri tarafından keşfedilmek yerine burada kırmızıyla karşınıza çıkar.
Her dosya ayrıca kendi indirme limitini, gün cinsinden geçerlilik süresini ve son kullanma tarihini taşır; yani bir lisansı süresiz devretmek yerine zamana bağlayabilirsiniz. İndirilebilir her format çalışır: ZIP, PDF, MP3, FLAC, EPUB veya sattığınız başka ne varsa.
Bir kombinasyonu GitHub'a bağlayın ve dosya yüklemeyi bırakın
Her kombinasyon iki moddan biriyle çalışır: Dosya Yükle veya GitHub Deposu. GitHub moduna geçirin, bir owner/repo ve isterseniz bir dal ya da etiket girin; tek bir GitHub'dan Getir / Senkronize Et düğmesi dosyayı, sürümü ve değişiklik günlüğünü birlikte çeker — sürümü paketleyerek, sürüm numarasını ayıklayarak ve son commit başlıklarını sunucu tarafında okuyarak; tarayıcınızda sadece bir alanı doldurmakla yetinmeyerek.
Özel depolar bir Personal Access Token ile desteklenir. Tüm mağaza için bir kez varsayılan token tanımlayın, farklı bir deponun farklı kimlik bilgileri gerektirdiği yerde ürün bazında geçersiz kılın.
Bir Recent Sync Log (son senkronizasyon kaydı) tablosu her çalıştırmada gerçekte ne olduğunu kaydeder — ürün, kombinasyon, durum, mesaj ve tarih — ve eski → yeni sürüm geçişini gösterir, çalıştırma hiçbir şey bulamadıysa da bunu açıkça "no version change" olarak belirtir. Tablonun üstünde bir Last automatic run (son otomatik çalıştırma) zaman damgası yer alır; böylece zamanlanmış senkronizasyonun gerçekten tetiklenip tetiklendiğini ya da hiç çalışmadığını bir bakışta anlarsınız.
Dürüst bir uyarı: saatlik senkronizasyon PrestaShop'un kendi cron görev sistemi üzerinden çalışır ve bunu tetiklemek için sunucunuzda gerçek bir harici cron gerekir. Bu kurulmadığı sürece manuel Getir / Senkronize Et düğmesi aynı işi isteğe bağlı olarak yapar — ve Last automatic run satırı never demeye devam eder; bu satırın gösterilme amacı da tam olarak budur.
Müşterilerinize güncelleme olduğunu söyleyin
Her kombinasyonun kendi Müşterileri Bilgilendir düğmesi vardır; bu düğme o ürünü satın almış müşterilere yeni bir sürümün hazır olduğunu bildiren bir e-posta gönderir. Lisans veya araç olarak satılan her şeyde bu tek düğme, sürüme geçen müşteri ile ürüne sahip olduğunu unutan müşteri arasındaki farktır.
Müşteriler için gerçek bir indirme alanı
Alıcılar dosyalarını hesaplarında ve sipariş detay sayfasında, hak kazandıkları sürümle birlikte görür. Bu, olağan PrestaShop hesap deneyiminin ta kendisidir; yalnızca çekirdeğin temsil edemediği kombinasyon bazlı dosyaları da kapsayacak şekilde genişletilmiştir.
Sürüm 1.5.x neyi düzeltti
Sürüm 1.5.2, aylarca gizli kalabilecek türden olduğu için bilinmeye değer bir dizi gerçek hatayı düzeltti.
Değişiklik günlüğü alanı senkronizasyonla hiçbir zaman güncellenemiyordu. Her iki senkronizasyon yolu da UPDATE ifadelerinde changelog alanını atlıyordu; dolayısıyla bir kombinasyonun satırı bir kez oluştuktan sonra alan, elle en son yazılmış değerde donup kalıyordu — ayrıca iki yolun hiçbiri GitHub'dan sunucu tarafında değişiklik günlüğü içeriği çekmiyordu. Senkronizasyon artık çözümlenen ref'in son commit başlıklarını kendisi çekiyor ve aynı işlem içinde kaydediyor; hem manuel hem otomatik yolda.
Manuel ve otomatik senkronizasyon yolları birbirinden ayrışmıştı. Manuel uç nokta GitHub çağrılarını, zip işlemeyi ve sürüm ayıklamayı bağımsız olarak yeniden uyguluyordu; bu yüzden birine uygulanan bir düzeltme diğerine sessizce uygulanmıyordu. Manuel yol artık paylaşılan senkronizasyon sınıfına devrediyor — ama depoyu ve ref'i yine baktığınız formdan alıyor, böylece kaydetmeden önce dene akışı çalışmaya devam ediyor.
Saatlik senkronizasyon hiçbir ayrıntı vermeden her zaman "success" kaydı yazıyordu, hiçbir şey değişmediğinde bile; bu da sessiz geçen bir çalıştırmayı sessiz bir hatadan ayırmak için kaydı işe yaramaz hale getiriyordu. Ayrıca yeni kurulumlar cron kancasını hiç kaydetmiyordu — bunu yalnızca yapılandırma sayfasının kendini onaran bloğu yapıyordu; dolayısıyla bir yönetici o sayfayı açmadıkça saatlik senkronizasyon tetiklenemiyordu. Kurulum artık kancayı doğrudan kaydediyor.
Planlamanız gereken tek şey
Ürün PrestaShop'ta Sanal olarak işaretlenmediği için standart kargo hesaplaması bu ürüne de uygulanmaya devam eder. Bu ürünleri kargo ücretinden muaf tutmak için onları sıfır maliyetli / ücretsiz kargo kuralı olan bir taşıyıcıya atayın. Bu tek seferlik bir kurulum adımıdır ve modülün kendi yapılandırma sayfası bunu, canlı bir siparişte keşfetmenize bırakmak yerine açıkça belirtir.
Uyumluluk
PrestaShop 1.7, 8 ve 9, sekiz dilde: Almanca, Felemenkçe, Fransızca, İngilizce, İspanyolca, İtalyanca, Lehçe ve Türkçe. Çoklu mağaza uyumlu. Modülü kaldırmak, modülün verilerini ve yönettiği sanal dosyaları siler; kaldırma onayı bunu açıkça belirtir — yeniden kurmayı düşünüyorsanız önce bir kopya alın.
Sıkça sorulan sorular
PrestaShop 9'da buna neden ihtiyacım var?
Çünkü PS 9, Sanal ürün ile Kombinasyonlu ürün tiplerini birbirini dışlayan tipler haline getiriyor. İndirilebilir bir ürünü birkaç sürüm veya seviyeyle satıyorsanız çekirdek her varyanta kendi dosyasını veremez. Bu modül verebilir.
Her kombinasyonun farklı bir dosyası ve sürümü olabilir mi?
Evet — kendi dosyası, kendi sürüm numarası ve kendi değişiklik günlüğü. Modülün amacı da bu.
GitHub senkronizasyonu nasıl çalışır?
Bir kombinasyonu GitHub Deposu moduna geçirin, bir owner/repo ile isteğe bağlı bir dal ya da etiket girin ve GitHub'dan Getir / Senkronize Et düğmesine basın — dosyayı, sürümü ve değişiklik günlüğünü tek seferde çeker. Özel depolar bir Personal Access Token ile çalışır; token'ı bir kez mağaza varsayılanı olarak tanımlar, ürün bazında geçersiz kılabilirsiniz. Saatlik otomatik senkronizasyon için ek olarak PrestaShop'un cron görev çalıştırıcısı ve onu tetikleyen, sunucunuzdaki gerçek bir cron gerekir.
Bir güncelleme yayınladığımda müşterilerim haberdar olur mu?
Kombinasyondaki Müşterileri Bilgilendir düğmesine basarsanız evet — bu düğme o ürünü satın almış müşterilere e-posta gönderir.
Bu ürünlerden kargo ücreti alınır mı?
Alınabilir, çünkü PrestaShop bunları sanal ürün olarak görmez. Ücretsiz kargo kuralı olan bir taşıyıcıya atayın ve ücret ortadan kalkar.
Hangi dosya türleri destekleniyor?
ZIP, PDF, MP3, FLAC, EPUB ve indirilebilir diğer tüm formatlar.
Dosyası eksik olan bir ürünü nasıl fark ederim?
Sayfanın üstündeki sayaçlar arasında bir Eksik Dosyalar değeri bulunur; böylece bir boşluk müşteri şikâyetinde değil, orada görünür.
Modülü kaldırırsam ne olur?
Modülün verileri ve yönettiği sanal dosyalar silinir — onay ekranı bunu söyler. Tekrar ihtiyaç duyacağınız her şeyin bir kopyasını saklayın.
-
UyumlulukPrestashop 1.6
Prestashop 1.7
Prestashop 8
Prestashop 9 -
Mevcut Modül ÇevirileriAlmanca
Felemenkçe
Fransızca
İngilizce
İspanyolca
İtalyanca
Lehçe
Portekizce
Türkçe
MEG Venture
4 other products in the same category
| Sürüm | 1.5.2 |
|---|---|
| Son güncelleme | 2026-07-30 |
| Değişiklik günlüğü | - [2026-07-30] Add missing translation keys for virtual product combination module in Turkish - [2026-07-27] Fix GitHub sync never persisting changelog updates (v1.5.2) - [2026-07-24] Add translations for Virtual Products Management Pro module in Dutch, Polish, and Turkish - [2026-07-23] fix: correct upgrade function name for version 1.4.12 to prevent upgrade failures - [2026-07-23] Fix protected-property access when loading the sync class in syncall.php - [2026-07-23] Fix "Class VirtualProductCombinationGithubSync not found" in syncall.php - [2026-07-23] Fix Sync All Now hitting admin dispatcher instead of front controller - [2026-07-23] Fix boolean passed as log message in syncall.php - [2026-07-23] Fix SQL syntax error: duplicate LIMIT 1 in notification queries - [2026-07-23] Fix root cause: version extraction bailed out before opening the zip - [2026-07-23] Fix literal backslash-n in version-change confirm dialog - [2026-07-23] Add composer.json and ultra-permissive fallback for version extraction - [2026-07-23] Add dual-method brute-force version extraction as fallback - [2026-07-23] Improve version extraction with comprehensive PHP parsing - [2026-07-23] Improve version extraction regex to handle more module formats - [2026-07-23] Fix version change detection and add manual sync trigger button - [2026-07-23] Add version detection and auto-send notifications for GitHub sync - [2026-07-23] Implement automatic GitHub synchronization feature with logging - [2026-07-23] Populate translation files with complete translatable strings - [2026-07-23] Populate translation files with complete translatable strings - [2026-07-23] Populate translation files with complete translatable strings - [2026-07-23] Add authentic translations for FR, DE, PL, NL, TR, IT, ES - [2026-07-23] Populate translation files with complete translatable strings - [2026-07-23] Populate translation files with complete translatable strings - [2026-07-23] Add missing translation files (fr, de, pl, nl, tr, it, es) - [2026-07-22] feat: Repackage GitHub zipball for PrestaShop compatibility - [2026-07-22] feat: Add GitHub integration for virtual product combinations - [2026-07-07] v1.4.17: Block native virtual files on product page - [2026-07-07] Fix virtual product notice on creation and ProductDownload save error - [2026-07-06] Batch-load GitHub URLs and PATs for products from admin panel configuration |
• [2026-07-07] Fix virtual product notice on creation and ProductDownload save error
• [2026-07-06] Batch-load GitHub URLs and PATs for products from admin panel configuration
• [2026-07-04] Add GitHub URL and PAT handling in product data retrieval and save methods
• [2026-07-04] Enhance language handling in product data retrieval and save methods, adding GitHub URL persistence and improving data accuracy in admin UI
• [2026-06-29] Improve SQL query in getVirtualData to filter out orphaned combination rows, ensuring accurate data in admin UI
• [2026-06-29] Enhance logging in getVirtualData success callback to include matched product count for improved debugging
• [2026-06-29] Add logging to getVirtualData success callback for improved debugging
• [2026-06-29] Refactor getVirtualData method to query product download data directly, ensuring fresh results and improved data accuracy
• [2026-06-29] Enhance save method to return fresh data immediately after saving, improving user experience and data accuracy
• [2026-06-29] Update response handling in getVirtualData and save methods for improved JSON output and error visibility
• [2026-06-29] Enhance save method response by including database error details and verification data for improved debugging and transparency
• [2026-06-29] Add cache: false to AJAX request for improved data freshness
• [2026-06-29] Improve save method response handling and logging for better error visibility
• [2026-06-29] Remove limit from changelog version query to retrieve all entries for accurate version comparison
• [2026-06-29] Improve error handling in save method and update AJAX response to JSON format
• [2026-06-29] Enhance KPI metrics in admin panel by adding total files, products covered, combination files, simple files, missing files, total downloads, and customers with downloads.
• [2026-06-26] Add conditions to filter active product downloads in getProductDownloads method
• [2026-06-26] Increase the number of commits fetched from GitHub API from 5 to 30
• [2026-06-24] .
• [2026-06-24] .
• [2026-06-24] .
• [2026-06-24] .
• [2026-06-24] .
• [2026-06-24] order detail page fix
• [2026-06-24] My Downloads page link is fixed
• [2026-06-24] Order detail page download link display problem is solved
• [2026-06-24] .
• [2026-06-24] .
• [2026-06-24] .
• [2026-06-29] Enhance logging in getVirtualData success callback to include matched product count for improved debugging
• [2026-06-29] Add logging to getVirtualData success callback for improved debugging
• [2026-06-29] Refactor getVirtualData method to query product download data directly, ensuring fresh results and improved data accuracy
• [2026-06-29] Enhance save method to return fresh data immediately after saving, improving user experience and data accuracy
• [2026-06-29] Update response handling in getVirtualData and save methods for improved JSON output and error visibility
• [2026-06-29] Enhance save method response by including database error details and verification data for improved debugging and transparency
• [2026-06-29] Add cache: false to AJAX request for improved data freshness
• [2026-06-29] Improve save method response handling and logging for better error visibility
• [2026-06-29] Remove limit from changelog version query to retrieve all entries for accurate version comparison
• [2026-06-29] Improve error handling in save method and update AJAX response to JSON format
• [2026-06-29] Enhance KPI metrics in admin panel by adding total files, products covered, combination files, simple files, missing files, total downloads, and customers with downloads.
• [2026-06-26] Add conditions to filter active product downloads in getProductDownloads method
• [2026-06-26] Increase the number of commits fetched from GitHub API from 5 to 30
• [2026-06-24] .
• [2026-06-24] .
• [2026-06-24] .
• [2026-06-24] .
• [2026-06-24] .
• [2026-06-24] order detail page fix
• [2026-06-24] My Downloads page link is fixed
• [2026-06-24] Order detail page download link display problem is solved
• [2026-06-24] .
• [2026-06-24] .
• [2026-06-24] .
• [2026-06-24] feat: Ensure download hashes are generated for orders before payment confirmation
• [2026-06-24] feat: Implement download hash generation for existing orders and enhance "My Downloads" functionality
• [2026-06-24] feat: Update alignment styles for "My Downloads" link in account page
• [2026-06-24] feat: Update "My Downloads" link styling and improve account page block description
• [2026-06-24] feat: Update ecotax calculations to support PrestaShop 9 compatibility and enhance "My Downloads" link styling
Yorumlar (6)
İnceleme değerlendirmeniz gönderilemiyor
Yorumu bildir
Rapor gönderildi
Raporunuz gönderilemiyor