Community Central
Community Central
No edit summary
Tag: sourceedit
(Update, plus mobile bug is fixed)
Tag: sourceedit
Line 6: Line 6:
   
 
==Step-by-step==
 
==Step-by-step==
 
* First, you need to create a page of content for each tab you wish to display. These pages can be created anywhere on your wiki.
 
* First, you need to create a page of content for each tab you wish to display. These pages can be created anywhere on your wikia.
 
   
 
: In this example, we've created three subpages to this article, which we will use in our tabs below. They are titled:
 
: In this example, we've created three subpages to this article, which we will use in our tabs below. They are titled:
Line 99: Line 98:
   
 
The tabs themselves will appear in a div with the id "flytabs_Example", and their content will be placed in a separate div with the id "flytabs_Example-content-wrapper".
 
The tabs themselves will appear in a div with the id "flytabs_Example", and their content will be placed in a separate div with the id "flytabs_Example-content-wrapper".
 
<!-- unwork
 
==Styling the tabs via CSS==
 
Tab view has default styles and formatting provided automatically, but it can also be given a custom style through CSS. You may copy the following CSS (the blue tab style as seen on Wikia Help) to your site's global [[Help:CSS|CSS]]. You can adjust the values in the example below to create a unique color scheme and layout for the tabs.
 
 
<pre>
 
/*** TabView extension ***/
 
 
/* Style of all unselected tabs */
 
.yui-navset .yui-nav li
 
{
 
-moz-border-radius-topleft: 5px;
 
-moz-border-radius-topright: 5px;
 
background-color: #D9D9D9;
 
color: #3A3A3A;
 
font-size: 12px;
 
margin-top: 7px;
 
padding: 6px 20px 3px;
 
}
 
/* END Style of all unselected tabs */
 
 
/* Style of the selected tab */
 
.ui-tabs .ui-tabs-nav li.ui-tabs-selected a
 
{
 
background-color: #7FB5D7;
 
color: white;
 
font-weight: bold;
 
}
 
/* END Style of the selected tab */
 
 
/* Padding between tabs */
 
.ui-tabs .ui-tabs-nav li
 
{
 
margin: 0 0.2em 1px 0;
 
padding: 0;
 
}
 
/* END Padding between tabs */
 
 
/* Remove the border & space between tabs & content */
 
.ui-tabs .ui-tabs-nav
 
{
 
border-bottom: 0 none;
 
margin-bottom: 0;
 
}
 
/* Remove the border & space between tabs & content */
 
 
/* Background color and border of tab content */
 
.ui-tabs .ui-tabs-panel
 
{
 
background: none repeat scroll 0 0 white;
 
border: 2px groove gray;
 
}
 
/* END Background color and border of tab content */
 
 
</pre> -->
 
   
 
==Issues==
 
==Issues==
   
===Broken Mobile Experience===
+
===Mobile experience===
  +
On mobile devices, no tabs are shown - the pages are shown as a list of links.
Keep in mind that the Tab View "breaks" links when viewed on a mobile device. The HTML generated by the PHP portion of the extension simply creates a list of links wrapped inside a div element. Everything else is handled by the javascript portion of the extension. This would normally be good coding practice, allowing the page to fallback to raw links if Tab View's javascript is unable to load.
 
 
However, the links generated by the PHP code do not direct the user to the actual wiki page. It instead links directly to the render page. This wouldn't be much of a problem until you consider Wikia's mobile site doesn't load Tab View's JS. In fact, the mobile site doesn't load any of the javascript most extensions depend on. Thus anyone following said link on a mobile device is directed to a page with '''only''' the article's content.
 
 
Conventional implementations of code like this would have the link's href point to the original content, and a data attribute point to the render page.
 
   
===View/Edit Tab Content===
+
===View/edit tab content===
 
Tab view does not provide a simple way to view/edit the original page. This can be troublesome for inexperienced users that want to edit the content inside a tab. Since the tab is actually a link element, a user could right click it and click open to manually follow the link. But, as stated in the issue above, this would take the user to a render page.
 
Tab view does not provide a simple way to view/edit the original page. This can be troublesome for inexperienced users that want to edit the content inside a tab. Since the tab is actually a link element, a user could right click it and click open to manually follow the link. But, as stated in the issue above, this would take the user to a render page.
   
 
==See also==
 
==See also==
* [https://github.com/Wikia/app/tree/dev/extensions/wikia/TabView/TabView.php Source code of Tabview at Wikia]
 
 
* [[Help:Tabber]]
 
* [[Help:Tabber]]
   
 
==Further help and feedback==
 
==Further help and feedback==
 
 
{{Help and feedback section}}
 
{{Help and feedback section}}
   
Line 185: Line 123:
 
[[it:Help:Tabview]]
 
[[it:Help:Tabview]]
 
[[pt:Ajuda:Tab view]]
 
[[pt:Ajuda:Tab view]]
 
 
[[Category:Help|{{PAGENAME}}]]
 
[[Category:Help|{{PAGENAME}}]]

Revision as of 18:08, 27 September 2016

This extension is enabled by default on Fandom.

Tab view provides an easy way to display multiple content pages in a single article using tabs. This can be an attractive and useful view for organizing content.

For a similar extension that doesn't require multiple pages, see Tabber.

Step-by-step

  • First, you need to create a page of content for each tab you wish to display. These pages can be created anywhere on your wiki.
In this example, we've created three subpages to this article, which we will use in our tabs below. They are titled:
  • Open the page that you'd like to display tabs on for editing, and switch to source mode.
  • Enter your tab code in the following format:
<tabview>
PAGENAME1|TITLE1
PAGENAME2|TITLE2
PAGENAME3|TITLE3
</tabview>

So, in our example here, we'll enter:

<tabview>
Help:Tab view/Sample tab content 1|Tab 1
Help:Tab view/Sample tab content 2|Tab 2
Help:Tab view/Sample tab content 3|Tab 3
</tabview>

This will give us the following tabs:



Customization

In addition to the title, there are two other variables you can customize in your tabs:

  • Cache
  • Preset

We'll explain each of these below. They display in this order:

<tabview>
PAGENAME|TITLE|CACHE|PRESET
</tabview>

Disabling tab cache

If a page is showing very frequently updated information, you may want to force the tab to check for new content on each page load. This can be done with a second pipe, followed by the word "false." This should be used sparingly, however, as it can slow down the overall reading experience.

<tabview>
Help:Tab view/Sample tab content 1|Tab 1|false
Help:Tab view/Sample tab content 2|Tab 2
Help:Tab view/Sample tab content 3|Tab 3
</tabview>

Preset an open tab

The last variable chooses which tab is open when the page loads. By default, all tabs are closed, but you can choose an open tab by using a third pipe followed by the word "true":

<tabview>
Help:Tab view/Sample tab content 1|Tab 1
Help:Tab view/Sample tab content 2|Tab 2||true
Help:Tab view/Sample tab content 3|Tab 3
</tabview>

This will give you:



Parameters

The only parameters available in tabview is "title" and "id". You cannot customize each tabview in the page. Currently it has to be done via site CSS. The parameters are:

<tabview title="..." id="...">

Styling

Once you have set an id, you can modify every tab. For example, with id = Example:

ul.tabs > [data-tab="flytabs_Example0"] {
	/* style goes here for data-tab="flytabs_Example0" (first tab) */
}
ul.tabs > [data-tab="flytabs_Example1"] {
	/* style goes here for data-tab="flytabs_Example1" (second tab) */
}
ul.tabs > [data-tab="flytabs_Example2"] {
	/* style goes here for data-tab="flytabs_Example2" (third tab) */
}

The tabs themselves will appear in a div with the id "flytabs_Example", and their content will be placed in a separate div with the id "flytabs_Example-content-wrapper".

Issues

Mobile experience

On mobile devices, no tabs are shown - the pages are shown as a list of links.

View/edit tab content

Tab view does not provide a simple way to view/edit the original page. This can be troublesome for inexperienced users that want to edit the content inside a tab. Since the tab is actually a link element, a user could right click it and click open to manually follow the link. But, as stated in the issue above, this would take the user to a render page.

See also

Further help and feedback