Drupal'da StackExchange sitelerine benzer şekilde, itibar tabanlı bir sistem nasıl uygulanır?


15

StackExchange'te rozet kazanmak eğlencelidir. Ancak bunun dışında, kullanıcılardan kaliteli etkileşimi teşvik eder ve spam ayıklamaya yardımcı olur (sitede hiç spam posta görmedim).

Yaklaşık 500 aktif kullanıcısı olan bir topluluk web sitem var, ancak spam gönderenler daha üretken olmaya başlıyor.

Aynı etkileşim kalitesini teşvik ederken siteyi daha ilgi çekici hale getirmenin bir yolunu istiyorum.

İyi bir itibar sisteminin yanı sıra bir hedef başarı sistemine girmeyi nasıl önerirsiniz ?


Orijinal soruda bahsedilen spam göndericileri ile ilgili olarak: hala orada olacaklar. Bu nedenle, bu spam gönderenler, drupal.stackexchange.com/questions/121382/… tarihinde Free Radical tarafından verilen cevapta belirtilen öneriyi takip ederek ele alınabilir .
gpruim

Yanıtlar:


17

Orada Puan Kullanıcı modülü ve Kullanıcı Rozetleri Kullanıcı Rozetleri 7.x sürümü (4 Haziran 2012 itibariyle) henüz üretim için uygun değildir gerçi modülü.

Neyse ki, Kullanıcı Noktaları, kullanıcıların puan kazanma (veya muhtemelen kaybetme) yöntemlerini büyük ölçüde özelleştirmenizi sağlayan Kurallar modülüyle entegre olur .

Ayrıca , değişken kararlılığa sahip kullanıcı noktaları için katkıda bulunan modüllerden oluşan bir koleksiyon da vardır . Kesinlikle bu modüller ile bazı şaşırtıcı şeyler ayarlayabilirsiniz, ancak uygulamanızı dikkatlice test ettiğinizden emin olun - modüller iyi yazılmış ve oldukça kararlı olsa da, hala yanlış gidebilecek çok şey var, bu yüzden her şeyin düzgün çalıştığından emin olun.


11

Rozetler için Başarılar modülü var.

Başarılar modülü, Xbox 360, Playstation 3, Foursquare, Gowalla, GetGlue ve daha fazlasında görülen sistemlere benzer başarılar ve rozetler oluşturma olanağı sunar. Bir Drupal sitesi için bu, belirli sayıda kez yorum yapmak, bir forum konusu başlatmak, haftanın her günü siteyi ziyaret etmek veya izlenebilen ve kodlanabilecek başka bir şey anlamına gelebilir.


1

Sorunuz gerçekten 2 bölümden oluşmaktadır, yani nasıl uygulanacağı hakkında:

  • belirli bir kullanıcı hakkında birden fazla kullanıcının değerlendirmesi gibi bir itibar sistemi .
  • çeşitli görevleri, zorlukları vb. tamamladıktan sonra kullanıcıyı ödüllendirmek gibi bir hedeflere ulaşma sistemi .

Her iki sistemin de nasıl uygulanacağı hakkında daha fazla bilgi için okumaya devam edin.

Hedeflere ulaşma sistemi

Bu tür bir sistem için tipik olarak seçebileceğiniz 2 modül vardır, yani:

  1. Başarılar zaten başka cevap önerildiği üzere, modülü. Bu modül, birçok işlevi yerine getirmek için büyük ölçüde özel kodlamaya dayanır .

  2. Hedefler modülü (Açıklama: Ben bunun sürdürücü olduğum) ilişkiler yaratarak içerik paylaşma, oylama, sitenizdeki herhangi bir şey teşvik etmek için kullanılabilir, vb

    Hedefler ve Görevler , yüklenebilir varlıklar kullanılarak uygulanır. Tamamlanacak görevlere bazı örnekler şunlar olabilir:

    • Birbirini izleyen üç gün boyunca günde bir kez siteye giriş yapın.
    • Seçili içerik türlerinden birkaç düğüm yayınlayın.
    • Sitede bir Arkadaş bağlantısı kurun.
    • Vb.

    "Alanları Yönet" ve / veya "Görüntüyü yönet" yoluyla Hedefleri özelleştirebilirsiniz. Her şey sadece site oluşturma özellikleriyle yapılabilir (özel kod dahil değildir), ancak kancaları özel kodlamaya entegre etmek için kullanılabilir. Bu nedenle Hedefler modülü yönetici arayüzü yapılandırması kullanılarak oluşturulmuştur. Ayrıca, Hedefler modülündeki hedefler ve görevler uygulanabilir öğelerdir, bu nedenle ek alanlar ekleme ve bu varlıkları Görünümlere ekleme esnekliğine sahip olursunuz . Goals ExtrasAlt modülü kullanarak Kullanıcı Noktaları modülüyle de bütünleşir .

    Aşağıdakileri içeren Hedefler videosuna gidin :

    • Modüle genel bir giriş.
    • yüklemek, yapılandırmak ve kullanmak için bir gösteri.
    • Kural modüllerini sihrini yapmak için nasıl kullandığına dair örnekler (örneğin, kullanıcının çeşitli hedeflere ulaşmak için ilerlemesini izlemek için).

İtibar sistemi

Cevaplar modülünü kullanarak (Açıklama: Ben (ortak) bir bakıcıyım) “ iyi bir itibar sistemikoyabilirsiniz (sorunuzda olduğu gibi). İşte onunla ilgili bazı ayrıntılar (proje sayfasından):

Cevaplar, bir Drupal sitesinde Soru ve Cevap sisteminin uygulanmasını sağlar. Kullanıcılar soru gönderebilir ve diğer kullanıcılar soruları cevaplayabilir.

Daha fazla bilgi için proje sayfasına gidin. Aşağıdakilere yönelik Views tabanlı listelerin tanıtımı (anonim kullanıcılar için salt okunur modda) için demo sitesini ziyaret edin :

"Çekirdek" Cevapları modül içerik türleri sağlayan Soru ve Cevap Cevapları kendileriyle bağlantı Soru altında görüntülenir, oysa. Bu 2 içerik türü katlanabilir, ekranlarını yönetebilir vb.

Seçili işlevselliği etkinleştirmek için alt sitelerini kullanın (sitenin gereksinimlerine göre), yani:

  • Yanıtlar Belirli bir soruya verilen yanıtlardan herhangi birini en iyi (kabul edilen) cevap olarak işaretlemeye olanak tanır (her bir yanıtın solundaki mavi onay işaretlerini görüntülemek için) ve bir yanıt işaretlendiğinde yeşil bir onay işaretiyle değiştirilir en iyi cevap olarak).
  • Yanıtlar Bir Sorunun (ve onunaltındakiİlgili Yanıtlar ) vanilya görüntüsünü (oldukça sıkıcı)daha çekici bir görünüm ve his halinedönüştüren Tema . Sorunun etrafına eklenen turuncu kabarcık gibi (daha iyi vurgulamak için).
  • Yanıtlar Bildirimi , oturum açmış kullanıcıların seçilen sorulara abone olmalarına izin vermek için,Sorular Cevaplaraldıklarında bildirim almaları için ( Mesaj Yığını kullanarak).
  • Yanıtlar Oylama , Soruları ve / veya Yanıtları ( Oran modülünükullanan)yükseltmek veya düşürmek için bir sistem uygulamak için.
  • Cevapları Kullanıcı Puanları artırmak veya "azaltmak için itibar puanı " (ki kullanır Kullanıcı Puanları böyle Up-olarak ya da aşağı-oylama bir soru veya cevap veya "gibi bir Cevap olarak işaretleme ile ilgili olaylar üzerine modülü) En İyi Yanıt ".

Oldukça fazla "iş mantığı" her türlü yapılandırılabilir kural aracılığıyla uygulanır ( Kurallar modülü kullanılarak). Örnek olarak, yükseltilmiş (veya düşürülmemiş) bir soruya (veya cevaba) ne kadar "kullanıcı noktası" verildiği konusunda kullanıma hazır kurallara katılmıyorsanız, kurallar arayüzünü gereksinimlerinize bu noktaların miktarı. Örn: downvoting soruları gerçekten ücretsiz olmalı mı (yani: Downvoter bunu yaparken puan kaybetmeli mi?).

Bütünlük açısından aşağıda bir yazarına '15' puan vermek için kullanılır (Kurallar verme biçiminde) bir kural vardır Yanıt birlikte yanıt kabul olarak bu kullanıcı için '2' puan işaretleri ile, (= Sorunun yazarı ) olarak işaretlenirken, bu cevabı 'En iyi cevap' olarak işaretleyerek yapılır ( Bayrak modülünü kullanarak ):

{ "rules_flag_answers_best_answer" : {
    "LABEL" : "flag_answers_best_answer",
    "PLUGIN" : "reaction rule",
    "OWNER" : "rules",
    "TAGS" : [ "answers" ],
    "REQUIRES" : [ "rules", "userpoints_rules", "flag" ],
    "ON" : { "flag_flagged_best_answer" : [] },
    "IF" : [
      { "NOT data_is" : { "data" : [ "flagging-user" ], "value" : [ "flagged-node:author" ] } }
    ],
    "DO" : [
      { "userpoints_action_grant_points" : {
          "user" : [ "flagged-node:author" ],
          "points" : "15",
          "tid" : "0",
          "entity" : [ "" ],
          "operation" : "addPoints",
          "display" : 1,
          "moderate" : "default"
        }
      },
      { "userpoints_action_grant_points" : {
          "user" : [ "flagging-user" ],
          "points" : "2",
          "tid" : "0",
          "entity" : [ "" ],
          "operation" : "addPoints",
          "display" : 1,
          "moderate" : "default"
        }
      }
    ]
  }
}
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.