如果'significado2'自定义字段为空,我创建了一个条件,所有内容都是隐藏的。 这些字段在Frontend Wordpress Post上运行良好,但帖子的标题没有显示。
出了点问题:
<?php $post = get_post_meta($post->ID, 'significado2', true) ; if (!empty($post)) { ?>
<div class="conteudo"<?php wpex_schema_markup( 'entry_content' ); ?>><?php the_content(); ?>
<hr />
<strong><span style="font-size: 21px;">2. <?php the_title(); ?></span></strong>
<p><em><span style="font-size: 18px; color: #008000;"> <?php the_field( 'significado2' ); ?></span></em></p>
<p style="padding-left: 30px;"><span style="color: #000080; font-size: 14px;"><i><?php the_field( 'ingles2' ); ?></i></span><br>
<span style="color: #ff0000; font-size: 14px;"><i> <?php the_field( 'portugues2' ); ?></i></span></p>
<?php echo wpautop( get_post_meta( get_the_ID(), $post . 'significado2', true ) );?>
</div>
我该如何解决这个问题? <?php the_title(); ?>
未显示在前端帖子页面
答案 0 :(得分:1)
我认为问题在于:
$post = get_post_meta($post->ID, 'significado2', true) ;
..因为这基本上会覆盖全局$post
变量。
所以改变这一行:
<?php $post = get_post_meta($post->ID, 'significado2', true) ; if (!empty($post)) { ?>
..对此:
<?php $key = get_post_meta($post->ID, 'significado2', true) ; if (!empty($key)) { ?>
并更改此行:
<?php echo wpautop( get_post_meta( get_the_ID(), $post . 'significado2', true ) );?>
..对此:
<?php echo wpautop( get_post_meta( get_the_ID(), $key . 'significado2', true ) );?>
或者修改后的代码:
<?php $key = get_post_meta($post->ID, 'significado2', true) ; if (!empty($key)) { ?>
<div class="conteudo"<?php wpex_schema_markup( 'entry_content' ); ?>><?php the_content(); ?>
<hr />
<strong><span style="font-size: 21px;">2. <?php the_title(); ?></span></strong>
<p><em><span style="font-size: 18px; color: #008000;"> <?php the_field( 'significado2' ); ?></span></em></p>
<p style="padding-left: 30px;"><span style="color: #000080; font-size: 14px;"><i><?php the_field( 'ingles2' ); ?></i></span><br>
<span style="color: #ff0000; font-size: 14px;"><i> <?php the_field( 'portugues2' ); ?></i></span></p>
<?php echo wpautop( get_post_meta( get_the_ID(), $key . 'significado2', true ) );?>
</div>
<?php
// You forgot to include the closing } (i.e. bracket). If this causes problems,
// then remove it.
?>
<?php } // end $key ?>