我正在开发一个 wordpress 主题/插件,愚蠢地决定升级到 Mountain Lion。我将其作为全新副本安装。
但现在,我遇到了奇怪的错误。
我注意到的第一个错误是我的插件的一部分不再起作用,它引发错误:
PHP Parse error: parse error in /Library/WebServer/Documents/wordpress/wp-content/plugins/sendpress/inc/forms/email-style.2.0.php on line 309, referer: http://localhost/wordpress/wp-admin/
第 309 行:(顺便说一句,删除此代码并运行网站后一切正常)
<?if ( false !== $this->get_option('canspam') ){
echo wpautop( $this->get_option('canspam') );
} else { ?>
Blog/Company Name<br>
Street Address<br>
Anywhere, USA 01234<br>
<?php } ?>
</div><br>
此前并未出现过任何错误。
最重要的是,当我将其放入 functions.php 中时,会出现 php 分段错误
// This function adds javascripts in a proper manner
function holidayge_theme_js() {
if (!is_admin()) {
wp_enqueue_script( 'tabs', get_bloginfo('template_directory').'/js/tabs.js' );
wp_enqueue_script( 'lionbars', get_bloginfo('template_directory').'/js/jquery.lionbars.0.3.js' );
wp_enqueue_script( 'slides', get_bloginfo('template_directory').'/js/slides.jquery.js' );
wp_enqueue_script( 'dropp', get_bloginfo('template_directory').'/js/jquery.dropp.js' );
wp_enqueue_script( 'selectconvert', get_bloginfo('template_directory').'/js/selectConvert.js' );
wp_enqueue_script( 'easypaginate', get_bloginfo('template_directory').'/js/easypaginate.js' );
wp_enqueue_script( 'adgallery', get_bloginfo('template_directory').'/js/jquery.ad-gallery.js' );
wp_enqueue_script( 'simplemodal', get_bloginfo('template_directory').'/js/jquery.simplemodal.js' );
wp_enqueue_script( 'settings', get_bloginfo('template_directory').'/js/settings.js' );
}
add_action('init', 'holidayge_theme_js');
Apache 错误:
[Fri Jul 27 10:00:35 2012] [notice] child pid 662 exit signal Segmentation fault (11)
[Fri Jul 27 10:00:42 2012] [notice] child pid 653 exit signal Segmentation fault (11)
附言:是的,我需要因为升级到 1.0 版操作系统而受到惩罚。
答案1
我不确定导致分段错误的问题是什么,但也许是没有启用短 PHP 标记代码,从而导致语法错误?
<?php if ( false !== $this->get_option('canspam') ){
echo wpautop( $this->get_option('canspam') );
} else { ?>
答案2
不确定是否是复制代码的错误,但是你的 if 语句没有关闭:
// This function adds javascripts in a proper manner
function holidayge_theme_js() {
if (!is_admin()) {
wp_enqueue_script( 'tabs', get_bloginfo('template_directory').'/js/tabs.js' );
wp_enqueue_script( 'lionbars', get_bloginfo('template_directory').'/js/jquery.lionbars.0.3.js' );
wp_enqueue_script( 'slides', get_bloginfo('template_directory').'/js/slides.jquery.js' );
wp_enqueue_script( 'dropp', get_bloginfo('template_directory').'/js/jquery.dropp.js' );
wp_enqueue_script( 'selectconvert', get_bloginfo('template_directory').'/js/selectConvert.js' );
wp_enqueue_script( 'easypaginate', get_bloginfo('template_directory').'/js/easypaginate.js' );
wp_enqueue_script( 'adgallery', get_bloginfo('template_directory').'/js/jquery.ad-gallery.js' );
wp_enqueue_script( 'simplemodal', get_bloginfo('template_directory').'/js/jquery.simplemodal.js' );
wp_enqueue_script( 'settings', get_bloginfo('template_directory').'/js/settings.js' );
}
}
add_action('init', 'holidayge_theme_js');