2016-12-14 4 views
0

私はかなり新しくコーディングしており、開発者が独自のプラグインを設定してテーマ外のfunctions.phpファイルを編集するWordPressサイトを引き継いだだけです。新しいプラグインのインストールが失敗し、テーマを検索できず、メディアライブラリが読み込まれていないなど、WordPressの特定のコア機能を壊しているコード行があるようです。しかし、私がこのプラグインを無効にすると、これらの機能はすべて元気に戻りますが、プラグインなしでサイトレイアウトの一部が破損します。だから誰も私にこのコードを修正する方法を教えてもらえますか?事前にありがとうございます。WordPressのカスタムプラグインからfunction.phpを編集しています。特定のコア機能を禁止するコード行?

<?php 
/* Your code goes below here. */ 

ob_start(); 
function check_user_logged_in(){ 

if (is_user_logged_in()) { ?> 
<style type="text/css" media="screen"> 
#theme-my-login-2 .widget-wrap .widget-title { display: block !important; } 
</style> 
<?php 
} 
else{ ?> 
<style type="text/css" media="screen"> 
table.sidebar_result{margin-top:-10px;} 
</style> 
<?php 
} 
} 

// Something is wrong with this next line of code. Can't find new themes or install new plugins. When removed everthing works ok. 
add_action('init', 'check_user_logged_in'); 

// Add Read More Link to Excerpts 
add_filter('excerpt_more', 'get_read_more_link'); 
add_filter('the_content_more_link', 'get_read_more_link'); 
function get_read_more_link() { 
return '...&nbsp;<a href="' . get_permalink() . '">[Read&nbsp;More]</a>'; 
} 

//* Display a custom favicon 
add_filter('genesis_pre_load_favicon', 'sp_favicon_filter'); 
function sp_favicon_filter($favicon_url) { 
return 'http://winningsportsplays.com/wspwp/wp-content/favicon.ico'; 
} 

/* Your code goes above here. */ 
?> 

答えて

0

コード自体はそのまま私にはうまく見えます。私の推測では、initを使って関数を初期化すると、何らかの原因でコアファイルのいくつかと競合が発生するということです。これに

add_action('init', 'check_user_logged_in'); 

add_action('wp_head', 'check_user_logged_in'); 

そして、それは問題を修正するかどうかを確認し、これを変更しようと

+0

"init"は問題ですが、あなたの提案はページ上の部品のスタイリングを壊してしまいます。問題は、機能が管理者またはダッシュボードのセクションに適用され、それを中断しているようです。 – kma1289

+0

問題が単に管理領域を壊しているだけで、他の場所で問題がある場合は、if(!is_admin()){}を使用して提案したように修正する必要があります。 – Milkman7

0

if (!is_admin()) {}をコードに追加すると機能しているようですが、それは正しいですか?

ob_start(); 
function check_user_logged_in(){ 
**if (!is_admin()) {** 
if (is_user_logged_in()) { ?> 
<style type="text/css" media="screen"> 
#theme-my-login-2 .widget-wrap .widget-title { display: block !important; } 
</style> 
<?php 
} 
else{ ?> 
<style type="text/css" media="screen"> 
table.sidebar_result{margin-top:-10px;} 
</style> 
<?php 
} 
**}** 
} 
関連する問題