PhpBB3'teki kullanıcı deneyimini geliştiren birçok yeni özellikten biri de Özel Profil Alanlarıdır. Geçmişte, kullanıcılar yalnızca görüntülenen ortak profil alanlarındaki bilgileri doldurabiliyordu; yöneticiler, bireysel ihtiyaçlarını karşılamak için panolarına MODifikasyonlar eklemek zorunda kaldı. Ancak phpBB3'te yöneticiler ACP aracılığıyla rahatça özel profil alanları oluşturabilirler.

Özel profil alanınızı oluşturmak için ACP'nizde oturum açın. Kullanıcılar ve Gruplar sekmesine tıklayın ve ardından tıklamak için soldaki menüdeki Özel profil alanları bağlantısını bulun. Artık doğru sayfada olmalısınız. Seçim menüsünün ve Yeni alan oluştur düğmesinin yanındaki özel profil alanları başlıklarının altındaki boş metin kutusunu bulun. Boş metin kutusuna ilk olarak oluşturmak istediğiniz yeni profil alanının adını yazın. Ardından seçim menüsünden alan türünü seçin. Kullanılabilir seçenekler şunlardır: Sayılar, Tek metin alanı, Metin alanı, Boolean (Evet / Hayır), Açılır kutu ve Tarih. Devam etmek için Yeni alan oluştur düğmesini tıklayın. Aşağıda, yeni özel profil alanının sahip olacağı üç ayar kümesinin her biri açıklanmaktadır.

Profil alanı ekle

    Alan türü: Yeni özel profil alanınızın olduğu alan türüdür. Bu, sayılardan, tarihlerden vb. oluşabileceği anlamına gelir. Bu zaten ayarlanmış olmalıdır.

    Alan tanımlama: Profil alanının adıdır. Bu ad phpBB3'ün veritabanı ve şablonları içindeki profil alanını tanımlayacaktır.

    Profil alanını görüntüle: Bu ayar, yeni profil alanının hiç görüntülenip görüntülenmeyeceğini belirler. Profil alanı, yükleme ayarlarında etkinleştirilirse konu sayfalarında, profillerde ve üye listesinde gösterilecektir. Yalnızca kullanıcı profilinde gösterme varsayılan olarak etkindir.

Görünürlük seçeneği

    Kullanıcı kontrol panelindeki ekran: Bu ayar, kullanıcılarınızın UCP içindeki profil alanını değiştirip değiştiremeyeceğini belirler.

    Kayıt ekranındaki görüntü: Bu seçenek etkinleştirilirse kayıt sayfasında profil alanı görüntülenecektir. Kullanıcılar bu alanı UCP içerisinde değiştirebilecektir.

    Zorunlu alan: Bu ayar, kullanıcılarınızı bu profil alanını doldurmaya zorlamak isteyip istemediğinizi belirler. Bu, profil alanını kayıt sırasında ve kullanıcı kontrol panelinde gösterecektir.

    Profil alanını gizle: Bu seçenek etkinleştirilirse, bu profil alanı yalnızca kullanıcıların "profillerinde görünecektir. Bu durumda bu alanı yalnızca yöneticiler ve moderatörler görebilir veya doldurabilir.

Dile özel seçenekler

    Kullanıcıya sunulan alan adı/başlığı: Bu, kullanıcılarınıza görüntülenecek profil alanının gerçek adıdır.

    Alan açıklaması: Bu alanı dolduran kullanıcılarınız için basit bir açıklama/açıklamadır.

Yukarıdaki ayarları tamamladığınızda, devam etmek için Profil türüne özel seçenekler düğmesini tıklayın. İstediğiniz ayarları uygun ayarlarla doldurun ve ardından İleri düğmesine tıklayın. Yeni özel profil alanınız başarıyla oluşturulduysa yeşil bir başarı mesajıyla karşılaşacaksınız. Tebrikler!

phpBB forum profilinizde, ana sitenize aktif köprü ekleyebileceğiniz bir “Site” alanı bulunmaktadır. Spam gönderenler genellikle binlerce yeni spam göndericiyi kaydederek ve mesajlarının istila edilmesiyle mücadele ederler. Günümüzün spam programları, otomatik kaydın yanı sıra, forumu özellikle anlamlı olmayan birkaç bildirimden de mahrum bırakıyor, böylece profil (ve gönderiler) daha fazla indeksleniyor.

Bununla farklı şekillerde mücadele edilebilir. Noindex yönergesini kullanarak robots.txt dosyasındaki tüm forum profillerini kolayca kapatabilirsiniz. Ancak forumunuz on binlerce benzer forumun bulunduğu bir spam veritabanına dahil edildiğinden, spam gönderenlerin kaynağınızı otomatik kayıtla devre dışı bırakma umudu çok azdır.

"Site" alanını düzenleme özelliğini açabilirsiniz. Bunun için şablondaki dosyayı bilmeniz gerekir. zazvichiy tse ucp_profile_profile_info.html, Dizinde neler var - stiller / şablon_adı / şablon /

Buna benzer bir kod bilmemiz gerekiyor:

Kod değişiklik gösterebilir, bu nedenle "WEBSITE" anahtar kelimesine odaklanın. Bir sürü kodu kolayca silebilir veya kurnazca bir şeyler yapabilirsiniz. Sadece kodu değiştiriyorum

Senin internet siten

Öyle bir şekilde oluşturacaksınız ki bu alan Düzenlenmemiş olacak ve sitenize gönderilmesi sonucunda bir daha değer oluşması mümkün olmayacaktır)

PhpBB müşteri profillerindeki tüm mesajlar nasıl değiştirilir?

Müşterilerin profillerinde "Site" alanını ayarlama özelliğini etkinleştirdiğinizi varsayalım. Ancak önceden kayıtlı spam günlükçüleri önceden girilmiş mesajlarla birlikte görünecektir. Elbette forum veritabanına gidip SQL sorgusunu kullanarak oradaki tüm alanları hatırlayabilirsiniz veya bunu daha basit bir şekilde yapabilirsiniz.

Bu sefer bir dosyaya ihtiyacımız var memberlist_view.html aynı dizinden. Satırı biliyoruz:

Ve arkasındaki satırı (mesajı görüntülemek için) şu şekilde değiştireceğiz:

Bingo!

Artık tüm müşterilerin profillerinde, profillerinde ne belirttiklerine bakılmaksızın sitenize gönderilen bir mesaj var.

Profillerde mesaj olmadığından spam gönderenlerin buna ihtiyacı yoktur.

Standart göreve bir göz atalım - önceden kurulmuş üyelerin bulunduğu bir siteye bir forum eklenmesi gerekiyor. Kendiniz yeni bir modül yazmak yerine phpbb3 gibi hazır popüler bir çözümü yükleyin ve sitenin kayıt/yetkilendirme/profillerini forumla senkronize edin. Site üyelerinin foruma üye olması, sitenin yetkili üyelerinin otomatik olarak forumun yetkili üyesi haline gelmesi ve ayrıca profil değiştiğinde senkronizasyonun gerçekleşmesi minimum düzeyde gereklidir.

Program, phpbb ve wordpress'i (WP-United) ve evrensel sunucuları (,) senkronize etmek için eklentilere sahiptir ve geri kalanı genellikle "bunları kopyala ... on işlevi function.php'den kopyala" ve "bu 3 tablo eksenine yapıştır" sözcükleriyle başlar. bu tür haraçlar.

Diğer bir entegrasyon yöntemi ise, kendilerinden önceki ilgili kullanıcı tablolarını ve yöntemlerini başka bir sitedeki phpbb'den başlatmak, böylece sistemde önemli değişikliklere neden olmaktır.

Size çok basit olan ve daha sonra site ve forumdaki dosyalarda minimum değişiklik gerektiren (5Kb'lik bir senkronlayıcı sınıfına bağlanmak için dosya başına 10 satır) yöntemimizi anlatalım.

fikir

Daha basit olamazdı. Siteye giriş yapın - başarılı olduktan sonra hemen foruma gireceğiz ve girişten çerezleri yerleştireceğiz. Bu kadar.

Gereksinimlere bakmaktan (firebug veya LiveHTTPHeaders'ın yardımıyla) ve eklenecek bir yer bulmaktan yoruldum.

Senkronizatör iki dosyadan oluşur: site-> forum (site dosyalarında bulunur) ve forum-> site (phpbb'de bulunur). ForumSync ve SiteSync'in statik sınıflarını değiştiremeyeceğiniz açıktır. Her sınıfın 2 genel yöntemi vardır: checkToken ve senkronizasyon.

Sitem için senkronize edici site->forum - forumsync.class.php, forum->site - Function_sitesync.php'dir. Bu dosyalar ve değiştirilmesi gereken dosyalar girildi. Sınıf req aynı zamanda vykonnya dizi sorguları için de kullanılıyor ve uzanıyor.

ince

Ve check_form_key öğesine $_REQUEST değişikliğinin geçerliliği için bir kontrol ekleyeceğiz (kontrol SiteSync::checkToken() yönteminde yapılır).

2. Döngüyü ortadan kaldırmak için (sitede oturum açmak için forumda oturum açmak gerekir, bu da sitede oturum açmayı gerektirir, vb.), isteği tamamlamadan önce geçerli olan SiteSync :: checkToken ()'i kontrol edeceğiz, bu da senkronizatörü çalıştırmayı ve senkronizasyonu başlatmayı isteyeceği anlamına geliyor, tekrar söylemeyeceğim gerekli

detaylar

Her kişinin bir web sitesi vardır, bu yüzden sadece phpbb dosyalarında yapılması gereken değişiklikleri anlatacağım. Bu tamamen porokova kerivnitstvo değil, daha ziyade zagalny ilkesidir. ForumSync ve SiteSync sınıflarının yine de her site için ayrı ayrı değiştirilmesi gerekir.

Kayıt: Basit olması açısından, katkıda bulunanları phpbb'e kaydetmeye bakalım (yönetici paneli aracılığıyla). Kayıt yalnızca web sitesi üzerinden yapılacaktır. Kayıt başarılı olduktan sonra site adı ForumSync::sync (“kayıt”) olur. Phpbb'de, satırı forum / include / ucp / ucp_register.php-> ucp_register-> main () (USER_ACTIVATION_DISABLE olarak değiştirmeden) olarak değiştirdiğimiz senkronize edici için kayda izin verilir:

If ($config["require_activation"] == USER_ACTIVATION_DISABLE &&!SiteSync::checkToken())
tetik_hata("UCP_REGISTER_DISABLE");

Elbette yeni koristuvacheva'nın kimliğini kaldırmak iyi olur. Başarılı kayıt durumunda görüntülenen sayfanın html kodunda müşteri kimliği hiçbir yerde belirtilmez. Tom satırın altında $user_id = user_add(...) dodamo

If (SiteSync::checkToken()) (echo"\N";)

SiteSync::sync("oturum açma", array("kullanıcı adı" => $kullanıcıadı, "şifre" => $şifre, "otomatik oturum açma" => $otomatik oturum açma)).

çıktı: forum/ucp.php durumunda "çıkış" durumunda forum->siteyi senkronize etmek için: SiteSync::sync ("çıkış") satırını ekleyin.
Şifreyi ve profili değiştirin: Bireysel olarak sitedeki müşteri profillerinin hangi tablolarında hangi bilgilerin bulunduğunu takip edin. Profilinizi düzenlemeye yönelik formlar nelerdir? Gerekli eylemler forum / include / ucp / ucp_profile.php-> ucp_profile-> main () konumunda bulunur, tüm durumların sonuna SiteSync :: senkronizasyonunu eklemeniz gerekir.

Zayıf yönler

Ana dezavantaj, işlemlerin karmaşıklığı ve en azından ilkel bir API'dir. Sorun ne olursa olsun, senkronize edici phpbb'e beslendiğinde ne olacağı html kodunda bulunmalıdır. Koku yerelleştirmenin altında yatıyor.

Sistemim işlemleri destekliyor ancak phpbb'deki standart mekanizmayı bilmiyorum. Örneğin sitede minimum şifre gereksinimi 6 ve phpbb'de - 5'tir ve phpbb'de 5 karakterlik bir şifre girdiğinizde phpbb şifreyi değiştirir, site feragatname verir. Giriş üzerinde çalışmak gerekiyor ama bu artık sadece “bir giriş eklemek” değil. Bu arada bu tür durumlarda sistemim bozulacaktır, bu yüzden tüm senkronize alanların kullanılabilir olmasını saygıyla sağladım.

Koristuvach grupları, koristuvach'ları birleştirmenin bir yoludur. Gruplar, tüm özel kullanıcılar için erişim haklarının aynı anda ayarlanmasını kolaylaştırır. phpBB 3.0 önceden yüklenmiş altı grup içerir: yöneticiler, botlar, süper moderatörler, konuklar, kayıtlı üyeler ve kayıtlı COPPA üyeleri.


3.6.1. çadır grubu

İki tür grup vardır: istemciye yönelik kurulumlar ve göstergeler.

Grubun önünde
Bu gruplar PHPBB 3.0 ile hemen kurulur ve çeşitli fonksiyonların kurulumu için konferans gerektirdiklerinden hemen silinemezler. Alternatif olarak bu gruba yeni üyeler ekleyebilir, grup özelliklerini değiştirebilir (açıklama, renk, başlık, avatar vb.) ve grup adları ekleyebilirsiniz. Konferansa kayıt yaptıran üyeler otomatik olarak “Kayıtlı Üyeler” grubuna eklenir. Bunları veritabanı aracılığıyla manuel olarak silmeye çalışmayın, aksi takdirde konferansınız artık düzgün çalışmayacaktır.


  • yönetici
    Bu grup tüm konferans yöneticilerini içerir. "Baş" statüsündeki tüm istemciler yöneticidir ancak tüm yöneticiler yönetici değildir. Bu gruba ek olarak yöneticilerin yapabileceklerini yönetebilirsiniz.
  • boti
    Bu grup ses robotlarına yöneliktir. phpBB 3.0, konferans sayfalarının arama botları tarafından indekslenmesiyle ilgili ciddi sorunları ortadan kaldırabilir. Botlar, kontrolleri ve ayarları hakkında daha fazla bilgi edinmek için “Botlar ve Botlar” bölümüne bakın.
  • Süper Moderatörler
    Süper moderatörler, kendilerine sunulan tüm konferans forumlarında moderatör haklarına sahip olan moderatörlerdir. Başka bir grup için süper moderatörlerin haklarını değiştirebilirsiniz.
  • Misafirler
    Konuklar gelecek konferanslara kayıtlı değil. Misafir haklarını başka bir grupla sınırlandırabilirsiniz.
  • kayıtlı tüccarlar
    Kayıtlı katılımcılar konferansın ana ve en büyük kısmını oluşturmaktadır. Bu ek grup için kayıtlı müşterilerin neler yapabileceğini yönetebilirsiniz.
  • Kayıtlı COPPA müşterileri
    Kayıtlı COPPA satıcıları, COPPA'ya (Çocukların Çevrimiçi Gizliliğini Koruma Yasası) tabi olmaları dışında kayıtlı satıcılarla aynıdır. Bu yasanın, Amerika Birleşik Devletleri'ndeki yaşam tarzı gibi, müreffeh insanlarla hiçbir ilgisi yoktur.

koristuvach grubuyla tanındı
Bu gruplar siz veya diğer konferans yöneticileri tarafından oluşturulmuştur. Bu gruplar phpBB 2.0'daki gruplara benzer. Dilediğiniz kadar oluşturabilir, silebilir, kurabilir, niteliklerini (açıklama, renk, başlık, avatar vb.) değiştirebilirsiniz.

Yönetici panelindeki "Grup Yönetimi" sayfası, kullanıcı gruplarına yönelik ayar ve atama listelerinin yanında görüntülenir.


3.6.2. özellikler grubu

Aşağıda bir grupta kullanılabilecek özelliklerin listesi verilmiştir:

  • Grup ismi
    Grup ismi.
  • grubu tanımla
    Grup listesinde görünen grubun açıklaması.
  • Yalnızca sahibi tarafından yönetilir
    Fiyat yönetimini yalnızca bir grup yöneticiyle çevreleyin. Grup erişim haklarına sahip kullanıcılar bu gruba ve üyelerine erişebilir.
  • Grubu göstergede göster
    Bu seçenek, grubun "Konferansta kimler var" listesindeki göstergede görüntülenmesini sağlar. Not: Grup rengi belirtilmediği sürece bu seçeneğin etkisi yoktur.
  • Grup özel bilgileri seçebilir
    Bu seçenek, bu grubun üyelerine özel mesajlar vermenizi sağlar. Örneğin "Kayıtlı Müşteriler" grubu için en gelişmiş seçeneklerin güvenli olmayabileceğini lütfen unutmayın. Katkıda bulunanlardan oluşan gruplara özel bilgi gönderme yeteneğinizi engelleyebilecek bir erişim hakkı yoktur, dolayısıyla bilginin ayrıntılarını yönetebilen herkes bu gruba özel bilgi gönderebilir! Not: Grup üyeleri bu seçenekten bağımsız olarak özel bildirimleri seçemez.
  • Tek klasördeki özel bilgilerin sınırı
    Bu ayar, muhabirlere bildirimde bulunulması sınırını belirler. 0 değeri, alıcı için para miktarında bir sınır olacağı anlamına gelir. Özel bilgilerin nasıl ayarlanacağı bölümünü izleyin.
  • renk grubu
    Grubun yapılandırıldığı üyelerin adları (bkz. bölüm 3.6.3, “Çalışma grupları”) forum sayfasında burada belirtilen renkle görüntülenecektir. “Grubu açıklama olarak göster” seçeneği etkinleştirildiğinde, bu renkteki açıklama öğesi “Konferansta kimler var” listesinin altında görünecektir.
  • grup görüşmesi
    Bu grubun bir temizlik grubu olduğu yolsuzlukçılar (bkz. bölüm 3.6.3, “Temizlik grupları”), adlarının altında seslenmeye tabidir. Belirli bir üyenin başlığını, yeni bir başlık için belirtildiği gibi, bir grup için belirtildiği gibi veya temizlik için yeni bir grup için belirtildiği gibi başka bir üyeyle değiştirebilirsiniz. Daha detaylı bilgi için “Arama” bölümüne bakınız.
  • Grup avatarı
    Bu grubun temizlik grubu olduğu Koristuvach (bkz. bölüm 3.6.3, “Temizlik grupları”) bu avatarla eşleşiyor. Gerekli haklara sahip olduğu için Koristuvach'ın kendisi avatarını değiştirebilir. Avatarları özelleştirme hakkında daha ayrıntılı bilgi için “Avatarlar” bölümüne bakın.


3.6.3. Gruplar hazırlanacak

Artık grupların renkleri veya avatarları gibi nitelikleri tanımak mümkündür (bkz. bölüm 3.6.2, “Grup Nitelikleri”) ve bir kullanıcı, farklı avatarlara ve diğer niteliklere sahip olabilen iki veya daha fazla grubun üyesi olabilir ve . Yak avatarı koristuvach'a stosovana mı olacak?

Bu sorunu çözmek için, muhabire bir "değerlendirilmek üzere grup" atayabilirsiniz ve bu grubun nitelikleri, atama tamamlanana kadar birleştirilecektir. Farklı grupların özelliklerini birleştiremeyen ve karıştıramayanlara dikkat edin: eğer bir grubun bir adı varsa ve bir avatarı yoksa ve diğer grubun yalnızca bir avatarı varsa, o zaman avatarı birinden değiştirme imkanı yoktur. grup ama ismi farklı.

saygılı
Gruplar erişim haklarına herhangi bir müdahalede bulunmuyor. Üyelere grup için ek haklar atanmaz veya sağlanmaz. Dolayısıyla paralı askerin hangi gruptan sorumlu olduğuna bakılmaksızın kalıcı mülkünü kaybetme hakkına sahip olduğu kabul edilmektedir.

Grubunuzu değiştirmenin iki yolu vardır. Öncelikle üye işyerlerinin ek yönetimi için çalışabilirsiniz (bkz. bölüm 3.5 “İşyerlerinin yönetimi”) veya doğrudan bu tarafta grup yönetimi için çalışabilirsiniz. Diğer bir seçenek olan grubun diğer tarafı için grubu değiştirirken dikkatli olun, çünkü grubu tüm üyeler için değiştirebilir ve temizlik için eskilerinin ve gruplarının üzerine yazabilirsiniz. Dolayısıyla, "Kayıtlı tüccarlar" grubu için temizlik grubunu "Her katılımcı için temizlik için grup olarak çalışın" ek mesajı için değiştirirseniz, konferansın tüm katılımcıları bu gruba, yöneticiler de dahil olmak üzere ilişkiler için bir grup olarak ödeme yapacaktır. ve moderatörlerin yanı sıra “Kayıtlı Koristuvach” grubunun üyeleri.

saygılı
Bir adı ve avatarı olan bir gruba bir grup atarsanız, o grubun özellikleri üyenin eski avatarının ve adının üzerine yazılacaktır.