Open main menu

Extension:Redirect302

This page is a translated version of the page Extension:Redirect302 and the translation is 44% complete.

Other languages:
English • ‎日本語
MediaWiki 拡張機能マニュアル
Crystal Clear action run.svg
Redirect302
リリースの状態: ベータ
実装 Hook
説明 Adds a hook to create 302 style redirects
作者 Joshua Gay (Joshuagaytalk)
最新バージョン 0.2 (2012-11-07)
MediaWiki 1.17+
データベースの変更 いいえ
ライセンス GPL
ダウンロード see below
The Free Software Directory
使用するフック
InitializeArticleMaybeRedirect
translatewiki.net で翻訳を利用できる場合は、Redirect302 拡張機能の翻訳にご協力ください
使用状況とバージョン マトリクスを確認してください。

The Redirect302 extension changes the redirect hook so that an http 302 error is issued and the redirect is done on the client side.

Contents

インストール

  • Copy the code into filesして、ファイルを extensions/ フォルダー内の Redirect302 という名前のディレクトリ内に配置します。
  • 以下のコードを LocalSettings.php の末尾に追加します:
    require_once "$IP/extensions/Redirect302/Redirect302.php";
    
  •   完了 – ウィキの「Special:Version」に移動して、拡張機能が正しくインストールされたことを確認します。

コード

Redirect302.php

<?php

/**
 * This extension changes the redirect hook so that an http 302 error is issued and the redirect is done on the client side.
 *
 * @file
 * @ingroup Extensions
 */

if ( !defined( 'MEDIAWIKI' ) ) die();

// credits
define('Redirect302_VERSION', '0.2' );
$wgExtensionCredits['other'][] = array(
         'path' => __FILE__,
         'name' => 'Redirect302',
         'version' => Redirect302_VERSION,
         'author' => array( 'Joshua Gay' ),
         'url' => 'https://www.mediawiki.org/wiki/Extension:Redirect302',
         'descriptionmsg' => 'redirect302-desc',
);

// messages i18n
$dir = dirname(__FILE__) . '/';
$wgExtensionMessagesFiles['Redirect302'] = $dir . 'Redirect302.i18n.php';

// Register hook
$wgHooks['InitializeArticleMaybeRedirect'][] = 'redirect302_hook';

// Redirect with 302
function redirect302_hook($title, $request, &$ignoreRedirect, &$target, &$article) {
  if (!$ignoreRedirect && $article->isRedirect()) {
    if(($target = $article->followRedirect()) instanceof Title) {
      $target = $target->getFullURL();
    }
  }
  return true;
}

Redirect302.i18n.php

<?php
/**
 * Internationalisation file for extension Redirect302.
 *
 * @file
 * @ingroup Extensions
 */

$messages = array();
 
/** English
 * @author Joshua Gay
 */
$messages['en'] = array(
         'redirect302-desc' => 'Adds a hook to create 302 style redirects',
);

/** German (Deutsch)
 * @author Kghbln
 */
$messages['de'] = array(
         'redirect302-desc' => 'Ermöglicht Umleitungen mit HTTP-Statuscode 302',
);

On-wiki translation

/** Japanese
 * @author ?
 */
$messages['ja'] = array(
         'redirect302-desc' => 'HTTP 302 スタイルのリダイレクトを作成するフックを追加する',
);