Forum Nasıl Yapılır: Kategoriler, Konular, Arama ve Spam Kontrolü
Bir forum; kategoriler, bunların içindeki konular ve konulardaki cevaplar ile hesaplar, arama ve moderasyondan oluşan bir yapıdır. Bir sohbet grubundan farkı, konuşmaların konuya göre düzenlenmesi ve yıllarca faydalı kalmasıdır — biri arama yoluyla üç yıllık bir konuyu bulabilir ve yine de cevabını alır. Bir forum yapmak için konu sayfasını ve aramayı doğru kurun, forum herkese açıksa konuların arama motorları tarafından okunabilir olmasını sağlayın ve ilk gerçek üye kayıt olmadan spam ve moderasyon araçlarınız hazır olsun.
Bir forumun ihtiyaç duyduğu şeyler
Sayfalar
- Kategori listesi — çoğu forum için ana sayfa; her kategorinin açıklaması ve en son etkinliğiyle.
- Konu listesi — bir kategorideki konular, en son cevaba göre sıralı, cevap sayıları ve çözüldü ya da sabitlendi işaretleriyle.
- Konu sayfası — ilk gönderi ve tüm cevaplar sırayla; alıntılama, tepkiler ve bir cevap kutusu ile.
- Yeni konu formu — başlık, kategori, metin, isteğe bağlı etiketler.
- Arama — başlıklar ve gönderi metinleri üzerinde, kategoriye göre filtrelerle.
- Kullanıcı profili — ad, avatar, katılma tarihi, gönderi sayısı, son gönderiler.
- Moderasyon kuyruğu — şikâyet edilen gönderiler ve onay bekleyen gönderiler.
Veri
| Tablo | Temel alanlar |
|---|---|
| Kullanıcılar | ad, avatar, rol, güven seviyesi, katılma tarihi, durum |
| Kategoriler | ad, slug, açıklama, sıralama, kimler yazabilir |
| Konular | başlık, slug, kategori, yazar, sabitlendi, kilitlendi, çözüldü, son cevap zamanı |
| Gönderiler | konu, yazar, metin, oluşturulma, düzenleme, gizlenmiş |
| Tepkiler | gönderi, kullanıcı, tür |
| Şikâyetler | gönderi, şikâyet eden, neden, durum, moderatörün kararı |
| Abonelikler | kullanıcı, konu (yeni cevaplarda bildirim için) |
Konunun kendisinde "son cevap zamanı" ve "cevap sayısı" tutmak, sayfa her yüklendiğinde gönderileri saymak yerine konu listesini hızlı tutar.
Yetkiler
- Misafirler herkese açık kategorileri okuyabilir.
- Üyeler gönderi ve cevap yazabilir, kendi gönderilerini sınırlı bir süre düzenleyebilir.
- Moderatörler konuları gizleyebilir, taşıyabilir, kilitleyebilir, sabitleyebilir ve birleştirebilir, kullanıcıları askıya alabilir.
- Yöneticiler kategorileri ve rolleri yönetir.
Özel bir kategori her istekte sunucuda kontrol edilmelidir — konu sayfası, arama sonuçları, RSS ve bildirimlerin hepsi aynı kontrole ihtiyaç duyar, yoksa özel gönderiler bir arka kapıdan sızar. Bkz. rol tabanlı erişim kontrolü nasıl eklenir.
Kararlar ve ödünler
Düz ya da iç içe cevaplar. Düz konular (cevaplar zaman sırasıyla, alıntılamayla) okumak daha kolaydır ve çoğu forum için standarttır. İç içe cevaplar (Reddit tarzı ağaçlar) tartışmaya uygundur ama telefonda takibi zorlaşır. Bir nedeniniz yoksa düz olanı seçin.
Soru-cevap modu. Destek ve yardım forumları için, soruyu soran kişinin bir cevabı kabul edilen cevap olarak işaretlemesine izin verin ve bunu sorunun hemen altında gösterin. Bu tek özellik eski konuları çok daha faydalı yapar.
SEO için herkese açık ya da özel. Herkese açık konu sayfaları düzenli arama trafiği getirebilir, ama yalnızca arama motorları bunları okuyabiliyorsa. Bu da her konunun kendi temiz URL'si, gerçek bir <title> etiketi olması ve gönderilerin JavaScript ile sonradan yüklenmek yerine HTML içinde olması demektir. Arama trafiği önemliyse sunucuda oluşturulmuş ya da önceden hazırlanmış konu sayfaları isteyin. Daha fazlası için yapay zeka ile yapılan web siteleri için SEO.
Zengin metin ya da Markdown. Önizlemeli Markdown güvenle saklanması kolay bir yöntemdir. Görsel bir düzenleyici ise teknik olmayan üyeler için daha dostçadır. Her iki durumda da görüntülemeden önce HTML'i temizleyin, böylece kimse bir gönderiye betik enjekte edemesin.
Arama. Postgres tam metin araması, bir forumun ilk yıllarında fazlasıyla yeterlidir. Özel bir arama servisi ancak büyük ölçekte değer kazanır. Bkz. uygulamanıza arama nasıl eklenir.
Lansmandan önce spam ve moderasyon
Her gönderi bağlantı taşıyabilen herkese açık bir sayfa olduğu için forumlar, neredeyse başka hiçbir site türünden daha hızlı otomatik spam çeker. Baştan planlayın:
- Güven seviyeleri. Yeni hesaplar bağlantı ya da resim paylaşamaz ve ilk iki ya da üç gönderileri onay bekler. Bundan sonra serbestçe paylaşırlar.
- Hız sınırları. Yeni hesaplar için dakika ve gün başına gönderi sınırı.
- Gönderiden önce e-posta doğrulaması.
- Her gönderide şikâyet düğmesi, moderasyon kuyruğuna beslenen.
- Kullanıcı bağlantılarında nofollow, böylece spamcılar arama motorlarından kazanç sağlayamaz.
- Bir moderasyon günlüğü, moderatörler kimin neyi neden yaptığını görebilsin diye.
- Net kurallar, her kategoride sabitlenmiş.
Örnek ilk istem
Evde espresso tutkunları için herkese açık bir soru-cevap forumu yap. Kategoriler: Makineler, Değirmenler, Teknik, Çekirdekler, Al ve Sat. Herkes okuyabilir; üyeler e-posta ve şifreyle kayıt olur ve yazmadan önce e-postalarını doğrular. /t/[slug] adresindeki konu sayfaları, arama motorlarının okuyabilmesi için benzersiz bir başlık ve meta açıklama ile sunucuda oluşturulmalı. Cevaplar düz, zaman sırasıyla, alıntılama ve başparmak tepkisiyle. Bir konuyu açan kişi, sorunun altında gösterilen bir cevabı kabul edilen cevap olarak işaretleyebilir. Yeni üyelerin ilk üç gönderisi moderatör onayını bekler ve onaylanana kadar bağlantı paylaşamazlar. Moderatörler konuları gizleyebilir, kilitleyebilir, sabitleyebilir ve taşıyabilir, şikâyet edilen gönderilerin kuyruğunu görebilir ve her işlem kaydedilir. Başlıklar ve gönderiler üzerinde, kategori filtreli bir arama ekle; takip ettiğim konulara yeni cevaplar için uygulama içi bildirimler olsun. Her şeyi bir veritabanında sakla.
Yapım adımları
- Önce konu sayfası. Birkaç kategori ve elli gerçekçi konu ekleyin. Okuma, alıntılama ve cevaplamayı telefonda doğru yapın.
- Kategori ve konu listeleri. En son etkinliğe göre sıralama, en üstte sabitlenmiş konular, çözüldü işaretleri.
- Hesaplar ve doğrulama. Bkz. uygulamanıza giriş nasıl eklenir.
- Moderasyon ve güven seviyeleri. Onay kuyruğu, şikâyetler, gizleme, kilitleme, taşıma, günlük. Tamamen yeni bir hesap gibi bağlantı paylaşmayı deneyerek test edin.
- Arama. Üyelerinizin gerçekten yazacağı aramaları deneyin.
- SEO. Yayınlayın, bir konu açın, sayfa kaynağını görüntüleyin ve gönderilerin HTML içinde olduğunu kontrol edin. Konular için bir site haritası ekleyin.
- Gerçek içerik ekleyin. İlk yirmi faydalı konuyu kendiniz yazın ya da birkaç uzmanı davet edin. Boş bir forumda ilk gönderiyi kimse yapmaz.
Sık yapılan hatalar
- Boş başlatmak. Kimse ilk gönderiyi yapmak istemez. Gerçek sorular ve cevaplarla başlatın.
- Çok fazla kategori. Beş yoğun kategori, yirmi sessiz kategoriden iyidir. Sonra bölün.
- Yeni hesaplar için onay olmaması. Spam botları yeni forumları çok hızlı bulur.
- Temizlenmemiş gönderi HTML'i. Bir gönderinin içindeki bir betik, diğer kullanıcıların oturumlarını ele geçirebilir. Kullanıcı içeriğini her zaman temizleyin.
- Sızdıran özel kategoriler. Yalnızca konu sayfasını değil, arama sonuçlarını ve bildirimleri de kontrol edin.
- Her sayfa yüklenişinde cevapları saymak. Sayıları konuda saklayın ve gönderiler değiştiğinde güncelleyin.
- Hesap silme yolunun olmaması. Ayrılan bir üyenin gönderilerine ne olacağına karar verin.
Forum yazılımı ne zaman daha iyi bir seçim
Discourse gibi açık kaynaklı ve barındırılan forum yazılımları, güven seviyelerini, spam karşıtı özellikleri, e-posta entegrasyonunu, moderasyonu ve mobil düzenleri yıllardır geliştiriyor. Genel amaçlı bir forum istiyorsanız ve başka bir uygulamanın parçası olmasına ihtiyacınız yoksa, bunlardan birini kurmak ya da bir abonelik almak genellikle yapmaktan daha hızlı ve daha güvenlidir. Sohbet araçları hızlı konuşmalar için uygundur ama cevapların bulunabilir kalmasında zayıftır.
Forum ürününüzün bir parçası olduğunda — SaaS'ınız içinde bir destek forumu, bir pazar yerinde bir soru-cevap bölümü — konulara özel veriler eklemeniz gerektiğinde (makine modeli, sipariş, kurs dersi) ya da forumun tasarımının ve URL'lerinin tamamen size ait olmasını istediğinizde kendi forumunuzu yapın. Profiller ve etkinliklerle daha geniş bir üyeler alanı için bkz. topluluk platformu nasıl yapılır.
Mythex ile yapmak
Mythex'te forumu sohbette anlatır, canlı önizlemede denersiniz ve herkese açık bir adrese yayınlarsınız; özel alan adı Pro planında kullanılabilir. Uygulama ihtiyaç duyduğunda Mythex, kullanıcılar, konular ve gönderiler için özel bir Postgres veritabanı ve avatarlar ile resimler için dosya depolaması ekler. Varsayılan yığın tarayıcıda oluşturulan bir Vite ve React uygulamasıdır; bu yüzden herkese açık bir forum için sunucuda oluşturulmuş konu sayfaları isteyin (Next.js bir seçenektir) ve SEO tarifini izleyin. Üye girişi ve e-posta kendi kurulumunuzla gelir: bir yaklaşım ve bir sağlayıcı seçin, anahtarları proje gizli anahtarları olarak saklayın, yapay zeka bunları bağlar. Yayınlamadan önce /test komutuyla yapay zekanın gönderi atma ve moderasyonu tıklayarak denemesini sağlayın ve kayıtları açmadan önce yapay zeka ile yapılan uygulamalar için güvenlik kontrol listemizi okuyun.
Sorular
Bir forum web sitesinin neye ihtiyacı var?
Kategoriler, cevaplı konular, kullanıcı hesapları, arama ve moderasyon araçları. Çoğu forumun ayrıca cevaplar için bildirimlere, soru-cevap konularında en iyi cevabı işaretleme yoluna ve yeni hesaplar için spam korumasına ihtiyacı vardır.
Bir forum herkese açık mı yoksa özel mi olmalı?
Herkese açık bir forum arama trafiği getirebilir, çünkü her konu insanların Google'da bulduğu bir sayfadır. Hassas konular ya da ücretli üyeler için özel bir forum daha iyidir. Birçok forum okumayı herkese açık tutar, yalnızca yazmak için hesap ister.
Forumda spamı nasıl durdururum?
Yeni hesapların ne yapabileceğini sınırlayın: ilk gönderilerini onaya bekletin, bir süre aktif olana kadar bağlantıları engelleyin, gönderi hızını sınırlayın ve üyelere bir şikâyet düğmesi verin. Kayıtta e-posta adreslerini doğrulayın ve moderatör işlemlerini kaydedin.
Discourse gibi bir forum yazılımı kullanmak daha mı iyi?
Hızlıca tam özellikli bir foruma ihtiyacınız varsa, köklü forum yazılımları daha güvenli bir seçimdir: yıllardır biriken moderasyon ve spam karşıtı özelliklere sahiptirler. Forum daha büyük bir uygulamanın parçasıysa ya da genel forum yazılımlarında olmayan veri ve iş akışları gerektiriyorsa kendi forumunuzu yapın.