Jump to content

Extension:WikiShare

From mediawiki.org
MediaWiki extensions manual
WikiShare
Release status: unmaintained
Implementation Skin , Tag
Description Adds social media sharing capabilities, without sending any user data, to wikis using sidebar portlet and page toolbar. With user preferences enabling/disabling the feature and individual services. Wiki SysAdmin settings to control the look, placement and appearance of the toolbar.
Author(s) Gregory Varnum (Varnenttalk)
Latest version 0.15042020
MediaWiki 1.35+
License GNU General Public License 2.0 or later
Download
Example WikiGreed
  • $wgWikiShareFollow
  • $wgWikiShare
  • $wgWikiShareServices
<wikishare />
Quarterly downloads 2 (Ranked 127th)
Translate the WikiShare extension if it is available at translatewiki.net
Issues Open tasks ¡ Report a bug

This extension adds share buttons to your wiki. It is in early stages of development and requires all settings to be configured via LocalSettings.php. A Special page for management in the future is in development.

Usage

[edit]

By default, the sidebar is set to appear on all pages.

By default, the toolbar will appear in the header of all articles in a content namespace.

Using the <wikishare /> tag, you can:

  • Display the toolbar on pages in non-content namespaces
  • Display the toolbar when it has been disabled in LocalSettings.php
  • Display the toolbar on places other than the page header

Installation

[edit]
  • Download and move the extracted WikiShare folder to your extensions/ directory.
    Developers and code contributors should install the extension from Git instead, using:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/WikiShare
  • Add the following code at the bottom of your LocalSettings.php file:
    wfLoadExtension( 'WikiShare' );
    
  • Yes Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

Configuration

[edit]
Parameter Default Description
$wgWikiShare['background'] '#f6f6f6' Background color for toolbox displayed in article header
$wgWikiShare['border'] '#a7d7f9' Border color for toolbox displayed in article header
$wgWikiShare['sidebar'] true Display widget as sidebar portlet
$wgWikiShare['header'] true Display widget toolbar in article header
$wgWikiShare['main'] true Display widget toolbar on the main page
$wgWikiShareServices['facebook']['service'] 'Facebook' Name of service
$wgWikiShareServices['facebook']['url'] 'http://www.facebook.com/sharer.php?u=%url%&t=%title% - %wiki%' URL for service sharing. Use %url% as a replacement for the page's URL, %title% for page's title, and %wiki% for wiki's name.
$wgWikiShareServices['facebook']['icon'] 'https://upload.wikimedia.org/wikipedia/commons/thumb/5/51/Facebook_f_logo_%282019%29.svg/40px-Facebook_f_logo_%282019%29.svg.png' URL of service sharing service's icon.
$wgWikiShareServices['twitter']['service'] 'Twitter' Name of service
$wgWikiShareServices['twitter']['url'] 'https://twitter.com/intent/tweet?text=Look%20what%20I%20found%20on%20%wiki%:%20%url%' URL for service sharing. Use %url% as a replacement for the page's URL, %title% for page's title, and %wiki% for wiki's name.
$wgWikiShareServices['twitter']['icon'] 'https://upload.wikimedia.org/wikipedia/commons/thumb/c/ce/Twitter_Logo.png/40px-Twitter_Logo.png' URL of service sharing service's icon.
$wgWikiShareServices[1]['service'] Name of service
$wgWikiShareServices[1]['url'] URL for service sharing. Use %url% as a replacement for the page's URL, %title% for page's title, and %wiki% for wiki's name.
$wgWikiShareServices[1]['icon'] URL of service sharing service's icon.
You can then replace '1' with '2' and so on until you have all your services entered.

Concept

[edit]

Develop a MediaWiki extension that allows social media sharing in a way that allows for deployment on Wikimedia project sites.

  • No use of APIs or scripts
  • No transmission of any of the wiki user's information - including IP address
  • Only support services that allow URL based submissions
  • Use Wikimedia Commons images
  • User preferences will allow wiki users to:
    • Disable or enable entire social media sharing feature for people avoiding social media
    • Disable or enable specific services
  • SysAdmin settings to:
    • Set defaults for user prefs
    • Add additional or custom services
    • Pick between 2-3 different toolbox designs

Release notes

[edit]
  • Alpha 0.15042020
    • Proof concept of design
    • Basic layout
    • Settings page not yet enabled

Roadmap

[edit]

Intended to help developer map out future features and communicate plans to potential users. Version in bold is the current development stage.

  • Alpha 0.2aX
    • Basic settings mapped out
  • Alpha 0.3aX
    • SpecialPages setup
  • Beta 0.XaX
    • Functional version with settings
  • Beta 0.XaX
    • Finalize images setup
  • Beta 0.XaX
    • Additional designs
  • Version 1.0
    • Fully functional for third-party wikis
  • Version 2.0
    • Compliance for Wikimedia project wikis

Notes

[edit]

Sources for code

[edit]

Working examples of concept in light form on current WMF sites:

Model code to borrow from:

General thoughts / essays

[edit]

Interested in bug squashing

[edit]

Free floating ideas

[edit]
  • Dantman: When you get close to the sharing area a grey x shows up on the right side of it. When you hover over it a tooltip says something like "Disable share buttons." After clicking the button the share area is replaced with a message. For logged out users "Share buttons have been disabled temporarily. [Log in] to disable them permanently. - Undo" and a cookie is set. For logged in users the message is "Share buttons have been disabled permanently. You can re-enable them later in your [preferences]. - Undo"
    • Dantman: After clicking the button the share area is replaced with a message. For logged out users "Share buttons have been disabled temporarily. Log in to disable them permanently. - Undo" and a cookie is set. For logged in users the message is "Share buttons have been disabled permanently. You can re-enable them later in your preferences. - Undo"