2011-02-08 3 views
0

Вот ветвь кода я изолирован ...Почему эта строка скрипта разбивает Apache?

if (!is_search() 
    && (get_option('option1') 
     && !(is_page() 
      || get_option('option2') 
       || get_option('option3') 
        || in_category('excludeme', $post) 
      ) 
     ) 
    ) 

я вставил ...

<?php print "Hi, Mom!\n"; exit; ?> 

выше и ниже этой линии, чтобы изолировать причину аварии

+1

Откуда вы знаете, что это линия? – BoltClock

+0

Какое сообщение об ошибке вы получаете? Каковы симптомы? – MarioVW

+2

Я не знаю, почему это привело бы к сбою апача, но это наверняка разбило мой внутренний на лету-парсер. Он не может стоять. – delnan

ответ

2

Попробуйте разбить свой код на куски, чтобы дополнительно изолировать проблему: Это, очевидно, шаблон WordPress, и даже если вы можете подумать, что проблема не в основном коде WordPress, вам может потребоваться вывести вывод отладки внутри ядра чтобы выяснить, где именно происходит эта проблема. Другими словами, вам нужно войти в эти вызовы функций, чтобы выяснить, что вызывает проблему, - вы можете найти решение своей проблемы в этот момент.

<?php 
echo '<pre>'; 

echo PHP_EOL . 'is_search' . PHP_EOL; 
var_dump(is_search()); 

echo PHP_EOL . 'get option 1' . PHP_EOL; 
var_dump(get_option('option1')); 

echo PHP_EOL . 'is_page' . PHP_EOL; 
var_dump(is_page()); 

echo PHP_EOL . 'get option 2' . PHP_EOL; 
var_dump(get_option('option2')); 

echo PHP_EOL . 'get option 3' . PHP_EOL; 
var_dump(get_option('option3')); 

echo PHP_EOL . 'in category' . PHP_EOL; 
var_dump(in_category('excludeme', $post)); 
Смежные вопросы