wp_raise_memory_limit

説明

mixed wp_raise_memory_limit( [ string $context = 'admin' ] )
最大メモリー使用量を増やす。

パラメータ

  • $context
    コンテキスト('admin'、'image'または任意の名前)を指定(省略時は'admin')。

返り値

PHP設定のmemory_limit値を変更できない状態か、現在のmemory_limit値で-1(上限なし)の場合は、falseを返す。

注意

バージョン4.6.0で追加された関数で、標準では管理ページ(wp-admin以下のページ)を表示する際に呼び出している。従来のバージョンにおいて最大メモリー使用量をカスタマイズする場合、該当するページ内にadmin_memory_limitフィルターやimage_memory_limitフィルターが用意されており、それらを使用して行うことができた。バージョン4.6.0では関連ファイルで個別に記述されていた処理を一本化する形で本関数が用意されている。

管理ページ(wp-admin以下のページ)で最大メモリー使用量をカスタマイズしたい場合、この関数を呼び出すのではなく、関連するフィルター関数を登録して最大メモリー使用量を制御することになる。なお、すでにadmin_memory_limitフィルターやimage_memory_limitフィルターを使用している場合は特に変更する必要はない。

また管理ページを含む特定のページで最大メモリー使用量をカスタマイズしたい場合は、該当するフィルター関数を登録してページを表示する前段階で本関数を呼び出す。

【重要】各フィルター関数で変更する最大メモリー使用量の内容は、現在のmemory_limit値およびWP_MAX_MEMORY_LIMITの値(標準では256M)よりも大きくなければならない。


使用例

  • 特定ページ用のコンテキスト'private'で最大メモリー使用量を512Mに変更する。
    <?php
    // 最大メモリー使用量を変更したいページに以下を記述
    wp_raise_memory_limit( 'private' );
    
    // テーマのfunctions.phpやプラグインで以下を記述
    add_filter( 'private_memory_limit', 'mytheme_private_memory_limit' );
    
    function mytheme_private_memory_limit( $filtered_limit ) {
    	return '512M';
    }
    ?>

フィルター

[3.0.0]管理ページ全般の最大メモリー使用量を増やす場合は'admin_memory_limit'フィルターを呼び出す。パラメータ$filtered_limitにはWP_MAX_MEMORY_LIMITの値が格納されている。
$filtered_limit = apply_filters( 'admin_memory_limit', $filtered_limit );
[3.5.0]画像編集関連ページの最大メモリー使用量を増やす場合は'image_memory_limit'フィルターを呼び出す。パラメータ$filtered_limitにはWP_MAX_MEMORY_LIMITの値が格納されている。
$filtered_limit = apply_filters( 'image_memory_limit', $filtered_limit );
[4.6.0]任意のページの最大メモリー使用量を増やす場合は'{$context}_memory_limit'フィルター(例えば$contextが'private'の場合は'private_memory_limit')を呼び出す。パラメータ$filtered_limitにはWP_MAX_MEMORY_LIMITの値が格納されている。
$filtered_limit = apply_filters( "{$context}_memory_limit", $filtered_limit );

アクション

実行するアクションはありません。

ソースファイル

/wp-includes/functions.php

最終更新 : 2016年08月17日 15:20



お勧め

LevelとCapability(2011年4月14日 更新)

プラグインやテーマの管理ページを作成する際など、ユーザのレベルと権限を確認することがある。ここでは、権限グループ別のレベルと権限の有無を整理してみた。

プラグインのヘッダー情報を国際化対応しよう(2017年8月4日 更新)

バージョン4.8がリリースされてひと段落。あらためてプラグイン一覧ページを見てみると「Akismet」が「Akismet Anti-Spam (アンチスパム)」と表示されていた。説明文だけじゃなくプラグイン名も国際化対応できたのね。

投稿一覧に独自リンクを追加する(2013年10月16日 更新)

管理者ページの「投稿一覧」や「固定ページ一覧」の各投稿記事はマウスポインタを移動すると、「編集」や「クイック編集」といったリンクが表示される。このリンクに独自のリンクを追加する方法を調べてみた。

初期状態で「抜粋」ウィジェットを表示する(2014年1月7日 更新)

投稿編集ページのウィジェットは標準で表示されるものとされないものがある。フォーラムに『投稿の編集画面にデフォルトで抜粋を表示させたい』という投稿があったので、ちょっと調べてみた。

canvasタグを投稿したい(2013年12月27日 更新)

以前「投稿内容のid属性などを保存するための対策」で取り上げたように、WordPressでは投稿に記述できるHTMLタグが制限されている。同コラムでこの制限を調整する対策を紹介しているが、3.5以降ではフィルター関数を登録して対応できるようだ。