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

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

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

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

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

Q&A

解決済

4回答

2590閲覧

助けてください!wordpessにユーザーログイン後、エラーと空ページになります

sai_to

総合スコア20

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

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

0グッド

0クリップ

投稿2016/10/26 03:34

###前提
wordpressにbuddypressを合わせて会員サイトを作っています。
paypalで入会金支払い後、新規会員登録ページを表示させようと思っているのです。
まず、paypalボタンを既存会員には見せないようにしたいと思い・・・

php

1<!--ペイパル--> 2<?php if (is_user_logged_in()) { 3 // ログインしている 4} else { 5 // ログインしていない 6 <form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top"> 7 <input type="hidden" name="cmd" value="_s-xclick"> 8 <input type="hidden" name="hosted_button_id" value="RF5LHJB8VNNNY"> 9 <input type="image" src="https://www.paypalobjects.com/ja_JP/JP/i/btn/btn_subscribeCC_LG.gif" border="0" name="submit" alt="PayPal - オンラインでより安全・簡単にお支払い"> 10 <img alt="" border="0" src="https://www.paypalobjects.com/ja_JP/i/scr/pixel.gif" width="1" height="1"> 11 </form> 12} ?> 13<!--ペイパル-->

と、テーマのheader.phpに入れたところwordpressの管理画面が表示されなくなってしまいました。
header.phpは元に戻してwordpress自体にはログイン完了できるのですが、表示されません。

###発生している問題・エラーメッセージ
本来、管理画面が表示されるページでこう出ます。ページ自体は真っ白になっています。

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/users/1/サイト/web/home/wp-content/themes/mesocolumn/functions.php:318) in /home/users/1/サイト/web/home/wp-content/plugins/siteguard/siteguard.php on line 153 Warning: Cannot modify header information - headers already sent by (output started at /home/users/1/サイトweb/home/wp-content/themes/mesocolumn/functions.php:318) in /home/users/1/サイト/web/home/wp-login.php on line 402 Warning: Cannot modify header information - headers already sent by (output started at /home/users/1/サイト/web/home/wp-content/themes/mesocolumn/functions.php:318) in /home/users/1/サイト/web/home/wp-login.php on line 415 Warning: Cannot modify header information - headers already sent by (output started at /home/users/1/サイト/web/home/wp-content/themes/mesocolumn/functions.php:318) in /home/users/1/サイト/web/home/wp-includes/pluggable.php on line 892 Warning: Cannot modify header information - headers already sent by (output started at /home/users/1/サイト/web/home/wp-content/themes/mesocolumn/functions.php:318) in /home/users/1/サイト/web/home/wp-includes/pluggable.php on line 893 Warning: Cannot modify header information - headers already sent by (output started at /home/users/1/サイト/web/home/wp-content/themes/mesocolumn/functions.php:318) in /home/users/1/サイト/web/home/wp-includes/pluggable.php on line 894 Warning: Cannot modify header information - headers already sent by (output started at /home/users/1/サイト/web/home/wp-content/themes/mesocolumn/functions.php:318) in /home/users/1/サイト/web/home/wp-includes/pluggable.php on line 1174

/テーマ/functions.phpは最終行まで読み込んでるようなのですが、追いかけるも次のファイルでわからなくなります。

###該当のソースコード
wp-content/plugins/siteguard/siteguard.phpの153行目を含む項目

function sg_session_start( ) { if ( ! isset( $_SESSION ) ) { session_start( ); } }

153行目は「session_start( );」だそうなんです。
「function sg_session_start( )」は何かと見てみたら

class SiteGuard extends SiteGuard_Base { protected $menu_init; function __construct( ) { global $siteguard_config; add_action( 'plugins_loaded', array( $this, 'plugins_loaded' ) ); add_action( 'wp_loaded', array( $this, 'sg_session_start' ) ); $this->htaccess_check( ); if ( is_admin( ) ) { $this->menu_init = new SiteGuard_Menu_Init( ); add_action( 'admin_init', array( $this, 'upgrade' ) ); if ( '0' === $siteguard_config->get( 'show_admin_notices' ) && '1' === $siteguard_config->get( 'renamelogin_enable' ) ) { add_action( 'admin_notices', array( $this, 'admin_notices' ) ); $siteguard_config->set( 'show_admin_notices', '1' ); $siteguard_config->update( ); } } }

といことなんだと追ってみたのですが、これが何かよくわかりません。
もとの通りに管理ページを表示させたいのです。
ご教授のほど、よろしくお願い致します!

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

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

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

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

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

kei344

2016/10/27 04:29

どのように解決したのかを回答欄にお書きいただけませんか?このページに辿り着いた同じ疑問を持つ人のために、ぜひお願いします。
sai_to

2016/10/27 08:33

kei344さん、昨日はありがとうございました!そうですね、解決方を書き込みますね。ご指摘ありがとうございます。
guest

回答4

0

CyberMerginaさん、hnwさん、kei344さん、御提案いただきありがとうございました。
改めて御礼申し上げます。

解決した方法ですが、正直に申し上げますと決定打がどの方法だったかわからないのです。
最後に試していたのが、kei344さんの

functions.php の中身を全て削除してみてください。(必要があればバックアップをとってから)

管理画面には入れるようになりませんか?

を行って、管理画面・ダッシュボードが表示されて見れるようになりました。
しかし「Warning: session_start(): 」は管理者側でも、部外者からのアクセス画面でも表示されたままだったため、落胆していました。
気持ちを落ち着けようと他の作業(Wordpressのエラー解消以外)をしていていたら、いつの間にかWarningが消えていました。
functions.phpとheader.phpは触っていませんでした。
その後も今のところ出てきていません。
そのとき、一時的になぜかこのサイトや他の登録サイトでもcookieが切れていてログインしようとしてもできないことがありました。
もしかしたら関係があったのかもしれません。

投稿2016/10/27 08:55

sai_to

総合スコア20

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

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

0

ベストアンサー

functions.php の中身を全て削除してみてください。(必要があればバックアップをとってから)
管理画面には入れるようになりませんか?

投稿2016/10/26 07:48

kei344

総合スコア69364

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

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

sai_to

2016/10/26 08:28

ありがとうございます! 管理画面を見れるようになりました! しかしエラーの「Warning: session_start(): 」は表示されたままになっています。 どういった状態が考えられるでしょうか?
kei344

2016/10/26 09:17

一般的な原因特定フローは、下記の通りです。 1. DB/ファイル全てのバックアップをする 2. デバッグモードにする ⇒ http://mignonstyle.com/debug-mode/ 3. プラグイン/テーマ/本体全てをアップデートする 4. デフォルトテーマで再現するか確認する 5. プラグインを全て止めて再現するか確認する
guest

0

貴方のテーマファイルのfunctions.phpの318行目に何か書いてないですか?

<? ?>タグの外になにか書いてしまっているとか

改行が入ってしまっている等含めて確認してみてください。

投稿2016/10/26 07:29

hnw

総合スコア37

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

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

sai_to

2016/10/26 08:25

ありがとうございます。 空欄が入っていました・・・。 削除してアップしました。
guest

0

もし実際のソースをわかりやすく改変して書かれているのであれば、聞き流してもらいたいのですが

下記コードはPHPとHTMLが混同している為、

php

1<!--ペイパル--> 2<?php if (is_user_logged_in()) { 3 // ログインしている 4} else { 5 // ログインしていない 6 <form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top"> 7 <input type="hidden" name="cmd" value="_s-xclick"> 8 <input type="hidden" name="hosted_button_id" value="RF5LHJB8VNNNY"> 9 <input type="image" src="https://www.paypalobjects.com/ja_JP/JP/i/btn/btn_subscribeCC_LG.gif" border="0" name="submit" alt="PayPal - オンラインでより安全・簡単にお支払い"> 10 <img alt="" border="0" src="https://www.paypalobjects.com/ja_JP/i/scr/pixel.gif" width="1" height="1"> 11 </form> 12} ?>

ctp

1<!--ペイパル--> 2<?php if (is_user_logged_in()) { ?> 3 // ログインしている 4<?php } else { ?> 5 // ログインしていない 6 <form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top"> 7 <input type="hidden" name="cmd" value="_s-xclick"> 8 <input type="hidden" name="hosted_button_id" value="RF5LHJB8VNNNY"> 9 <input type="image" src="https://www.paypalobjects.com/ja_JP/JP/i/btn/btn_subscribeCC_LG.gif" border="0" name="submit" alt="PayPal - オンラインでより安全・簡単にお支払い"> 10 <img alt="" border="0" src="https://www.paypalobjects.com/ja_JP/i/scr/pixel.gif" width="1" height="1"> 11 </form> 12<?php } ?>

と、すべきかと思いますがいかがでしょうか。

投稿2016/10/26 04:29

CyberMergina

総合スコア295

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

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

sai_to

2016/10/26 07:40

ありがとうございます。 あれは実際のソースそのものでしたので、提案いただいた通りにしてみましたが変わりありませんでした。 依然としてエラーが出ました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問