Konfigurasi situs web

Dari GBI Danau Bogor Raya
Revisi sejak 21 September 2024 03.38 oleh Leo (bicara | kontrib) (upd)
Lompat ke: navigasi, cari

Berikut adalah konfigurasi website wiki GBI Danau Bogor Raya pada 05 Oktober 2022:

Extensions (Bundled with MediaWiki Installation)

Special pages

  1. CiteThisPage
  2. Interwiki
  3. Nuke
  4. Renameuser
  5. ReplaceText

Parser hooks

  1. CategoryTree
  2. Cite
  3. InputBox
  4. ParserFunctions
  5. Poem
  6. TemplateData

Editors

  1. WikiEditor

Others

  1. TextExtracts

Media handlers

  1. PdfHandler

API

  1. PageImages

Extensions (Non-Bundled)

LocalSettings.php

Extensions

Pastikan extensions yang akan di-load ini sudah tersedia di folder Extensions. Bila tidak maka dapat menimbulkan HTTP ERROR 500.

#
# ADDED EXTENSIONS
#

wfLoadExtension( 'DismissableSiteNotice' );
wfLoadExtension( 'DynamicPageList3' );
wfLoadExtension( 'EmbedVideo' );
require_once "$IP/extensions/FancyBoxThumbs/FancyBoxThumbs.php";
require_once "$IP/extensions/googleAnalytics/googleAnalytics.php";
wfLoadExtension( 'JavascriptSlideshow' );
wfLoadExtension( 'Lockdown' );
wfLoadExtension( 'MyVariables' );
wfLoadExtension( 'Popups' );
wfLoadExtension( 'JsCalendar' );

// wfLoadExtension( 'Lazyload' );
// wfLoadExtension( 'UserMerge' );

Permissions

#
# PERMISSIONS
#

$wgGroupPermissions['*']['createaccount'] = false;
$wgGroupPermissions['*']['edit'] = false;

$wgGroupPermissions['Editor']['edit'] = true;

$wgGroupPermissions['*']['upload'] = false;
$wgGroupPermissions['user']['upload'] = true;
$wgGroupPermissions['user']['upload_by_url'] = true;

$wgGroupPermissions['*']['reupload'] = false;

$wgGroupPermissions['Developer']['editinterface'] = true;
$wgGroupPermissions['Developer']['editsitecss'] = true;

Namespaces

#
# NAMESPACES
#

define('NS_INTERNAL', 100);
define('NS_INTERNAL_TALK', 101);
$wgExtraNamespaces[NS_INTERNAL] = "Internal";
$wgExtraNamespaces[NS_INTERNAL_TALK] = "Pembicaraan_Internal";

$wgExtraNamespaces[102] = "Khotbah";
$wgExtraNamespaces[103] = "Pembicaraan_Khotbah";

$wgExtraNamespaces[104] = "Lirik";
$wgExtraNamespaces[105] = "Pembicaraan_Lirik";

// $wgExtraNamespaces[106] = "Portal";
// $wgExtraNamespaces[107] = "Pembicaraan_Portal";

define('NS_LIVESTREAMING', 108);
define('NS_LIVESTREAMING_TALK', 109);
$wgExtraNamespaces[NS_LIVESTREAMING] = "LiveStreaming";
$wgExtraNamespaces[NS_LIVESTREAMING_TALK] = "Pembicaraan_LiveStreaming";

define('NS_HMMOSP', 110);
define('NS_HMMOSP_TALK', 111);
$wgExtraNamespaces[NS_HMMOSP] = "OSP";
$wgExtraNamespaces[NS_HMMOSP_TALK] = "Pembicaraan_OSP";

define('NS_ARTICLE', 112);
define('NS_ARTICLE_TALK', 113);
$wgExtraNamespaces[NS_ARTICLE] = "Article";
$wgExtraNamespaces[NS_ARTICLE_TALK] = "Pembicaraan_Article";

define('NS_EVENT', 114);
define('NS_EVENT_TALK', 115);
$wgExtraNamespaces[NS_EVENT] = "Event";
$wgExtraNamespaces[NS_EVENT_TALK] = "Pembicaraan_Event";

define('NS_PROPHETICEVENT', 120);
define('NS_PROPHETICEVENT_TALK', 121);
$wgExtraNamespaces[120] = "PropheticEvent";
$wgExtraNamespaces[121] = "Pembicaraan_PropheticEvent";

$wgContentNamespaces = array (NS_MAIN, 102, 104, NS_HMMOSP, NS_ARTICLE);
$wgArticleCountMethod = 'any';

$wgNamespacesToBeSearchedDefault = array(
	NS_MAIN =>           true,
	NS_TALK =>           false,
	NS_USER =>           false,
	NS_USER_TALK =>      false,
	NS_PROJECT =>        false,
	NS_PROJECT_TALK =>   false,
	NS_FILE =>           true,
	NS_FILE_TALK =>      false,
	NS_MEDIAWIKI =>      false,
	NS_MEDIAWIKI_TALK => false,
	NS_TEMPLATE =>       false,
	NS_TEMPLATE_TALK =>  false,
	NS_HELP =>           false,
	NS_HELP_TALK =>      false,
	NS_CATEGORY =>       false,
	NS_CATEGORY_TALK =>  false,
	NS_INTERNAL =>       false,
	NS_INTERNAL_TALK =>  false,
	102 => true,
	103 => false,
	104 => true,
	105 => false,
//	106 => true,
//	107 => false,
	NS_HMMOSP => true,
	NS_HMMOSP_TALK => false,
	NS_ARTICLE => true,
	NS_ARTICLE_TALK => false
);

$wgNamespaceRobotPolicies = array(
	NS_TALK =>           'noindex',
	NS_USER =>           'noindex',
	NS_USER_TALK =>      'noindex',
	NS_PROJECT_TALK =>   'noindex',
	NS_IMAGE_TALK =>     'noindex',
	NS_MEDIAWIKI_TALK => 'noindex',
	NS_TEMPLATE_TALK =>  'noindex',
	NS_HELP_TALK =>      'noindex',
	NS_CATEGORY_TALK =>  'noindex',
	NS_INTERNAL_TALK => 'noindex',
	NS_INTERNAL => 'noindex',
	103 => 'noindex',
	105 => 'noindex',
//	107 => 'noindex',
	NS_LIVESTREAMING_TALK => 'noindex',
	NS_HMMOSP_TALK => 'noindex',
	NS_ARTICLE_TALK=> 'noindex'
);

Tweeki skin

# 
# TWEEKI CONFIGURATION
#

wfLoadSkin( 'Tweeki' );
$wgDefaultSkin = "tweeki";

### BOOTSTRAP 4 ### For Tweeki 1.2.0+
$wgTweekiSkinUseBootstrap4 = true;

### NAVIGATION ### 
#### NAVIGATION: Hiding Page Elements ####
// make an element hideable with the {{#tweekihide:}} parser function
// (used on the main page)
$wgTweekiSkinHideable = [ 'firstHeading', 'sidebar-right', 'subnav' ];

// Elements in this array will be hidden for users who are NOT logged in.
$wgTweekiSkinHideAnon = [ 'subnav' => true, 'PERSONAL' => true,
   'TOOLBOX' => true, 'EDIT-EXT' => true, 'TOOLBOX-EXT' => true ];

// Elements in this array will only be shown to users 
// who have chosen in their preferences to show "advanced features".
$wgTweekiSkinHideNonAdvanced = [ 'EDIT-EXT-special' => false ];

#### NAVIGATION: Footer ####
// If set to false, the icons in the footer will be replaced by text aquivalents.
$wgTweekiSkinFooterIcons = false;

### MISCELLANEOUS ###
#### MISC: Font Awesome ####
// Whether or not to include Font Awesome to allow the use of icons
$wgTweekiSkinUseAwesome = true;

#### Bootstrap Theme ####
// Whether or not to include the code for Bootstrap's theme (enhanced styling for buttons etc.).
$wgTweekiSkinUseBootstrapTheme = true;

##### Tooltips #####
// Whether or not to use Bootstrap's tooltips for buttons using the data-bs-toggle="tooltip" attribute.
$wgTweekiSkinUseTooltips = true;

## UNSET FOOTER ICONS ##
unset ($wgFooterIcons['poweredby']['mediawiki']);

Extension: FancyBoxThumbs

#
# EXTENSION:FANCYBOXTHUMBS
#

$fbtFancyBoxOptions = '{"openEffect":"elastic", "nextClick":true, "loop":false}';

Extension: Lockdown

#
# EXTENSION:LOCKDOWN
#

$wgNamespacePermissionLockdown[NS_INTERNAL]['read'] = [ 'Editor' ];
$wgNamespacePermissionLockdown[NS_INTERNAL_TALK]['read'] = [ 'Editor' ];

$wgNamespacePermissionLockdown[NS_USER]['read'] = [ 'Editor' ];
$wgNamespacePermissionLockdown[NS_USER_TALK]['read'] = [ 'Editor' ];

$wgNamespacePermissionLockdown[NS_TALK]['read'] = [ 'Editor' ];

$wgActionLockdown['history'] = [ 'user' ];
$wgSpecialPageLockdown['Recentchanges'] = [ 'user' ];
$wgSpecialPageLockdown['Specialpages'] = [ 'user' ];
$wgSpecialPageLockdown['Relatedchanges'] = [ 'user' ];
$wgSpecialPageLockdown['RecentChangesLinked'] = ['user'];
$wgSpecialPageLockdown['Perubahan_terkait'] = ['user'];
$wgActionLockdown['history'] = [ 'user' ];

// prevent inclusion of pages from that namespace
$wgNonincludableNamespaces[] = NS_INTERNAL;
$wgNonincludableNamespaces[] = NS_INTERNAL_TALK;
$wgNonincludableNamespaces[] = NS_MEDIAWIKI;
$wgNonincludableNamespaces[] = NS_MEDIAWIKI_TALK;

Extension: GoogleAnalytics

Ganti xxxxxxx-x dengan nomor GoogleAnalytics UA. (Lihat di LocalSettings.php versi existing)

#
# EXTENSION:GOOGLEANALYTICS
#

// Replace xxxxxxx-x with YOUR GoogleAnalytics UA number
$wgGoogleAnalyticsAccount = 'XX-XXXXXXXX-X'; 
// Add HTML code for any additional web analytics (can be used alone or with $wgGoogleAnalyticsAccount)
$wgGoogleAnalyticsOtherCode = '<script type="text/javascript" src="https://analytics.example.com/tracking.js"></script>';

// Optional configuration (for defaults see googleAnalytics.php)
// Store full IP address in Google Universal Analytics (see https://support.google.com/analytics/answer/2763052?hl=en for details)
$wgGoogleAnalyticsAnonymizeIP = false; 

// Array with NUMERIC namespace IDs where web analytics code should NOT be included.
$wgGoogleAnalyticsIgnoreNsIDs = array(500);

// Array with page names (see magic word Extension:Google Analytics Integration) where web analytics code should NOT be included.
$wgGoogleAnalyticsIgnorePages = array('ArticleX', 'Foo:Bar');

// Array with special pages where web analytics code should NOT be included.
$wgGoogleAnalyticsIgnoreSpecials = array( 'Userlogin', 'Userlogout', 'Preferences', 'ChangePassword', 'OATH');

// Use 'noanalytics' permission to exclude specific user groups from web analytics, e.g.
$wgGroupPermissions['sysop']['noanalytics'] = true;
$wgGroupPermissions['bot']['noanalytics'] = true;

// To exclude all logged in users give 'noanalytics' permission to 'user' group, i.e.
$wgGroupPermissions['user']['noanalytics'] = true;

Extension: Popups

#
# EXTENSION:POPUPS
#

$wgPopupsHideOptInOnPreferencesPage = true;
$wgPopupsOptInDefaultState = '1';
$wgPopupsReferencePreviewsBetaFeature = false;

Miscellaneous

#
# MISCELLANEOUS
#

# Short URL
$wgArticlePath = '/wiki/$1';  # Virtual path. This directory MUST be different from the one used in $wgScriptPath
$wgUsePathInfo = true;

# Allow upload of almost any kind of file
$wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg', 'doc', 'svg', 'xls', 'pdf', 'docx', 'xlsx', 'webp', 'heic');
// $wgCheckFileExtensions  = true;
$wgStrictFileExtensions = true;
$wgMaxUploadSize = 1024*1024*100;

# Setting Sub-Halaman
$wgNamespacesWithSubpages = array_fill(0, 200, true);

# Setting HTML
$wgAllowCopyUploads = true;
$wgCopyUploadsFromSpecialUpload = true;
$wgHtml5 = true;
$wgForceHTTPS = true; // Added 03 Nov 2020 https://www.mediawiki.org/wiki/Manual:$wgForceHTTPS

# Setting Display Title
$wgAllowDisplayTitle = true;
$wgRestrictDisplayTitle = false;

# External Images
$wgAllowExternalImages = true;

# ImageMagick untuk SVG
$wgUseImageMagick = true;
$wgUseImageResize = true;
$wgSVGConverter = 'ImageMagick';
$wgAllowTitlesInSVG = true;
$wgDefaultUserOptions['imagesize'] = 0;

// $wgAdvancedSearchHighlighting = true;
# Search
$wgSearchEverythingOnlyLoggedIn = true;

# Others
$wgExternalLinkTarget = '_blank';
$wgEnableAPI = false;
$wgPFEnableStringFunctions = true;
$wgShowExceptionDetails = true;
$wgDismissableSiteNoticeForAnons= true;
$wgNativeImageLazyLoading  = true;
$wgJobRunRate = 0.5;

System Messages

Message Name Teks
MediaWiki: Tweeki-container-class
container-lg
tweeki-editsection-text
[Edit]
tweeki-footer-custom
LOGIN-EXT
tweeki-login
Login
tweeki-navbar-left
mainpage,

Perihal,
*GBI Danau Bogor Raya,
*GBI Rayon 7,
*GBI Jalan Gatot Subroto,
*Gereja Bethel Indonesia|Sinode Gereja Bethel Indonesia,
*Gembala Jemaat,
*Gembala Pembina,

Artikel,
*Artikel,
*Warta,
*Jadwal|Jadwal harian
*Jadwal/Minggu_ini|Jadwal mingguan
*Ibadah_online_(live_streaming)|Arsip ibadah online,

Pengajaran,
*Pengakuan Iman GBI,
*Pengajaran Dasar Gereja Bethel Indonesia|Pengajaran Dasar GBI,
*Ayo Baca Alkitab,
*Ayo Saat Teduh,
*Kehidupan Orientasi Melayani|Kehidupan Orientasi Melayani (KOM),
*Pentakosta Ketiga,
*Sikap teologis|Sikap Teologis GBI Jl Gatot Subroto,
*Pandangan GBI|Sikap Teologis Sinode GBI

Hubungi kami,
*Project:Media Sosial|Media Sosial,
*Persembahan,
*Hotline|Telepon/WhatsApp
tweeki-navbar-right
TOOLBOX-EXT,PERSONAL,SEARCH

Halaman Utama

Parser function tambahan di dalam Halaman Utama:

{{#tweekihide:sidebar-right|sidebar|firstheading|catlinks}}