Sıkça Sorulan Sorular
66 sonuç bulundu
SEai nedir? Ne işe yarar?
SEai; birden fazla WordPress sitesini tek panelden yönetmenizi, yapay zeka destekli içerik üretmenizi ve bu içerikleri güvenle WordPress’e yayınlamanızı sağlayan modern bir yönetim uygulamasıdır. İçerik planlama, üretim, düzenleme, yayınlama ve sonuçları takip etme süreçlerini hızlandırır
İş (Job) nedir? Ne üretir?
İş; belirlediğiniz konu, dil ve siteye yönelik, tek seferlik veya zamanlanmış içerik üretim akışıdır. Bir iş; tetiklendiğinde n8n/iş akışı üzerinden içerik üretir, doğrulama sonrası yazıyı WordPress’e gönderir.
Yeni bir iş nasıl oluşturulur? (adım adım)
Jobs > Yeni İş oluşturun. Başlık (kısa ve açıklayıcı), konu/brief, dil ve hedef siteyi seçin. İsterseniz zamanlama (plan) ekleyin ya da tek seferlik çalıştırın. Kaydedince iş kartı listede görünür.
Zamanlama türleri: otomatik (günlük) ve explicit slot farkı nedir?
Otomatikte sistem belirlediğiniz sıklık ve saatlere göre tetikler. Explicit slotlarda ise tam tarih-saatler listesi verirsiniz; her biri tek tek planlanır ve durumları (pending/running/completed/missed) takip edilir.
nextRunAt neyi ifade eder?
Planlı işler için sıradaki tetik anını (UTC) gösterir. Explicit slotlarda, bir sonraki “unfinished” slotun zamanı esas alınır. Çakışma veya kısıtlar nedeniyle operasyonel olarak kısa gecikmeler olabilir.
Trigger/sayı ve runCount/maxRuns nasıl çalışır?
Explicit planda her slot bir tetiktir. runCount tamamlanan slot sayısını, maxRuns ise toplam planlanan slot sayısını ifade eder. Otomatikte gün/sıklık bazlı tetikler runCount’u artırır.
Slot çakışmaları nasıl engellenir? (Aynı dakika tetikleri)
Aynı site için aynı dakika birden fazla iş tetiklenecekse, sistem dakika-kovası (minute-bucket) ve küçük jitter ile işleri sıra verir. Gerekirse 15–45 sn arası otomatik erteleme uygulanır.
Kaçırılan (missed) veya ertelenen durum ne demektir?
Missed: slot penceresi geçmiştir ve tetiklenememiştir (policy’ye göre tekrar denenebilir). Deferred: eşzamanlılık/kovalar nedeniyle kısa gecikme ile sıraya alınmıştır. Her iki durumda da sistem otomatik toparlanır.
İş akışı sırasında neler olur? (özet)
Scheduler, uygun slotu atomik olarak claim eder; n8n’e outbound webhook gönderilir. Başarılı callback’te doğru slotId ile eşleşen gönderi yaratılır, slot “completed” olur, iş SUCCESS’e çekilir, nextRunAt güncellenir.
RUNNING’de takılı kalırsa ne yapmalıyım?
Sistem düzenli reconcile ile “yetim running” veya “süresi dolan inflight” slotları pending’e çevirip kuyruğun sonuna taşır, işi QUEUED yapar ve nextRunAt’ı yeniler. Admin > Workflow sekmesinden manuel “düzelt” de tetikleyebilirsiniz.
En iyi pratikler: saat penceresi, grace ve jitter
Explicit slotlarda makul bir grace (ör. 30–90 sn) ve küçük jitter (15–45 sn) sistem tarafından otomatik uygulanır. Yoğun planlarda slotları 2–5 dk aralıklarla dağıtmanız önerilir.
İşi durdurma/silme etkileri nedir?
Durdurmak (isActive=false) yeni tetikleri engeller; mevcut RUNNING akışı bitene kadar devam eder. Silmek, iş ve ilişkili planları kaldırır; geçmiş gönderiler silinmez.
SEai kimler için uygundur?
Ajanslar, içerik ekipleri, girişimciler, serbest çalışanlar ve birden fazla site yöneten herkes için uygundur. Çoklu site yönetimi, iş akışları ve rol/yetki mekanizması ile ekipler için idealdir.
Nasıl başlarım? İlk adımlar nelerdir?
Hesap oluşturduktan sonra Ayarlar > Paketler bölümünden bir plan seçebilir, Siteler sekmesinden WordPress sitenizi ekleyebilir, ardından Yazılar sekmesinde içerik oluşturmaya başlayabilirsiniz. Ücretsiz plan ile hızlıca deneme yapabilirsiniz.
WordPress sitemi nasıl eklerim?
Siteler sayfasında “Yeni Site” ile site adını ve WordPress URL’nizi girin. Kullanıcı adı ve şifre alanlarını doldurun. Bilgiler AES-256-CBC ile şifrelenerek saklanır. Aynı WordPress URL’si sistem genelinde yalnızca bir kez eklenebilir (tekrarını engelliyoruz).
Paketler nasıl çalışır? Ücretsiz paketin limitleri nedir?
Planlar genel olarak FREE, PRO ve BUSINESS seçeneklerinden oluşur. FREE plan örneğin 1 site ve aylık 5 yazı limiti sunar. PRO ve BUSINESS planlarda site ve aylık yazı limitleri önemli ölçüde yükselir. Aktif planınız Ayarlar > Paketler bölümündeki kartlarda “Aktif” rozeti ile görünür.
Paket satın alma ve yükseltme nasıl yapılır?
Ayarlar > Paketler bölümünden mevcut planları görüp satın alabilirsiniz. Satın alma veya yükseltme işlemi tamamlandığında abonelik kaydınız oluşturulur ve yeni limitleriniz hemen uygulanır.
Planımı nasıl anlarım? Aktif planım nerede yazıyor?
Ayarlar > Paketler sayfasında aktif plan kartının üst kısmında kırmızı “Aktif” rozeti yer alır. Ayrıca arka planda /api/org uç noktasından dönen “subscription.plan” alanı, aktif planınızı temsil eder.
Roller ve yetkiler nasıl çalışır?
Kullanıcıların rolü User veya Admin olabilir. Admin kullanıcılar Dashboard, Users, Jobs, Paketler gibi yönetim menülerini görür. Normal kullanıcılar Siteler, Yazılar ve Ayarlar gibi temel bölümleri görür. Menü görünürlüğü ve bazı sekmeler role göre filtrelenir.
E-posta doğrulama ve 2FA desteği var mı?
Evet. NextAuth ile giriş yapılır ve iki faktörlü doğrulama (2FA) desteği mevcuttur. Gerekli yerlerde e-posta doğrulama akışları da bulunur. Şifre sıfırlama, 2FA kayıt/iptal uçları ve yedek kodlar desteklenir.
WordPress kullanıcı adı ve şifreleri nasıl saklanıyor?
Kimlik bilgileri uygulama içinde AES-256-CBC ile şifrelenir ve yalnızca yetkili işlemler esnasında çözülür. Parolalar veritabanında düz metin olarak tutulmaz. Düzenleme ekranında şifre tekrar gösterilmez; yalnızca gerekirse güvenli uçtan çözülerek çekilir.
Aynı WordPress sitesi birden fazla kez eklenebilir mi?
Hayır. URL alanına global (tüm sistem çapında) benzersizlik kısıtı uygulanır. Aynı URL ikinci kez eklenmek istendiğinde sistem uyarır ve engeller.
Yazı ekleme ve düzenleme nasıl yapılır?
Yazılar sayfasından “Yeni Yazı” ile başlayabilir veya listeden bir yazının yanındaki “Düzenle” ile var olan içeriği güncelleyebilirsiniz. İçerik formu başlık, meta alanlar, HTML içerik ve WordPress alanlarını içerir. Artık yazı oluşturma, ayrı bir /posts/add sayfasında yapılır.
Yazı ekleme limitim dolduğunda ne olur?
Limit dolduğunda “Yeni Yazı” butonu pasifleşir ve /posts/add sayfasında kırmızı uyarı gösterilir. Bu durumda yeni içerik oluşturamazsınız; ancak var olan içerikleri düzenlemeye devam edebilirsiniz. Limitler planınıza göre belirlenir.
İçeriklerimi WordPress’e nasıl gönderirim?
Yazılar sayfasında, WordPress bilgileri tanımlı bir siteye ait yazılarda “WordPress’e Gönder” butonu görünür. Gönderim başarılı olursa durum PUBLISHED olur ve WordPress bağlantısı yazıya eklenir.
WordPress gönderiminde başarısızlık olursa ne olur?
Gönderim başarısız olursa yazı durumu FAILED olarak güncellenir ve hata mesajı kaydedilir. Bağlantı bilgilerini ve WordPress erişimini kontrol ederek yeniden göndermeyi deneyebilirsiniz.
Otomatik kaydetme ve Ctrl/Cmd+S davranışı nasıl?
Zengin editörde istem dışı API çağrılarını engellemek için otomatik kaydetme kapatılmıştır ve Ctrl/Cmd+S kombinasyonu varsayılan olarak kaydetme tetiklemez. Kaydetme, form gönderimi ile yapılır.
Görsel yükleme/medya yönetimi desteklenecek mi?
Evet, planımıza görsel yükleme ve WordPress medya kütüphanesine aktarma (özellikle kapak görseli ve içerik içi görseller) dahildir. Bu özellik yol haritasında yer alıyor ve ilerleyen sürümlerde eklenecektir.
Zamanlanmış içerik üretimi (Otomatik Çalıştırma) nasıl çalışır?
İşler sayfasında görünen “Otomatik Çalıştırma” alanından bir plan oluşturursunuz. Konu, dil, format ve frekans belirlenir. Plan aktifken sistem belirlediğiniz zamanlarda işlemi tetikler; yazı başarıyla üretildiğinde kullanım sayaçları güncellenir.
Planı nasıl oluşturur ve yönetirim?
İşler sayfasındaki “Plan Oluştur” butonuna tıklayın. Zamanlama Onayı penceresinde plan detaylarını onaylayın. Bu pencere, kalan otomatik haklarınızı anlık verilerle yenileyerek gösterir. Planı düzenlemek veya durdurmak için aynı sayfadaki zamanlama kartlarını kullanabilirsiniz.
Kalan otomatik haklar ve kilitleme (lockedRemaining) nasıl hesaplanır?
Kalan otomatik haklar, paketinizin otomatik limitinden yapılan kullanımlar ve aktif planlarda “kilitlenen” haklar düşülerek hesaplanır. Yani kalan = toplam limit − kullanılan − kilitli. Bu sayede planladığınız gelecekteki çalıştırmalar için haklar önceden ayrılır.
Bir tetikleme kaçırılırsa “Hemen tetikle” ne yapar?
Planlı bir çalıştırma zamanında tetiklenememişse (kaçırılmış) “Hemen tetikle” ile manuel olarak çalıştırabilirsiniz. Yazı üretimi başarıyla tamamlandığında sayaçlar yalnızca başarıyla tamamlanan işlemlerde artar.
Otomatik limit biterse ne olur?
Kalan otomatik haklarınız bittiğinde yeni plan oluşturma veya mevcut planların ileri tarihli çalıştırmaları kısıtlanır. Haklar yenilendiğinde (plan dönemi veya paket yükseltme) planlarınız kaldığı yerden devam edebilir.
Limit/kota nasıl takip ediliyor?
Ayarlar > Paketler bölümündeki aktif aboneliğiniz planı belirler. Kalan site ve yazı haklarınız Siteler ve Yazılar sayfalarında uyarı alanında gösterilir. Kota dolduğunda ilgili ekleme işlemleri pasif hale gelir.
Aylık yazı kotası nasıl hesaplanır?
Plan bazlı aylık yazı kotası, o ay içinde oluşturulan yazı sayısı ile karşılaştırılır. Aylık dönem plan başlangıç tarihine göre hesaplanır. Kota aşıldığında yeni yazı oluşturma engellenir.
İşler (Job) üzerinden üretilen yazılar aylık yazı kotasından düşer mi?
Hayır. İş Listesi veya planlı çalıştırmalarla (otomatik/autorun) üretilen yazılar kota hesabına dahil edilmez. Kota yalnızca panelden manuel oluşturduğunuz yazılar üzerinden takip edilir.
n8n entegrasyonu nasıl kullanılıyor?
n8n ile belirlediğiniz anahtar kelime/brief doğrultusunda içerik üretimi tetiklenebilir. Üretilen taslaklar panelde düzenlenip WordPress’e gönderilebilir. Entegrasyon detayları Ayarlar > Entegrasyonlar sekmesinden yönetilir (Admin).
Neden sayfalar dinamik render ediliyor?
Geliştirme ve dağıtım ortamlarında static build kaynaklı hataları önlemek, dinamik başlık/menü mantıklarını doğru çalıştırmak ve hızlı iterasyon için sayfalar force-dynamic çalıştırılır.
Performans için hangi önlemler alındı?
Kritik fetch işlemlerine 5 saniye zaman aşımı, daha hafif sorgular, transactional veritabanı işlemleri ve no-store cache stratejisi uygulandı. Bu sayede derleme ve runtime bloklanmaları azaltıldı.
Veritabanı ve bağlantı güvenliği nasıl?
Prisma ile PostgreSQL kullanıyoruz. Çevre değişkenleri (.env) ile bağlantı sağlanır, şifreli depolama kullanılır ve bağlantılar mümkün olduğunca SSL ile gerçekleştirilir. Kimlik bilgileri uygulama tarafında şifreli tutulur.
Docker/Render/Railway dağıtımıyla uyumluluk durumu nedir?
Dockerfile ve build scriptleri Render ve Railway ortamlarıyla uyumludur. Prisma şemasına erişim, postinstall adımları ve NextAuth yapılandırmaları dağıtım için düzenlenmiştir.
SSS araması ve başlıktaki öneriler nasıl çalışır?
Header’daki arama alanında 3+ karakter yazdığınızda SSS içeriğinden öneriler açılır. Bir öneriye tıklarsanız /faq?query=... sayfasına yönlenirsiniz. Enter tuşu da doğrudan SSS aramasına götürür.
Destek ve yol haritası var mı?
Evet. Özellikle Pro ve Business kullanıcılarına öncelikli destek sunmayı hedefliyoruz. Yol haritasında ekip iş birliği özelliklerinin genişletilmesi, görsel/medya yönetimi, gelişmiş içerik kalitesi ölçümleri ve otomatik iç linkleme yer alıyor.
WordPress’e gönderim başarısızsa ne kontrol etmeliyim?
Öncelikle site ayarlarında WordPress URL, kullanıcı adı ve şifrenin doğru olduğundan emin olun. WordPress REST API erişimi, güvenlik eklentileri ve temel kimlik doğrulama ayarlarını kontrol edin. Gerekirse loglarda hata mesajını inceleyin.
Giriş yapamıyorum / 2FA kodum çalışmıyor. Ne yapmalıyım?
Yedek 2FA kodlarınızı deneyin veya şifre sıfırlama akışını kullanın. Sorun devam ederse destek ekibine hata ekran görüntüsü ve zaman bilgisi ile ulaşın.
Veri gizliliği politikası nedir?
Kullanıcı verileri hizmetin sunulması amacıyla işlenir. Şifreli depolama, rol tabanlı erişim ve denetim kayıtları önceliklidir. Talep üzerine veri dışa aktarma ve imha süreçleri uygulanabilir.
Bir schedule hangi koşullarda tetiklemeye uygun (eligible) olur?
Başlıca şartlar: isActive=true; nextRunAt şimdi veya erken/near-future penceresi içinde; leaseUntil=null (aktif kiralama yok); hasInflight=false; deferredUntil=null (ertelenmiş değil); organizasyon ve site eşzamanlılık (concurrency) limitleri uygun; minute-bucket kilidi yok. /api/admin/schedules/diag çıktısındaki problems alanı uygun değilse nedenini listeler.
Rebase ne yapar? Hangi durumlarda kullanmalıyım?
Rebase, explicit slotların zamanlarını “şimdi+~3dk”dan itibaren yeniden sıralar, leaseUntil/deferred/inflight bayraklarını temizler ve isActive=true yapar. Askıda kalan slotları modaldaki listede gösterir. Planınız ilerlemiyorsa, saatler uzak geleceğe kaydıysa veya slotlar çakışıp beklemede kaldıysa rebase uygundur.
Nudge nedir? nextRunAt neden uzak geleceğe kayar ve nasıl hizalanır?
Nudge, schedule.nextRunAt ve ilk pending slotun zamanını yakın geleceğe (offsetSec kadar) iter. run-due; ilk pending slot ile nextRunAt arasında 5+ dk fark varsa nextRunAt’ı otomatik ilk slota hizalar. Bu sayede “nextRunAt_far_future” problemleri kendini toparlar.
run-due endpoint hangi kontrolleri yapar?
Başlıca: erken/near-future penceresinde olanları seçer; deferredUntil varsa saygı gösterir; leaseUntil süresi dolmayanları atlar; minute-bucket ve jitter ile çakışmayı azaltır; org/site concurrency limitlerini uygular; due olan işi atomik claim eder, RUNNING’e çeker, webhook gönderir; callback’lere göre SUCCESS/FAILED/QUEUED günceller ve jobs_counter ile job_update mesajlarını WS üzerinden yayınlar.
RUNNING işler neden listede her zaman en üstte?
Operasyonel görünürlük için /api/jobs sıralamasında sabit bir kural uygulanır: Job.status === RUNNING olanlar en üsttedir. Ardından zamana (toNextTs), otomatiklik ve oluşturulma tarihine göre sıralanır.
Durum (status) filtreleri neden İngilizce ve hangi değerler geçerli?
Türkçe eşleşmeler kaldırıldı. Geçerli değerler: RUNNING, QUEUED (pending), SUCCESS (completed), FAILED, CANCELLED, ACTIVE, INPROGRESS, ALL. /api/jobs ve /api/jobs/counter bu değerleri bekler; ör. completed -> SUCCESS ile eşleşir.
/jobs sayfasında sıralama seçenekleri nasıl çalışır? Ayarlar nasıl saklanır?
Seçenekler: Akıllı, Yakın Zaman, Güncellenme, Oluşturulma, İlerleme, Öncelik, Site, Durum, Tamamlanan Slot. Yön (asc/desc) desteklenir. Tercihler localStoragejobSortBy ve jobSortDir içinde saklanır. WebSocket ile job_update geldiğinde liste yeniden sıralanır.
İş sayaçları (jobs/counter) nasıl gerçek zamanlı güncellenir?
Job oluşturma/güncelleme/silme, run-due akışı ve callback’lerde broadcastJobsCounter çalışır. Mesajlar organizasyon odasına (org:ID) “jobs_counter” olarak yayınlanır. UI bu kanala abonedir ve AnimatedNumber ile anlık animasyon gösterir. Bağlantı koptuğunda otomatik yeniden bağlanır.
Hangi WebSocket olaylarını yayınlıyoruz ve kim dinler?
Başlıca olaylar: job_update (org kapsamlı, progress ve durum), jobs_counter (org kapsamlı toplamlar), schedule_update (zamanlama değişimleri), job_fixed (otomatik/manüel düzeltmeler). Jobs sayfası job_update ve jobs_counter’ı, Database sekmesi ise schedule_update ve job_fixed’ı dinler.
“Tamamlandı ≠ SUCCESS” durumları nasıl tespit edilir?
explicitSlots toplamı ile completed sayı eşit ve tüm slotlar bitmişse ancak Job.status SUCCESS değilse kayıt tutarsızdır. /api/admin/jobs/mismatch bu vakaları listeler; slot-only mantığı ile yalnızca tüm slotları bitmiş planlar dahil edilir.
Mismatch nasıl düzeltilir? (otomatik ve manüel)
Database > “Tamamlandı ≠ SUCCESS” modalında “Hızlı Düzelt” ile seçili işler için /api/admin/jobs/fix-mismatch çağrılır: inflight bayrakları temizlenir, gerekirse slotlar terfi ettirilir, Job SUCCESS’e çekilir ve schedule opsiyonel olarak deaktive edilir. Worker, periyodik olarak aynı işlemi otomatik uygular.
Neden bazı kayıtlar “already_success” olarak döner?
İş zaten SUCCESS durumundadır ve slotlar da tutarlı görünmektedir. Bu durumda ek bir işlem yapılmaz; sonuç fixed:false reason:already_success olarak raporlanır.
Diag (Teşhis) nasıl kullanılır ve problems alanı neyi ifade eder?
/api/admin/schedules/diag?scheduleId=... çağrısı schedule state, nextRunAt, leaseUntil, hasInflight, deferredUntil, slot toplamları ve eligible bilgisini döner. problems dizisi olası engelleri (inactive, nextRunAt_far_future, minute_bucket_busy, has_inflight, deferred_active, lease_active, concurrency_blocked) listeler.
Scheduler ayarlarını (sched.*) nereden yönetebilirim?
Admin API /api/admin/scheduler-config ile önerilen sched.* anahtarlarını seed edebilir ve güncelleyebilirsiniz. Örnekler: sched.maxParallel, siteConcurrency, minuteBucketSize, earlyWindowSec, nearFutureSec. Değerler SystemSetting tablosunda saklanır.
Modül API anahtarları nerede ve nasıl saklanır?
/modules sayfasındaki “Ayarlar (API Giriş)” bölümünden girilen değerler /api/modules/config ile SystemSetting’e AES-256-CBC kullanılarak şifreli yazılır. Anahtarlar org bazında (modules.{orgId}.*) veya global (modules.global.*) alanlarda tutulur.
Hangi veriler şifrelenir? Kimler erişebilir?
WordPress kimlik bilgileri ve modül API anahtarları şifrelenir. Deşifre yalnızca yetkili backend işlemleri sırasında yapılır. Arayüz, tam değerleri yeniden göstermez; güvenlik için sadece yazılabilir alan sunulur.
Eşzamanlılık (concurrency) ve minute-bucket kısıtları nasıl çalışır?
Aynı organizasyon ve aynı site için eşzamanlı çalıştırma sınırları uygulanır. Ayrıca minute-bucket, aynı dakikada çakışan tetikleri sıraya koyar ve kısa erteleme (jitter) uygular. Böylece yoğun yükte bile istikrar korunur.
Neden saniye hassasiyetinde tetikleme beklememeliyim?
Sistem dakika bazlı kovalama ve jitter uygular. Kritik operasyonlarda 15–90 saniyelik sapmalar normaldir ve çakışmaları azaltmak için tasarlanmıştır.
Jobs sayfasında sayaçlar veya durumlar geç güncelleniyor gibi. Ne yapmalıyım?
Tarayıcı WS bağlantısını kontrol edin (ağ/kurumsal proxy). Kısa süreli kopmalarda istemci otomatik yeniden bağlanır. Sorun devam ederse sayfayı yenileyin. Arka tarafta job_update/jobs_counter yayınlarının geldiğini Network/WebSocket panelinden doğrulayabilirsiniz.
Rebase sonrası tetiklenmedi. Olası nedenler nelerdir?
isActive=false kalmış olabilir (rebase bunu artık true yapar), nextRunAt uzak gelecekte olabilir (nudge uygulayın), concurrency veya minute-bucket nedeniyle kısa erteleme yaşanıyor olabilir. /api/admin/schedules/diag ile problems listesini inceleyin.