質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

4回答

959閲覧

PHPバージョン変更(5.2→7.1)によるエラー(HTTP ERROR 500)

chiyu

総合スコア0

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

1クリップ

投稿2020/08/05 08:31

前提・実現したいこと

先日OBからの依頼で部の新しいHPを作成することになったばかりのため、プログラミングの知識はほとんどありません。解決するにあたり情報が足りない等あればお教えください。
既存の部のHPのPHPのバージョンを5.2(もしかしたら5.1)からver.7.1に変更したところエラーが出ました。HPはWordPressで作成、エラーが生じているファイルはwp-function.phpと出ています。

発生している問題・エラーメッセージ

Fatal error: Cannot use "self" when no class scope is active in

該当のソースコード

見当がつかないため、エラーが出ているとされるline108付近のコード一通りコピー致します。

if (!function_exists('mb_substr')) {
function mb_substr( $str, $start, $count = 'end' ) {
if ( $start != 0 ) {
$split = self::mb_substr_split_unicode( $str, intval( $start ) );
$str = substr( $str, $split );
}

if ( $count !== 'end' ) { $split = self::mb_substr_split_unicode( $str, intval( $count ) ); $str = substr( $str, 0, $split ); } return $str; }

}

試したこと

データベースのパスワードをnative_pssword形式に変更後、wp-function.php内のパスワードの箇所を書き換え

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

エラーが生じているファイルはwp-function.phpと出ています。

WordPress本体(旧バージョンを含め)にその名前のファイルが無いので、プラグインやテーマ内のファイルでしょうか。
そのプラグインのフォルダをリネームして起動してみてください。(1文字足すとか)

また、PHPのバージョンを落として(戻して)ログインできるかを確認してみてください。

※ 現状のサイトの完全なバックアップ(ファイル/DB全体)を取った上で作業しましょう。

投稿2020/08/05 15:05

kei344

総合スコア69606

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

chiyu

2020/08/08 16:56

ご回答ありがとうございます。バックアップの大切さを痛感しました。PHPはバージョンが古すぎて戻せないようなのでリネームの方をやってみます。
guest

0

WordPress自体のバージョンアップは検討されてませんか?
コアのコードは基本さわるものではないです。

投稿2020/08/05 08:41

m.ts10806

総合スコア80875

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2020/08/05 10:11 編集

クラスでselfな書き方でなく$this->な書き方になったのかなと察したり。 phpの古い書き方がぎりぎり動いていたバージョンから新しい仕様のphpになって 古い書き方があぶり出されているような気がした。 それをphpの知識も経験もない人が都度都度デバッグしながら書き換えていくのは困難。 WordPress自体をセーフモードだかデバッグモードで動かしてWordPress自体のバージョンアップをしたら、 あとは自前コードによるカスタマイズ部分のみに絞られるはず。
chiyu

2020/08/08 17:02

ご回答ありがとうございます。知識があまりないままネットの記事を読んで理解したつもりでアップデートしたのが間違いでした。8年ほど前に作成されてバージョンアップも何も行われていなかったようなのでもう少し知識をつけてからやってみたいと思います。
guest

0

WordPress デバッグモードについて - Qiita

デバッグモードを有効にしてもエラーが出るなら、
一旦プラグイン類を無効化する。
FTPクライアントソフトを駆使する方法になるかも。

不具合の原因確認にも便利!プラグインを一気に無効化する方法 | ワードプレステーマTCD

プラグインを無効化してもエラーになるなら、
次はテーマを無効化。
FTPクライアントソフトを駆使する方法になるかも。

WordPress のテーマを簡単に削除する方法を紹介

そこまでやって管理画面が出ないなら、さてどうしたもんかね。

投稿2020/08/05 14:43

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

chiyu

2020/08/08 16:59

ありがとうございます。知識が足りずまだ参考サイトの記事内容もきちんと把握できないような状況のため、いったん諦めて勉強してからチャレンジしたいと思います。ご丁寧にありがとうございます。
guest

0

回答して頂きありがとうございました。ひとまず現時点でバージョンアップやプラグインのファイル設定をいじるのは私にとって難しそうなので、もう少し勉強してから取り組みたいと思います。

投稿2020/08/08 17:04

chiyu

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問