Extension:CrossCat

From MediaWiki.org
Jump to: navigation, search
Language: English  • Français
MediaWiki extensions manual - list
Crystal Clear action run.png
CrossCat

Release status: experimental

Implementation Hook, Page action
Description The CrossCat extension provides a panel which allows user to explore category intersections.
Author(s) Juju2004Talk
Last version 0.35 (22 sept. 2011)
MediaWiki 1.17
License GPL
Download Download current version
User:Juju2004/Extensions/CrossCat/README
User:Juju2004/Extensions/CrossCat/CHANGELOG
Parameters

$wgCrossCatAllowIntersectionArticle, $wgCrossCatInclusiveIntersection, $wgCrossCatOldNavigatorCols, $wgCrossCatOldNavigationStyle, $wgCrossCatUseJSToDisplayIntersectionNavigator, $wgCrossCatSuggestions, $wgCrossCatSoftSplit, $wgCrossCatDistinguishCategoryPageCats, $wgCrossCatXDisplaysY

Hooks used
ArticleFromTitle

EditPage::importFormData
EditFormPreloadText
EditFormInitialText
SearchGetNearMatchComplete
OutputPageBeforeHTML

Check usage (experimental)

Warning Warning: This extension is under development and should not be used in a production environment.

The CrossCat extension allows user to navigate through categories and categories intersections and to create an article in an intersection of categories. It implements some of the features requested in en:Wikipedia:Category_intersection.

It has be designed to be compatible with the Extension:CategoryTree extension, although the purpose of CrossCat is to change the way category pages are used and displayed in MediaWikis.

Contents

[edit] Usage

[edit] Article

Unsing CrossCat, The "categorylinks" panel at the bottom of the article pages provides now checkboxes that allows user to select or unselect a category in the intersection of categories which contains the article. Press the "Exlore" button and you will be directed to the intersection page.

[edit] Category page

A category page provides a link to the corresponding intersection page.

You can create a subcategory or put the category in a supercategory : just fill an input box and click the button.

A category page doesn't show articles anymore (unless you use an option for forcing it) because CrossCat uses crowed categories : all intersections are made dynamically and then do not exists as subcategories.

[edit] Intersection page

An intersection page looks like a category page, but the purpose is different. It displays the articles, and not subcategories (unless you want to do the transition). You can create an article that is subcategorized in all the categories, just filling a text box. As in article pages, you can use check boxes to view a new intersection. You can also navigate in parent(s) or children of the categories, or add a category to intersect with the others.

To access directly an intersection page, just type : "Intersection:Cat1::Cat2::Cat3" in the search box.

[edit] Performance

Make intersections of categories is a major load for the data server. But before making this intersection, CrossCat must find all the descendants of categories that are intersected. The presence of hard-intersections as subcategories, slows down this first step, or may cause it to fail due to lack of memory or timeout.

To get an average performance with CrossCat, it is imperative to clean up the category tree of the hard-intersections. For wikis with a large number of articles, this cleaning must be at least semi-automated. This is one of the areas for improvement of CrossCat.

[edit] Download instructions

  • Download the latest release from sourceforge
  • Extract to temporary folder
  • Read installation instructions in section below

[edit] Installation

To install this extension, add the following to LocalSettings.php:

require_once("$IP/extensions/CrossCat/CrossCat.php");

Note: $IP stands for the root directory of your MediaWiki installation, the same directory that holds LocalSettings.php.

[edit] Configuration parameters

  • $wgCrossCatAllowIntersectionArticle : if true, allows the creation of an intersection article (not recommended);
  • $wgCrossCatInclusiveIntersection : if true, the intersection includes all the subcategories of intersected categories ;
  • $wgCrossCatOldNavigatorCols : if true, old display of intersection navigator (not recommended) ;
  • $wgCrossCatOldNavigationStyle : if true, parents and children are displayed as selects (not recommended) ;
  • $wgCrossCatUseJSToDisplayIntersectionNavigator : always true, to allow Javascript to display the intersection navigator in article pages ;
  • $wgCrossCatSuggestions : if true, displays some suggestions in input boxes ;
  • $wgCrossCatSoftSplit : if true, categories are splitted when saving a page (EXPERIMENTAL : DO NOT SET TO TRUE) ;
  • $wgCrossCatDistinguishCategoryPageCats : if true, distinguish between super-categories from a category and categories from a category page ;
  • $wgCrossCatXDisplaysY : a matrix to determine which page displays what.

[edit] See also

Extension:DynamicPageList

Personal tools
Namespaces

Variants
Actions
Navigation
Support
Download
Development
Communication
Print/export
Toolbox