Extension:WikiShare

MediaWiki extensions manual
OOjs UI icon advanced.svg
WikiShare
Release status: beta
WikiShare extension icon.svg
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 />
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.

UsageEdit

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

InstallationEdit

  • Download and place the file(s) in a directory called WikiShare in your extensions/ folder.
  • Add the following code at the bottom of your LocalSettings.php:
    wfLoadExtension( 'WikiShare' );
    
  •   Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

ConfigurationEdit

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.

ConceptEdit

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 notesEdit

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

RoadmapEdit

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

NotesEdit

Sources for codeEdit

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

Model code to borrow from:

General thoughts / essaysEdit

Interested in bug squashingEdit

Free floating ideasEdit

  • 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"