当前位置: 首页 > 知识库问答 >
问题:

使用ACF在自定义wordpress页面模板中显示单个帖子内容

宰父才
2023-03-14

我已经创建了一个自定义字段,允许我从站点中的各个帖子中进行选择。导出的acf xml

<title>Posts to page</title>
        <link>http://wp.wafisherinteractive.com/nabc/?acf=acf_posts-to-page</link>
        <pubDate>Wed, 01 Nov 2017 16:41:44 +0000</pubDate>
        <dc:creator>XXXX</dc:creator>
        <guid isPermaLink="false">XXXXXXXXXXX</guid>
        <wp:post_id>6505</wp:post_id>
        <wp:post_date>2017-11-01 11:41:44</wp:post_date>
        <wp:post_date_gmt>2017-11-01 16:41:44</wp:post_date_gmt>
        <wp:comment_status>closed</wp:comment_status>
        <wp:ping_status>closed</wp:ping_status>
        <wp:post_name>acf_posts-to-page</wp:post_name>
        <wp:status>publish</wp:status>
        <wp:post_parent>0</wp:post_parent>
        <wp:menu_order>0</wp:menu_order>
        <wp:post_type>acf</wp:post_type>
        <wp:post_password></wp:post_password>
        <wp:postmeta>
            <wp:meta_key>_edit_last</wp:meta_key>
            <wp:meta_value><![CDATA[1]]></wp:meta_value>
        </wp:postmeta>
        <wp:postmeta>
            <wp:meta_key>_publicize_pending</wp:meta_key>
            <wp:meta_value><![CDATA[1]]></wp:meta_value>
        </wp:postmeta>
        <wp:postmeta>
            <wp:meta_key>field_59f9f8b8ad422</wp:meta_key>
            <wp:meta_value><![CDATA[a:12:{s:3:"key";s:19:"field_59f9f8b8ad422";s:5:"label";s:12:"post to page";s:4:"name";s:12:"post_to_page";s:4:"type";s:11:"post_object";s:12:"instructions";s:50:"Select the post you'd like to display on this page";s:8:"required";s:1:"1";s:9:"post_type";a:1:{i:0;s:3:"all";}s:8:"taxonomy";a:1:{i:0;s:3:"all";}s:10:"allow_null";s:1:"0";s:8:"multiple";s:1:"1";s:17:"conditional_logic";a:3:{s:6:"status";s:1:"0";s:5:"rules";a:1:{i:0;a:2:{s:5:"field";s:4:"null";s:8:"operator";s:2:"==";}}s:8:"allorany";s:3:"all";}s:8:"order_no";i:0;}]]></wp:meta_value>
        </wp:postmeta>
        <wp:postmeta>
            <wp:meta_key>position</wp:meta_key>
            <wp:meta_value><![CDATA[normal]]></wp:meta_value>
        </wp:postmeta>
        <wp:postmeta>
            <wp:meta_key>layout</wp:meta_key>
            <wp:meta_value><![CDATA[no_box]]></wp:meta_value>
        </wp:postmeta>
        <wp:postmeta>
            <wp:meta_key>hide_on_screen</wp:meta_key>
            <wp:meta_value><![CDATA[]]></wp:meta_value>
        </wp:postmeta>
        <wp:postmeta>
            <wp:meta_key>rule</wp:meta_key>
            <wp:meta_value><![CDATA[a:5:{s:5:"param";s:13:"page_template";s:8:"operator";s:2:"==";s:5:"value";s:15:"single_post.php";s:8:"order_no";i:0;s:8:"group_no";i:0;}]]></wp:meta_value>
        </wp:postmeta>
    </item>

我希望能够选择一篇文章,并在新页面上分配该内容。我将自定义字段的范围限定为自定义页面模板

<?php 

/* Template Name: Single Post */

get_header(); ?>



    <div class="row">
        <div class="large-12 columns">  

                <?php

                /*
                *  Loop through post objects (assuming this is a multi-select field) ( setup postdata )
                *  Using this method, you can use all the normal WP functions as the $post object is temporarily initialized within the loop
                *  Read more: http://codex.wordpress.org/Template_Tags/get_posts#Reset_after_Postlists_with_offset
                */

                $post_objects = get_field('post_objects');

                if( $post_objects ): ?>
                    <ul>
                    <?php foreach( $post_objects as $post): // variable must be called $post (IMPORTANT) ?>
                        <?php setup_postdata($post); ?>
                        <li>
                            <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
                            <span>Post Object Custom Field: <?php the_field('post_to_page'); ?></span>
                        </li>
                    <?php endforeach; ?>
                    </ul>
                    <?php wp_reset_postdata(); // IMPORTANT - reset the $post object so the rest of the page works correctly ?>
                <?php endif;

                /*
                *  Loop through post objects (assuming this is a multi-select field) ( don't setup postdata )
                *  Using this method, the $post object is never changed so all functions need a seccond parameter of the post ID in question.
                */

                $post_objects = get_field('post_objects');

                if( $post_objects ): ?>
                    <ul>
                    <?php foreach( $post_objects as $post_object): ?>
                        <li>
                            <a href="<?php echo get_permalink($post_object->ID); ?>"><?php echo get_the_title($post_object->ID); ?></a>
                            <span>Post Object Custom Field: <?php the_field('post_to_page', $post_object->ID); ?></span>
                        </li>
                    <?php endforeach; ?>
                    </ul>
                <?php endif;

                ?>

        </div>
    </div>

<?php get_footer(); ?>

所以当我用这个模板创建一个新页面时,我可以根据标题选择一个帖子

但是那篇文章的内容不会显示。

共有1个答案

屈昊天
2023-03-14

在您发布的示例中,您没有将内容写入页面的任何位置。有一个模板标签,也被称为“内容”

 类似资料:
  • 我已经使用代码设置了WordPress自定义帖子类型。我已经设法让自定义帖子显示在“归档”页面中,但如果我单击“归档”页面中的链接,WP无法找到单个帖子页面。 我想我可能对定制的post permalinks有问题。希望有人能帮我 functions.php 页面模板 要显示自定义帖子,我设置了一个带有WP查询的新页面模板: 页面模板代码似乎工作和所有自定义帖子显示预期但当我点击标题链接我得到一个

  • 我有这个页面模板,很久以前由别人开发的,它根据我的帖子所在的类别在网格中显示我的所有帖子。 现在,我想为我的自定义帖子类型创建这样一个页面,但我无法让它工作。我试着换了新的 具有 这似乎是我到处寻找的答案。但对我来说,它是空洞的。在原始的页面模板下面,我想改变这个,这样它就可以加载“商店项目”自定义帖子类型。 任何正确方向的帮助或点头都将不胜感激!

  • 我试图为自定义帖子类型创建一个页面,但我无法真正实现。以下是我正在尝试的全部内容- 自定义帖子类型注册的functions.php片段 我使用名为单Tutorial.php的模板为这个自定义帖子类型模板。此外,在我的帖子显示中,我使用the_permalink()链接到帖子。 现在考虑一个标题为Test3的帖子现在在我的仪表板上,我看到它的PyMalink AS。 当我回显我得到的_permali

  • 我觉得这个问题有一个非常简单的解决方案。但是,在尝试解决了大约3个小时未果后,我谦卑地来找你。 一个自定义的帖子类型,乐队,已经创建,并有几个自定义字段(这是通过高级自定义字段插件创建的。) 我将如何获得和显示的内容(特别是自定义字段数据)的特定带条目(使用其ID或标题或段塞)内的一个常规的帖子?(见下图) 我们必须提供ID/title/slug,以便它知道要显示的band post的内容 短代码

  • 我正在我的Wordpress公文包网站上工作,并为我的公文包部分创建了一个自定义帖子类型。当用户单击my portfolio链接时,会将他们带到archive-portfolio.php,其中显示我所有项目的图库;当用户单击项目时,会将他们带到single-portfolio.php,其中显示关联的项目。 一切都正常工作,样式正确,但现在我想让archive-portfolio.php上的gall

  • 这不是关于特征图像元字段的问题。我试图找到一个答案,但我尝试的每一个搜索显示,人们试图添加‘特色图像’元到他们的自定义帖子类型。我已经为我的主题和我的自定义帖子类型启用了这个功能。看起来工作得很好。我已经设置了一个“特色图像”,我看到它时,我编辑的帖子。我的主题是一个二十岁的孩子。 在我的主页上,我显示了最近的条目(包括“post”类型和“custom-post”类型),标题、节选和左边的缩略图。