Extension:BibleRef
![]() |
This extension stores its source code on a wiki page. Please be aware that this code may be unreviewed or maliciously altered. They may contain security holes, outdated interfaces that are no longer compatible etc. Note: No localisation updates are provided for this extension by translatewiki.net. |
BibleRef Release status: unknown |
|
---|---|
Implementation | Tag |
Description | This extension allows you to easily link Bible references to the Bible text at BibleGateway.com. |
Author(s) | Matt Dolan http://mgdproductions.co.uk |
Latest version | 1.2 |
License | No license specified |
Download | No link |
Translate the BibleRef extension if it is available at translatewiki.net |
|
Check usage and version matrix; code metrics |
This extension allows you to easily link Bible references to the Bible text at BibleGateway.com.
Contents
Installation[edit | edit source]
Add this line at the end of LocalSettings.php :
include_once('extensions/BibleRef.php');
You can add a variable (optional) $wgBibleRefDefaultVersion in the LocalSettings.php file to change the default version, example to use a French version as default :
$wgBibleRefDefaultVersion = 'ls';
Copy the following code into extensions/BibleRef.php :
<?php # Bible References # Version: 1.1 # # Modified 7th May 2007 by Matt Dolan # # Links a Bible reference to the text at Biblegateway.com # # You can take advantage of BibleGateway's features such as displaying two references together: # eg. Matt 28:18-20,2Cor 4 # # Tag : # <bible>ref</bible> # Example : # Col 1:15-20 # <bible>Col 1:15-20</bible> # # Soli Deo Gloria! $wgExtensionFunctions[] = 'wfBibleRef'; $wgExtensionCredits['parserhook'][] = array( 'name' => 'Bible References', 'version' => 1.2, 'description' => 'Links Bible References to BibleGateway.com', 'author' => 'Matt Dolan', 'url' => 'http://www.mediawiki.org/wiki/Extension:BibleRef' ); function wfBibleRef() { global $wgParser; $wgParser->setHook('bible', 'linkBibleRef'); } # The callback function for converting the input text to HTML output function linkBibleRef($input, $args) { global $wgBibleRefDefaultVersion; // BibleGateway's Version numbers $versions = array( 'niv-us' => 31, // New International Version (American English) 'niv' => 64, // New International Version (British English) 'nasb' => 49, // North American Standard Bible 'esv' => 47, // English Standard Version 'tniv' => 72, // Today's New International Version 'msg' => 65, // The Message 'nlt' => 51, // New Living Translation 'kjv' => 9, // King James Version 'av' => 9, // Authorised Version (= KJV) 'cev' => 46, // Contemporary English Version 'nkjv' => 50, // New King James Version 'ls' => 2, // Louis Segond 'sem' => 32, // La Bible du Semeur ); // Added functionality for other online Bibles - array values are URLs to search path $nonBGVersions = array( 'net' => 'http://net.bible.org/passage.php?passage=', // Net Bible 'greek' => 'http://www.zhubert.com/bible?source=greek&verseref=', // Original Greek ); $versionText = strtolower($args['ver']); // get the desired version from the XML tag if ($versionText=='') // if no version specified in XML tag { if (isset($wgBibleRefDefaultVersion)) { // use the default defined value, if that's set elsewhere if (is_int($wgBibleRefDefaultVersion)) $versionText = $wgBibleRefDefaultVersion; else $versionText = $versions[$wgBibleRefDefaultVersion]; } else // if none if given, default to ESV $versionText = 47; } if ($nonBGVersions[$versionText]!='') { // if the version requested match a non-Bible Gateway one above $output = "<a href='".$nonBGVersions[$versionText].urlencode($input)."' "; } else { if ($versions[$versionText]!='') // if the version requested match one defined above... $version = $versions[$versionText]; // get the BibleGateway version number elseif (is_int($versionText)) // if the given 'ver' tag is an integer, we'll assumed it's a version number $version = $versionText; $output = "<a href='http://www.biblegateway.com/passage/?search=".urlencode($input).";&version=".$version.";' "; } // if 'thisframe' is not specified in the XML tag, load it in a new window if (!isset($args['thiswindow'])) $output .= " target='_blank'"; $output .= ">".htmlspecialchars($input)."</a>"; return $output; }
Usage[edit | edit source]
Example: <bible>Col 1:15-20</bible>
Bible Version[edit | edit source]
The default Bible version is the ESV (English Standard Version) (see $wgBibleRefDefaultVersion above)
You may specify an alternate version in the tag, using the 'ver' attribute. Possible values:
- 'NIV-US' - New International Version (American English)
- 'NIV' - New International Version (British English)
- 'NASB' - North American Standard Bible
- 'ESV' - English Standard Version
- 'TNIV' - Today's New International Version
- 'MSG' - The Message
- 'NLT' - New Living Translation
- 'KJV' - King James Version
- 'AV' - Authorised Version (synonym for KJV)
- 'CEV' - Contemporary English Version
- 'NKJV' - New King James Version
- 'LS' - Louis Segond (french)
- 'SEM' - La Bible du Semeur (french)
- 'NET' - Net Bible
- 'Greek' - Original Greek
Eg.: <bible ver="niv">John 1:1</bible>
Link Target Window[edit | edit source]
The Bible page by default will open in a new window. If you would rather it opened in the same window add the flag 'thiswindow'.
Eg.: <bible thiswindow>2 Cor 4</bible>
Credits[edit | edit source]
Created by Matt Dolan - http://mgdproductions.co.uk
Example[edit | edit source]
See an example of this add-on in action at: Cubic Path Wiki (run by the author of the AIM extension)
See also[edit | edit source]
- Extension:BibliaVulgata - Links a Bible reference to the text of the latin Vulgata Clementina
- Extension:SacredText - Quote the Bible from within your wiki.