Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在functions.php中使用get_posts()函数_Php_Wordpress - Fatal编程技术网

如何在functions.php中使用get_posts()函数

如何在functions.php中使用get_posts()函数,php,wordpress,Php,Wordpress,我正在尝试用ajax加载帖子。但我没有得到任何内容的帖子。我没有发布我的javascript,因为它非常简单。 这是我在inc/helper-functions.php中的代码,它包含在main functions.php中 function get_my_posts(){ $posts_per_page = $_POST['posts_per_page']; $category = $_POST['category']; $args = array(

我正在尝试用ajax加载帖子。但我没有得到任何内容的帖子。我没有发布我的javascript,因为它非常简单。 这是我在inc/helper-functions.php中的代码,它包含在main functions.php中

function get_my_posts(){

    $posts_per_page = $_POST['posts_per_page'];
    $category = $_POST['category'];

    $args = array(
        'posts_per_page'   => $posts_per_page,
        'offset'           => 0,
        'category'         => $category,
        'orderby'          => 'date',
        'order'            => 'DESC'
    );
    $myposts = get_posts( $args );

    if ( $myposts ) {

        foreach ( $myposts as $post ) {
            setup_postdata( $post );
            get_template_part( 'content', get_post_format() );
        }
        wp_reset_postdata();

    } else {
        echo 'Ingen innhold';
    }

    wp_die();
}

add_action("wp_ajax_get_my_posts", "get_my_posts");
add_action('wp_ajax_nopriv_get_my_posts', 'get_my_posts');
下面是content.php的外观:

<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>

    <div class="meta">
        <?php the_time('d.m.Y') ?>
    </div>

    <header class="entry-header">
        <?php  the_title( sprintf( '<h2 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ), '</a></h2>' ); ?>

    </header>

    <div class="entry-content">
        <?php the_excerpt(); ?>
    </div>

</article>
”);?>

我正在完成循环,但没有打印内容。例如_ID()、_extract()、post_class()等的函数都不起作用。如果我在模板中使用相同的代码,它可以正常工作。

$post
是全局代码,因此在使用
setup\u postdata($post)之前
(必须是
$post
而不是
$anyvar
!)您需要将其添加到当前范围。 在使用
setup\u postdata
的函数开头添加以下内容:


全球$post

$post
是一个全局变量,因此在使用
设置之前,\u postdata($post)
(必须是
$post
而不是
$anyvar
!)您需要将其添加到当前范围。 在使用
setup\u postdata
的函数开头添加以下内容:


全球$post

$post
是一个全局变量,因此在使用
设置之前,\u postdata($post)
(必须是
$post
而不是
$anyvar
!)您需要将其添加到当前范围。 在使用
setup\u postdata
的函数开头添加以下内容:


全球$post

$post
是一个全局变量,因此在使用
设置之前,\u postdata($post)
(必须是
$post
而不是
$anyvar
!)您需要将其添加到当前范围。 在使用
setup\u postdata
的函数开头添加以下内容:


全球$post

$post
是一个全局函数,因此请尝试在使用
global$post的
get_my_posts
函数开始时初始化它这就像一个符咒!非常感谢:)好的,太好了。我将添加它作为一个答案,这样它第一眼就可以看到。
$post
是一个全局函数,因此尝试在
get_my_posts
函数的开头使用
global$post这就像一个符咒!非常感谢:)好的,太好了。我将添加它作为一个答案,这样它第一眼就可以看到。
$post
是一个全局函数,因此尝试在
get_my_posts
函数的开头使用
global$post这就像一个符咒!非常感谢:)好的,太好了。我将添加它作为一个答案,这样它第一眼就可以看到。
$post
是一个全局函数,因此尝试在
get_my_posts
函数的开头使用
global$post这就像一个符咒!非常感谢:)好的,太好了。我会加上它作为一个答案,所以它是第一眼就能看到的。