Добрый день.
Появилась необходимость исполнять php на страницах, а именно организовать вывод нужных рубрик на страницах блога. Установил плагин Exec-PHP и все заработало. Но есть одна проблемка, выводил рубрики двумя блоками:
1)
<?php
$posts_new = get_posts(‘category=142&numberposts=10’);
foreach ($posts_new as $post_new) :
echo ‘<li><a href="’;
echo get_permalink($post_new->ID);
echo ‘">’;
echo mysql2date(‘j.m.Y’, $post_new->post_date);
echo ‘ – ‘;
echo $post_new->post_title;
echo ‘</a></li>’;
endforeach;
?>
Все работает хорошо.
2)
<?php
$posts_new = get_posts(‘category=24&numberposts=1’);
foreach ($posts_new as $post_new) :
echo ‘<li ><a href="’;
echo get_permalink($post_new->ID);
echo ‘">’;
echo $post_new->post_title;
echo ‘</a></li>’;
if ( preg_match(‘/<!–more(.*?)?–>/’, $post_new->post_content, $matches) )
list($post_new->post_content,$junk) = explode($matches[0], $post_new->post_content, 2);
echo $post_new->post_content;
echo ‘<div><div style="line-height:25px"> </div>’;
endforeach;
?>
Это тоже полностью работает, но вначале выводимого поста выдает ошибку:
Warning: preg_match() [function.preg-match]: Unknown modifier ‘p’ in /home/navstarc/public_html/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()’d code on line 26
На 42 строке runtime.php находится eval("?>$content<?php "); (Незнаю надо ли эта инфа)
Вывод второго блока в сайдбар пробовал и все работает ок, без ошибки, получается, что проблема именно где-то в плагине в обработке тега more
Может кто-то может подсказать где здесь проблема или хотябы в какую сторону копать?
P.S. Про огранизацию вывода через шаблоны уже думал, но слишком много шаблонов надо будет продублировать, к сожалению, вышеописаным образом намного проще.
Проблема была в знаке "!"
Возникла правда вторая, теперь отображает посты только с more…