Wiki Guru



  • Okay! I am looking for a wiki guru. I am so horrible at it and probably shouldn't be constantly hassling @somasatori (He is a making webpagey stuff genius. He made all the magics happen) all the time to help me make wiki magic happen. I can barely figure out how to do something more than spam everything as a list.

    If you just like making wikis feel free to comment here/give me a pm.

    Ideal wants (I am open for otherwise):

    Character Page templates
    Log posting templates
    Prettiness (as pretty as it can get, anyways).
    Categories

    No files need to be written and I, or my other staff peoples, will install all the news files and junk. I just need someone who can do the magics I can't. I am entirely okay with someone who can make the magic happen and/or someone who can direct me to templates.


  • Pitcrew

    Seconded. Some 'how to' for setting up templates and stuff like that would be amazing, too. I try to go to the media wiki help file stuff and I am so, so, so slow about learning it.



  • I have two basic bastardizations of Vector I could potentially talk someone through, but to be fair I mostly just puttered around until things changed the way I wanted them. One's a 'wtf'-looking hot mess of confused notes, and the other is for a sekrit project, though, so please PM if you want to take a peek. :) The latter is definitely more workable for a page layout generally, and requires less puttering about with graphics.

    In fairness, I am not sure who did Eldritch's pages, but they would be the folks I'd ask for advice. They did a stellar job with them. I am a chronic charpage-putterer and I'm still leaving my charpage template totally alone to blend with the rest of the site as designed, to give you some idea.


  • Coder

    Thank you! I am Odd, who did Eldritch's wiki. (I also did the non-default wiki skin, Kent, for The Reach, but I've improved a bunch of stuff since then. Yay!) I'm glad people like Eldritch's skin. I put a lot of work into figuring that shit out.

    I will try to help answer questions!

    MediaWiki is an awful, crazy mess of code; Vector, the default skin, is especially so. All the little bits are hidden under other bits and it makes things like changing a background colour all weird and fiddly. I can help with some Vector things. Basically, I hated Vector so much I taught myself how to make a wiki skin from scratch, because I am crazy. Eldritch Wiki's skin, Gears, isn't a modified version of Vector; it's an entirely different skin.

    Character and log templates are a lot easier, since it's just tables code for the most part. I can tweak tables like no tomorrow and I try to make it as easy as possible for others to modify pages/use templates.

    Ebla's the one to go to for the really arcane stuff. Ebla did things on TR with wiki code I cannot get my head around.



  • There are two things being discussed here, MediaWiki Skins (the overall look and feel of the site) and MediaWiki Templates (providing structure for individual pages).

    I recently hacked up the Gamepress skin for New Prospect's player wiki. CSS is powerful and better than the stuff you used to have to do for web design. I'm not sure I prefer the problems it creates to the problems it solves.

    I also started hacking up Loki's ubiquitous Charpage template to make something more flexible but less "plug and play". I made some other ones that do handy things.

    For our main website I used dokuwiki. It's not nearly as powerful as MediaWiki but it's much simpler and the markup is more intuitive. My purpose for separating the two was to keep it obvious which information is official and which is player-maintained.


  • Pitcrew

    @Sunny said:

    Seconded. Some 'how to' for setting up templates and stuff like that would be amazing, too. I try to go to the media wiki help file stuff and I am so, so, so slow about learning it.

    MediaWiki's help files are shit. Just absolutely irredeemable shit.


  • Pitcrew

    @Coin

    It is, but it's what I can find to use!! If there are English versions (rather than the flailing moon monkey language they're written in) somewhere, I have not yet found them. I have found that SOME of the stuff on wikipedia is actually helpful. But mostly not. I will eventually triumph in this. Someday.


  • Coder

    I put up a tutorial http://musoapbox.net/topic/268/mediawiki-log-template. It will sear your retinas.



  • This is much belated, but I'm responding because @Quibbler mentioned me. I was Ebla. I did a lot of the wiki work for Darkwater and most of the setup for The Reach, based on dark powers obtained via blood sacrifice to the gods of MediaWiki and DPL (I stole shamelessly from what Loki set up on Haunted Memories and then broke things over and over again until I figured out how they worked).



  • @Sammi
    I have a general wiki quesiton. Is it possible to take a template, have sections pre-defined and have a way to have those sections display only if they are filled out or otherwise set to display?



  • @Bobotron Yeah, easily. It looks atrocious in the code, and it gets worse the more conditions you want to add, but if you have a good text editor with bracket matching, it's easy enough to write. You just need the ParserFunctions extension (see your Special:Version page). You set up your template as normal, but you wrap your include statement in an #if tag.

    If you have people writing content directly into their template:

    {{#if: {{{contacts | }}} |  {{{contacts}}} }}
    

    That will check the contacts parameter for text. If it finds no such parameter, it will sub in a blank space (the default behavior is to print "{{{contacts}}}"). The #if statement checks the parameter for content, and if it finds anything other than a blank space, it will print the parameter.

    If you have people making subpages and want to exclude subpages that don't exist:

    {{#ifexist: Stacy/Contacts | {{:Stacy/Contacts}} | Stacy doesn't know anybody!}}
    

    This will check for the existence of Stacy/Contacts, and print it if it exists. (I left the string in the "else" section for the sake of readability. It is by no means required, but it's harder to read a bunch of consecutive brackets and pipes.)

    It sounds like you want to have pages able to be displayed or hidden. That's also doable.

    {{#if: {{{contacts | }}} | {{#ifexist: Stacy/Contacts | {{:Stacy/Contacts}} | Stacy doesn't know anybody!}} | Contacts hidden!}}
    

    This will check to see if the contacts field is set to display. If so, it will then check for Stacy/Contacts, and display it if it's there. (I left the strings in for the sake of readability. They are by no means required, but it's harder to read a bunch of consecutive brackets and pipes.)

    You'll want to finish it by making it so that it automatically subs in the character name for the page.

    {{#if: {{{contacts | }}} | {{#ifexist: {{{PAGENAME}}}/Contacts | {{:{{{PAGENAME}}}/Contacts}} | {{{PAGENAME}}} doesn't know anybody!}} | Contacts hidden!}}
    

    The {{{PAGENAME}}} magic word returns the name of the page the template is on. However, it will return the full path for the name if it's on a subpage, so you might want to use {{{BASEPAGENAME}}} or {{{ROOTPAGENAME}}} for extra specificity.

    If you want to make a table that changes based on which fields are filled out, that's another level of complexity. It's not hard, but it requires that you first build your skeleton and then go through and replace everything with code, because nobody who isn't a savant can just write that shit out. You can see an example of a table that morphs based on parameters here (the subtitle section disappears completely if it doesn't exist).


  • Pitcrew

    For any of my fellow wiki admins who haven't tried it out, utilizing Semantic MediaWiki and then Semantic Forms to provide users a form to fill out for character pages, logs, etc. can be super powerful and fantastic.



  • @Sammi
    You rock. I think I can work from this to do what I need to do. :D

    ETA: Here's a question. Can you get it to make other stuff display if the content is not filled? For example, if I have a header for RP Hooks and the hooks section is empty, I want RP Hooks to not display.


  • Pitcrew

    @Roz said:

    For any of my fellow wiki admins who haven't tried it out, utilizing Semantic MediaWiki and then Semantic Forms to provide users a form to fill out for character pages, logs, etc. can be super powerful and fantastic.

    Seconded! You can do some really amazing things with SemanticMediawiki. I keep meaning to write a guide to it, but... lazy.

    Annnnnnd if you store character information in a mysql database, you can also import that straight into your wiki and even then have the wiki autocreate character pages, pulling in basic info and then letting players customise the rest.


  • Pitcrew

    Also, I use Chameleon as a theme often, because it is based on bootstrap and you can then just import color themes from http://bootswatch.com/. It looks a whole lot better than Vector, that's for sure.


  • Pitcrew

    @aestivus said:

    @Roz said:

    For any of my fellow wiki admins who haven't tried it out, utilizing Semantic MediaWiki and then Semantic Forms to provide users a form to fill out for character pages, logs, etc. can be super powerful and fantastic.

    Seconded! You can do some really amazing things with SemanticMediawiki. I keep meaning to write a guide to it, but... lazy.

    Annnnnnd if you store character information in a mysql database, you can also import that straight into your wiki and even then have the wiki autocreate character pages, pulling in basic info and then letting players customise the rest.

    Yesssss. We're still getting our MySQL database set up for TLF, but that's our end goal.



  • What is this sorcery? Wiki templates that don't require extensive beatings scientific experimentation to get to cooperate with DPL and can fetch whatever data you want?

    All of my wiki know-how has been violently self-taught in manipulating and maintaining code from HM. DPL works great, most of the time, but getting it to behave like I did on The Reach was extremely painful. From looking at SMW, it seems like it can potentially do more and with less headache. I approve.


  • Pitcrew

    @Sammi We basically use Semantic Mediawiki to store -- pretty much everything as what SMW calls "properties" in their database. Have a log? The participants are saved and attached the log, and you can drop a table or list onto a character page of logs their character has been in with a simple #ask function. We also do this to track information about plots, characters, and even users in regards to things they've GMed, etc. It's pretty awesome.



  • @Bobotron said:

    ETA: Here's a question. Can you get it to make other stuff display if the content is not filled? For example, if I have a header for RP Hooks and the hooks section is empty, I want RP Hooks to not display.

    Yes. You can see an example of that in the TR log template where the subtitle section disappears if there's no content. If there is content, it prints a table row and cell for the subtitle. Otherwise, nothing. The key is that you need to design a table that looks alright if whatever field doesn't exist.

    @Roz I'm definitely using that next time I set up a new wiki and have a couple of days to dig through syntax.


  • Pitcrew

    @Sammi said:

    @Roz I'm definitely using that next time I set up a new wiki and have a couple of days to dig through syntax.

    Lemme know if you ever want to hash stuff out! You can see what I've done on TLF's wiki with logs, character pages, Semantic Forms, etc. Although really I owe pretty much all of it to a co-staffer from a different game, who invented the wheel for it that I'm using now. The forms are especially helpful for players who are wiki-shy.