如何仅在填写时才在特定的自定义帖子类型帖子上显示自定义域

时间:2017-07-02 作者:JSF

在我的演示网站上,我想在特定custom post type. 如果可能,只有当它们有一个填充值时。演示站点:http://www.jsfaber.nl/gibson-eb-2014-120th-anniversary/

到目前为止,我的单身生活。php是:

<p>
Auteur: <?php echo get_post_meta( $post->ID, \'dublin_core_author\', true); ?><br>
Contributor: <?php echo get_post_meta( $post->ID, \'dublin_core_contributor\', true); ?><br>
</p>
但现在,这已经显示在网站的所有帖子上,而不仅仅是吉他相关的帖子。谁能帮帮我吗?

1 个回复
最合适的回答,由SO网友:DaveLak 整理而成

查看WPtemplate hierarchy. 当请求页面时,WordPress会按特定顺序搜索要加载的文件。您可以创建template specific to your custom post type. 您将复制名为single.php 并命名副本single-{post_type}.php 其中,“post\\u type”是您的CPT的名称。然后加载此文件,而不是single.php 每次请求单个自定义帖子类型页面时。

至于只显示字段,您可以检查它在if() 陈述当您在保存帖子时验证feild的值时,您可以检查用户是否设置了任何内容,如果他们没有设置,那么您应该将其设置为错误的内容,如空字符串。

然后,签入模板文件的方式如下所示:

<?php
    $meta_author = get_post_meta( $post->ID, \'dublin_core_author\', true);
    $meta_contributor = get_post_meta( $post->ID, \'dublin_core_contributor\', true);
    if ($meta_author != \'\' && $meta_contributor != \'\') :
        echo \'<p>
              Auteur: \' . $meta_author . \'<br>
              Contributor: \' . $meta_contributor . \'<br>
              </p>\';
    endif;
    ?>

<!--Other template html-->

结束

相关推荐

Add JavaScript to single post

我想在wordpress帖子中添加小javascript程序,请告诉我如何在WP帖子中添加/执行?编辑是的,我试过了,但运气不好。首先,我添加了HTML代码;在Post Text Editor中使用JavaScript,运气不好,然后我创建了单独的JS文件;仅发布HTML代码(&P);使用调用js文件<Script src=<Path of the JS File>> - 没有运气。