###前提
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( ); } } }
といことなんだと追ってみたのですが、これが何かよくわかりません。
もとの通りに管理ページを表示させたいのです。
ご教授のほど、よろしくお願い致します!
回答4件
あなたの回答
tips
プレビュー