0

テスト サイトでデバッグが false に設定されている場合、すべて問題ありません。テンプレートをデバッグしようとすると、次のエラーが表示されます。

Notice: Undefined variable: post in /home/xxxxxxx/public_html/wp-content/themes/twentyeleven-child/functions.php on line 15

Notice: Trying to get property of non-object in /home/xxxxxxxx/public_html/wp-content/themes/twentyeleven-child/functions.php on line 15

これが私のコードですが、変数が何であるか、または非オブジェクトのプロパティがわかりません。

function excerpt($num) {
 $limit = $num+1;
 $excerpt = explode(' ', get_the_excerpt(), $limit);
 array_pop($excerpt);
 $excerpt = implode(" ",$excerpt)."... (<a href='" .get_permalink($post->ID) ." '>Read more</a>)";
 echo $excerpt;
}

これは、テンプレートで使用しているループです。

<?php $postslist = get_posts('category=4&numberposts=3&order=DESC&orderby=post_date');
foreach ($postslist as $post) :
setup_postdata($post); ?>
<div class="post_item">
<span class='side_date'><?php the_time('F j, Y'); ?></span><br />
<h2><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h2>
<?php excerpt(11); ?></div>
<?php endforeach; ?></div>

ありがとう...

4

1 に答える 1

0

追加してみる

global $post;

関数の先頭に。

于 2013-06-13T14:21:21.120 に答える