Extension:DPLforum
DPLforum Sürüm durumu: kararlı |
|
---|---|
Uygulama | Etiket , Ayrıştırıcı işlevi |
Açıklama | DynamicPageList tabanlı forum yazlımı |
Yazar(lar) | Ross McClure |
En son sürüm | 3.7.2 (2022-09-13) |
MediaWiki | 1.25+ |
Veritabanı değişiklikleri | Hayır |
Lisans | GNU Genel Kamu Lisansı 2.0 veya üstü |
İndir | |
Örnek | www.shoutwiki.com Extension:InputBox kullanır |
Quarterly downloads | 4 (Ranked 126th) |
Public wikis using | 5,794 (Ranked 39th) |
Translatewiki.net adresinde mevcutsa, DPLforum uzantısını çevirin | |
Sorunlar | Açık görevler · Hata bildir |
DPLforum uzantısı DynamicPageList üzerinden uyarlanmıştır ve forum tarzı düzenleri görüntüler.
Sürüm 3.0'daki yeni özellikler arasında yazar listeleri, kavram ekran ve tam çok sayfalı destek sayılabilir. Sürüm 3.1, InputBox ile daha iyi bir birlikte çalışabilirlik için önek eşleşmesini sunar.
DPLforum ayrıca Forum yeni bir ad alanı (ve onun tartışma alanı) sunar; varsayılan olarak, bu ad alanının sayısal dizini 110
.
Kurulum
- Dosyaları indirin ve
extensions/
klasörünüzdekiDPLforum
adlı dizine yerleştirin.
Developers and code contributors should install the extension from Git instead, using:cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/DPLforum - LocalSettings.php dosyanızın altına aşağıdaki kodu ekleyin:
wfLoadExtension( 'DPLforum' );
- Yapıldı – Uzantının başarıyla yüklendiğini doğrulamak için vikinizde Special:Version seçeneğine gidin.
Parametreler
DPLforum burada gösterildiği gibi, satır sonu ayrılmış atama listesi biçimindeki parametreleri bekler.
<table><forum> category=CategoryName parameter1=value parameter2=value </forum></table> |
İçerik parametreleri
category={sayfa}
|
Kategori kümesine bir kategori ekler. Yalnızca bu kategorilerin her birine ait sayfalar görüntülenecektir. |
notcategory={sayfa}
|
Dışlama kümesine bir kategori ekler. Bu kategorilerde olmayan sayfalar görüntülenecektir. |
namespace={metin}
|
Aranacak ad alanını belirtir. Yalnızca bir ad alanı belirtilebilir. |
prefix={metin}
|
Başlıkla eşleşecek bir önek belirtir. Yalnızca başlıkları belirtilen önekle başlayan sayfalar görüntülenir. (3.1 sürümündeki yenilikler) |
start={sayı}
|
Listedeki ilk sayı sonuçları hariç tutar. |
count={sayı}
|
sayı fazladan sonuç listelemez. Halen 50 sonuçla sınırlıdır, ancak bu parametre belirtilmezse sonuçlar 50 ile sınırlı değildir. |
title={sayfa}
|
Belirtilirse bu nesne verilen sayfaya forum tarzı bir bağlantı haline gelir. Diğer parametreler hala geçerlidir. |
Yapısal parametreler
mode
|
Çıkış modunu belirtir.
|
compact
|
Bireysel <td> etiketlerin uygun olan yerlerde birleştirilmesine izin verir.
|
addcreationdate=true
|
Her girişin oluşturma tarihini gösterir. |
addauthor=true
|
Her girişin orijinal yazarını görüntüler. |
addlasteditor=true
|
Her girişin son düzenleyicisini görüntüler. |
addlastedit=false
|
Her girişin son düzenleme zamanını gizler; varsayılan olarak gösterilir. |
Çıkış parametreleri
ordermethod
|
Girişlerin listelenme sırasını belirtir.
|
historylink
|
Her girişin geçmişine bir bağlantı sağlar.
|
omit={metin}
|
Verilen metni her giriş başlığının başından itibaren çıkarır. |
order=ascending
|
Sıralama düzenini tersine çevirir. |
newdays={sayı}
|
sayı günden az bir süre önce değiştirilmiş girişlere yapılan tüm bağlantıları class="forum_new" ile işaretler; varsayılan olarak 7'dir.
|
timestamp=false
|
Zaman damgası değerlerini sayfa bağlantılarından kaldırır. Zaman damgaları yeni düzenlenen girişlerin "ziyaret edildi" bağlantıları olarak görünmemesini sağlar. |
cache=true
|
Bu nesnenin sonuçlarını ayrıştırıcı önbelleğine kaydeder. DPLForum::requireCache , true olarak ayarlanmadıkça bu varsayılan olarak false olur.
|
<span id="Multipage_support_with_#forumlink
">
#forumlink
ile çoklu sayfa desteği
#forumlink
ayrıştırıcı işlevi, forum listelerini belirli bir miktarda telafi eden mevcut sayfaya bağlantılar oluşturur.
Bu her forumun herhangi bir sayıda ek "sayfa" içermesini sağlar.
Sözdizimi aşağıdaki gibidir:
{{#forumlink:count|page|text}}
count | sayfa başına konu sayısını gösterir. |
page | sayfa numarasını mutlak bir değer veya göreceli bir uzaklık olarak belirtir. |
text | bağlantı metnini ayarlar. Boş bırakılırsa, sayfa numarası kullanılır. |
Göreceli ofsetler ve sayfa koşulları
Sayfayı belirlerken, sayıdan önce + veya - gelirse, o zaman o anki konumdan göreceli bir kayma olduğu varsayılır. 1'den küçük sayfalara bağlanan göreceli bağlantılar görüntülenmez.
İsteğe bağlı olarak görüntülenmek için sayfanın yerine getirmesi gereken sayfa numarasından sonra da bir koşul belirleyebilirsiniz.
Örneğin, o sayfa 10'dan küçük olduğunda sonraki sayfaya bir bağlantı belirtmek için şunu kullanın:
{{#forumlink:30|+1<10|Next page}}
Önceki sayfaya bir bağlantı (count=50
varsayarsak):
{{#forumlink:50|-1>0|Previous page}}
ParserFunctions ile birlikte, son sayfaya ulaştığınızda görüntülenmeyecek bir sonraki sayfanın bağlantısı olacaktır: (count=50
, category
ve notcategory
içinde belirtilen yalnızca bir kategori kullanılmaz):
{{#forumlink:50|+1<{{#expr: ceil ({{PAGESINCATEGORY:{{PAGENAME}}|R}}/50) +1 }}|Next page}}
Koşullar <, <=, > ve >= operatörlerini kullanabilir.
Note: For multipage functionality to work correctly, the cache
property must be set to false
MediaWiki mesajları
DPLforum, MediaWiki'de altı mesajı belirtir: ad alanı.
MediaWiki:Dplforum-by | "tarafından" kelimesini ve ardından $1 (bir kullanıcının adıdır) |
MediaWiki:Dplforum-desc | Uzantının açıklaması olarak Special:Version sayfasında gösterin |
MediaWiki:Dplforum-never | Kelime "Asla". |
MediaWiki:Dplforum-edited | "Son düzenleme". Tablo modunda değilken başlığı ayırır ve düzenler. |
MediaWiki:Dplforum-toofew | Hiçbir kategori verilmediğinde hata mesajı görüntüleniyor. |
MediaWiki:Dplforum-toomany | Çok fazla kategori verildiğinde hata mesajı görüntüleniyor. Bu eşik DPLForum::maxCategories tarafından kontrol edilir. |
Özelleştirme
Şablonlar kullanıcı mesajlarıyla birlikte geleneksel bir forum görünümü vermek için kullanılabilir.
Örnek kullanımı
Şablonlar oluşturun
Bu uzantının nasıl çalıştığını anlamak için, bir forumun genellikle sahip olduğu farklı sayfa alanlarını (başlık gezinme/ekmek kırıntıları, forum dizini, sayfa gövdesi, bildirimler, arama girişi, yeni konu düğmeleri vb.) düşünün. Standart bir forum görünümü oluşturmak için bu farklı bölümlere uygun bazı şablonlar oluşturmanız gerekir:
- Template:Forumheader
- Template:Forumpage
- Template:Forumheader/preload
- Template:Forumnotice (isteğe bağlı: kullanıcıları davranış/kurallar vb. hakkında uyarmak için tüm dizin ve alt konu sayfalarında görünmesini istediğiniz metin.)
Template:Forumheader
Bu şablon, yol bulma için kırıntı gezintisi sağlayabilir ve kullanıcıların forum dizinini kolayca döndürmelerine yardımcı olabilir. Forumheader şablonuna aşağıdakine benzer bir şey yerleştirin:
<div class="forum-header">
'''Forums:''' {{#ifeq:{{PAGENAME}}|Index||[[Forum:Index|Index]] '''→'''}}
{{#if:{{#if:{{{1|}}}||1}}{{#ifeq:{{{1}}}|$1|1}}|{{PAGENAME}}|[[Forum:{{{1}}}|{{{1}}}]]}}
</div>{{#ifeq:{{NAMESPACE}}|{{ns:110}}|{{#if:{{{1|}}}|[[Category:{{{1}}}]]}}}}<noinclude>
</noinclude>
Template:Forumnotice
Bu şablon, kullanıcılara forum kurallarını, hatırlatıcıları, nasıl yapılırı vb. hatırlatmak için 2 doların ve forum sayfalarının üst kısmında bir bildirim sağlayabilir. Forumnotice şablonuna aşağıdakine benzer bir şey yerleştirin:
Please note (your text here). * '''Do not''' post ... (your text here) * Individual topic threads can be put on your watchlist. * Enable email notifications in [[Special:Preferences|your preferences]]. * ''View [{{fullurl:Special:Recentchanges|namespace=110&limit=500}} recent changes for all topics in all forums]. Choose [{{fullurl:Special:Recentchanges|namespace=110&limit=500&days=14}} 14], [{{fullurl:Special:Recentchanges|namespace=110&limit=500&days=30}} 30], or [{{fullurl:Special:Recentchanges|namespace=110&limit=500&days=60}} 60] days for older changes.'' * ''You may have to [{{fullurl:{{FULLPAGENAME}}|action=purge}} purge] this page to see changes below.''
Template:Forumsearch
Bu şablon, Forumpage şablonunda (tüm forum sayfalarında görüntülemek için) bir arama formu oluşturmak için InputBox uzantısıyla birlikte kullanılabilir. Bu şablonda aşağıdakine benzer bir şey yerleştirin:
<div class="inputbox-sidebar">
<inputbox>
type=fulltext
width=40
namespaces=Forum**,Help
searchbuttonlabel=Search
</inputbox>
</div><noinclude>[[Category:Forum templates]][[Category:Search templates]]</noinclude>
Template:Forumpage
Bu şablon, Forumheader, Forumnotice ve yeni konuları kolayca aramak ve oluşturmak için kullanılan giriş formları dahil olmak üzere tüm forum alt konu sayfalarına aynı düzeni uygulayabilir. Bu şablonda aşağıdakine benzer bir şey yerleştirin:
{{Forumsearch}}
<div class="inputbox-sidebar">
<inputbox>
buttonlabel=Add new topic
prefix=Forum:
preload=Template:Forumheader/preload
preloadparams[]={{PAGENAME}}
type=create
width=40
</inputbox></div>
{{{1|}}}
{{Forumnotice}}
{| class="forum-table" style="clear: right; width: 100%"
! Topic !! Last edit
<forum>
namespace=Forum
category={{PAGENAME}}
shownamespace=false
addauthor=true
addlasteditor=true
historylink=true
compact=all
timestamp=true
cache=false
</forum>
|}
Template:Forumheader/preload
Bu şablon, yeni/acemi MediaWiki kullanıcılarına yardımcı olmak için yeni oluşturulan bir konunun düzenleme modu sayfasının üstünde görünen metin oluşturmak için kullanılabilir. Bu şablonda aşağıdakine benzer bir şey yerleştirin:
{{Forumheader|$1}}
<!-- Write your message below these instructions (leave the instructions here) -->
<!-- At the end, please sign your message by placing 4 tilde characters in a row: ~~~~ -->
<!-- Replies are added below the post by adding one colon (:) for each indent level at the front of the reply -->
<noinclude>
[[Category:Forum templates]]
[[Category:Preload templates]]
</noinclude>
Sayfa oluştur
Şablonlar oluşturulduktan sonra, artık bunları Forum ad alanındaki sayfalarda kullanmak üzere koyabilirsiniz. Aşağıdaki sayfaları oluşturun (Index aşağıdaki gibi adlandırılmalıdır, ancak aşağıdaki sayfalar uyarlanabilir).
- Forum:Index
- Forum:General Discussion
- İstediğiniz diğer forum bölümleri.
Forum:Index sayfası
Bu sayfa, forum açılış sayfası ve dizin işlevi görür. Sayfayı oluşturun ve aşağıdakine benzer bir şey yerleştirin:
{{DISPLAYTITLE:Wiki Forum}}
{{Forumheader}}
{{Forumsearch}}
Welcome to the (your site) forums!
{{Forumnotice}}
{| class="forum-table" style="width: 100%;"
! Forum !! Last Edit
|-
<forum><!-- General Discussion Section -->
namespace=Forum
category=General Discussion
title=Forum:General Discussion
shownamespace=false
addauthor=true
addlasteditor=true
compact=all
timestamp=true
cache=false
</forum><!-- End General Discussion Section -->
<forum><!-- Editing Help Section -->
namespace=Forum
category=Editing Help
title=Forum:Editing Help
shownamespace=false
addauthor=true
addlasteditor=true
compact=all
timestamp=true
cache=false
</forum><!-- Editing Help Section -->
|}
[[Category:Forums]]
Forum:General Discussion (alt konu) sayfası
Bu sayfa, Genel tartışma bölümü için giriş sayfası görevi görür ve bu bölüm altındaki tüm iletilerini listeler. Sayfayı oluşturun ve aşağıdakine benzer bir şey yerleştirin:
{{Forumheader}}
{{Forumpage|This is the place to discuss (your text here)...}}
<!-- Add any other info here -->
[[Category:Forums]]
Not: Bir alt konu sayfası olarak biçimlendirmek için forum ad alanında oluşturulan herhangi bir sayfaya bu tür kodu ekleyin.
Stil ekleme
Forum özellikleri daha sonra MediaWiki:Common.css cinsinden stiller eklenerek (ve temanıza göre gerektiği gibi ayarlanarak) şekillendirilebilir. Yukarıda belirtilen ilgili sınıflar, aşağıdaki örnekte hedeflenir ve stillendirilir:
/*---- DPL Forum ----*/
/* Forumheader style */
.forum-header {
border: 1px solid #aaa;
background-color: #cedff2;
margin: 0 0 1em;
padding: 0 0.5em;
}
/* Forum table outside border */
table.forum-table {
border: 1px solid lightgrey;
}
/* Forum table cell padding and borders for all table body cells */
table.forum-table > tbody > tr > td {
border-top: 1px solid lightgrey;
padding: 8px;
}
/* Forum table background color (show on odd rows) */
table.forum-table > tbody > tr {
background-color:#fff;
}
/* Forum table background color (shows on even rows) */
table.forum-table > tbody > tr:nth-child(even) {
background-color:#f5faff;
}
/* Forum table header row background, style and padding */
table.forum-table > tbody > tr > th {
background-color:#cedff2;
font-weight:bold;
padding: 8px;
}
/*-- InputBox --*/
.inputbox-sidebar {
width: 300px;
border: 1px solid lightgrey;
clear: right;
float: right;
margin: 3px;
padding:10px;
margin-left: 2em;
}
Bu uzantıyı kullanan vikiler
Extension:DPLforum - WikiApiary sayfasına bakın. Bu uzantıyı kullanarak vikileri listeler.
Alfabetik bağlantılar doğrudan ana forum dizinine gider. MediaWiki ve DPLforum'un hangi sürümünün kullanıldığını görmek için, her site için Special:Version sayfasına bakın. Special:SpecialPages genellikle çoğu vikinin kenar çubuğundan (araç kutusunda) bağlanır. Special:Version olan "Sürüm" bağlantısını bulmak için Special:SpecialPages sayfasına gidebilirsiniz. Forum şablonu kategorilerine bazı bağlantılar ayrıca aşağıda listelenmiştir.
- All The Tropes. Special:Version.
- DDO wiki. Special:Version.
- Memory Alpha, the Star Trek Wiki. Special:Version.
- ShoutWiki. Special:Version. Forum templates.
- The Sims Wiki. Special:Version.
- Tolkien Gateway. Special:Version.
- Uncyclopedia. Special:Version.
- Fandom Community Central. Special:Version.
- Wookieepedia, the Star Wars Wiki. Special:Version.
- Yugipedia. Special:Version.
This extension is included in the following wiki farms/hosts and/or packages: This is not an authoritative list. Some wiki farms/hosts and/or packages may contain this extension even if they are not listed here. Always check with your wiki farms/hosts or bundle to confirm. |