Extension:YJShopping

Category:Extensions without an imageCategory:Extensions without a compatibility policyCategory:BSD licensed extensions
MediaWiki extensions manual
YJShopping
Release status: stableCategory:Stable extensions
Implementation Tag Category:Tag extensions
Description generate item link via Yahoo! JAPAN API
Author(s) Kimagurenote (Corytalk)
Latest version 1.3.2
MediaWiki Category:Extensions without MediaWiki version
PHP 5.4.0+
Database changes No
License BSD 3-clause "Modified" License
Download https://kimagurenote.net/kn/YJShopping#Download
https://kimagurenote.net/kn/YJShopping#History
Example https://kimagurenote.net/kn/YJShopping#%E8%A8%98%E8%BF%B0%E4%BE%8B_Usage
<yjshopping>
Category:All extensionsCategory:Extensions not in ExtensionJson

The YJShopping extension provides a way to embed shopping link for some shopping sites via Yahoo! JAPAN Item Search API into wiki pages.

Installation

  • At first, you must get Yahoo! JAPAN API ID (Japanese).
  • You can use some affiliate program. If you want to use it, you must get those IDs from ValueCommerce or LinkShare.
  • Download zip file from author's website, unzip it and place the file(s) in a directory called YJShopping in your extensions/ folder.
  • Add the following code at the bottom of your LocalSettings.php file:
    /* Extension:YJShopping */
    require_once "$IP/extensions/YJShopping/YJShopping.php";
    $wgYJShoppingAppID = '★';
    $wgYJShoppingPlus['yahoo']['sid'] = '※';
    $wgYJShoppingPlus['yahoo']['pid'] = '※';
    $wgYJShoppingPlus['amazon'] = '◆';
    #$wgYJShoppingPlus['amazon']['sid'] = '※';
    #$wgYJShoppingPlus['amazon']['pid'] = '※';
    $wgYJShoppingPlus['rakuten'] = '▲';
    #$wgYJShoppingPlus['rakuten']['lsid'] = '●';
    #$wgYJShoppingPlus['rakuten']['sid'] = '※';
    #$wgYJShoppingPlus['rakuten']['pid'] = '※';
    $wgYJShoppingPlus['sofmap']['lsid'] = '●';
    $wgYJShoppingPlus['sofmapused']['lsid'] = '●';
    $wgYJShoppingPlus['naturum']['lsid'] = '●';
    $wgYJShoppingPlus['honto']['sid'] = '※';
    $wgYJShoppingPlus['honto']['pid'] = '※';
    $wgYJShoppingPlus['7net']['sid'] = '※';
    $wgYJShoppingPlus['7net']['pid'] = '※';
    $wgYJShoppingPlus['wowma']['lsid'] = '●';
    $wgYJShoppingPlus['nttxstore']['a8mat'] = '△';
    $wgYJShoppingPlus['qoo10']['sid'] = '※';
    $wgYJShoppingPlus['qoo10']['pid'] = '※';
    $wgYJShoppingPlus['anker']['sid'] = '※';
    $wgYJShoppingPlus['anker']['pid'] = '※';
    $wgYJShoppingPlus['mercari'] = '☆';
    $wgYJShoppingPlus['kakakucom'] = true;
    
    /* (option) */
    $wgYJShoppingDefaultButtons = [ 'yahoo', 'amazon', 'rakuten', 'mercari' ];
    $wgYJShoppingBookButtons = [ 'yahoo', 'amazon', 'rakuten', 'honto', 'ebookjapan', '7net', 'mercari' ];
    $wgYJShoppingMatchAddbtn = [ "anker" => "anker wowma" ];
    
    /* (option) Link target */
    $wgYJShoppingTarget = '_blank';
    
    /* (option) Lazy loading */
    $wgNativeImageLazyLoading = true;
    
  • If you use MediaWiki 1.32 or above, you will need some permissions. please see: MediaWiki_1.32/interface-admin.
  • Add the following code at the bottom of your MediaWiki:Common.css. You can fully customize it.
/* Extension:YJShopping */
DIV.yjshopping {
	clear: both;
	width: 100%;
	min-height: 180px;
	margin: 0 auto;
	padding: 0.5em;
	border: 1px solid #444;
	overflow: hidden;
}
DIV.yjshopping IMG.yjshoppingimg {
	float: left;
	margin: 0.1em 1em 0.1em 0.1em;
}
DIV.yjshopping P.yjshoppingname {
	margin: 0;
	font-size: 90%;
	text-indent: 0;
}
DIV.yjshopping P.yjshoppingstore::before {
	background-color: #bbb;
	border-radius: 10%;
	color: #fff;
	font-size: smaller;
	padding: 0 0.5em 0 0.5em;
	margin-right: 0.5em;
	content: "Ad";
}
DIV.yjshopping P.yjshoppingstore {
	margin: 0;
	font-size: 80%;
	text-indent: 0;
}
DIV.yjshopping UL {
	margin: 0;
}
DIV.yjshopping UL LI {
	display: inline-block;
	text-align: center;
	list-style: none;
	font-size: 85%;
	width: 10em;
	margin: 0.2em;
	padding: 0.2em 0.5em 0.2em 0.5em;
	border-radius: 0.5em;
	white-space: nowrap;
}
DIV.yjshopping UL LI A {
	color: #fff;
}
DIV.yjshopping UL LI.shoplinkyahoo {
	background-color: #f55;
}
DIV.yjshopping UL LI.shoplinkamazon {
	background-color: #f90;
}
DIV.yjshopping UL LI.shoplinkrakuten {
	background-color: #c00;
}
DIV.yjshopping UL LI.shoplinksofmap {
	background-color: #16f;
}
DIV.yjshopping UL LI.shoplinksofmapused {
	background-color: #3ba;
}
DIV.yjshopping UL LI.shoplinknaturum {
	background-color: #084;
}
DIV.yjshopping UL LI.shoplinkhonto {
	background-color: #4af;
}
DIV.yjshopping UL LI.shoplink7net {
	background-color: #153;
}
DIV.yjshopping UL LI.shoplinkwowma {
	background-color: #f71;
}
DIV.yjshopping UL LI.shoplinknttxstore {
	background-color: #06a;
}
DIV.yjshopping UL LI.shoplinkqoo10 {
	background-color: #5af;
}
DIV.yjshopping UL LI.shoplinkanker {
	background-color: #2ae;
}
DIV.yjshopping UL LI.shoplinkmercari {
	background-color: #f00;
}
DIV.yjshopping UL LI.shoplinkkakakucom {
	background-color: #02d;
}

Usage

<yjshopping>search keyword(s)</yjshopping>

Put item links about "fruits". For example:

<yjshopping>fruits</yjshopping>

Put book links about "MediaWiki". For example:

<yjshopping querytype="book">MediaWiki</yjshopping>

Put item links about "Type-C charger" sell from AnkerDirect and addbtn to Anker. (v1.3.0+) For example:

<yjshopping seller_id="ankerdirect" addbtn="anker">Type-C charger</yjshopping>

You can specify some parameters(*). For example:

<yjshopping genre_category_id="10604">MediaWiki</yjshopping>

(*) Details see here (Japanese).

You can set ISBN or JAN(EAN) code directly. For example:

<yjshopping querytype="isbn">978-4-04-072421-8</yjshopping>
<yjshopping querytype="jan">4988003561802</yjshopping>

If you get no result, this extension met some error(s) to call API.

Notice

Yahoo! JAPAN shopping search API v3 available only in Japan.

Additional information please see author's site (written in Japanese).

See also

Category:Yahoo extensions
Category:All extensions Category:BSD licensed extensions Category:Extensions not in ExtensionJson Category:Extensions not using extension registration Category:Extensions without MediaWiki version Category:Extensions without a compatibility policy Category:Extensions without an image Category:ParserFirstCallInit extensions Category:Stable extensions Category:Tag extensions Category:Yahoo extensions