Extension:WikiShare

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 135th)
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' );
    
  •   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"