1

現在、10万件をはるかに超える投稿があるカスタム投稿タイプがあります。管理パネルで投稿タイプのメインページに移動しようとすると、次のエラーが発生します。

致命的なエラー:行506の/home/spottercharts/spottercharts.com/wp-includes/cache.phpで許可された94371840バイトのメモリサイズが使い果たされました(84バイトを割り当てようとしました)

メインページには通常、そのタイプのすべての投稿が一覧表示されます。たくさんあるので、PHPのメモリをすべて使い果たしています。

php.iniでPHPメモリを増やすことが現在のオプションではない場合、Wordpressにそのタイプのすべての投稿をクエリしないようにする別の方法はありますか?投稿を検索する機能だけが必要であり、すべてをリストする必要はありません。そうでない場合は、この投稿タイプを最適化して、それほど多くのメモリを消費しないようにする方法はありますか?

4

1 に答える 1

2

私が最初に尋ねなければならないのは、どのようにして10万件を超える投稿を取得したかということです。これは、データベースに個別の投稿として含めるのは大変なことです。これらはすべて実際の投稿ではなく、他の目的で使用されているのではないかと思います。

ここにはいくつかのオプションがあります。

短期記憶-メモリ制限

サーバーの構成やホストで許可されている内容に応じて、サーバーのメモリ制限をさまざまな方法で変更できます。rootアクセス権がない場合はphp.ini、Webサイトのホームディレクトリにファイルを配置できます。

.htaccessまたは、次を追加してファイルを変更します。

php_value memory_limit 256M

Wordpressを使用しているので、wp-config.phpファイルに次の行を追加することもできます。

define('WP_MEMORY_LIMIT', '256M');

より良い方法

明らかに、上記は少なくともサイトを迅速に機能させるための良い方法ですが、実際にはそれは非常に高い使用率です。

メモリ使用量を改善する方法に関するいくつかの提案:

  1. データベースのサイズを減らします。個々の投稿の数を減らすために使用できる代替方法はありますか?
  2. を使用するときに返される特定の番号を要求することを確認してくださいquery_posts。これにより、データベースからのプルが多すぎるのを防ぐことができるため、サーバーの処理が少なくなります。

他にもできることはたくさんありますが、データベースに大量のデータがある理由と、Wordpressがデータを返すために必要なクエリと作業の量を最小限に抑える方法を検討する必要があります。

于 2012-10-21T16:06:22.027 に答える