通过从这里和那里拉出代码并将它们添加到functions.php中,学习如何手动添加自定义帖子类型和自定义字段而无需插件。以下是我将自定义字段添加到自定义帖子类型
的方法function add_ads_meta_boxes() {
add_meta_box("ads_contact_meta", "URL", "add_custom_ads_meta_box", "ads", "normal", "low");
}
function add_custom_ads_meta_box()
{
global $post;
$custom = get_post_custom( $post->ID );
?>
<style>.width99 {width:99%;}</style>
<p>
<input type="text" name="link-url" value="<?= @$custom["link-url"][0] ?>" class="width99" />
</p>
<?php
}
function save_ads_custom_fields(){
global $post;
if ( $post )
{
update_post_meta($post->ID, "link-url", @$_POST["link-url"]);
}
}
add_action( 'admin_init', 'add_ads_meta_boxes' );
add_action( 'save_post', 'save_ads_custom_fields' );
我可以在帖子类型中看到该字段,并保存添加的信息。现在,我将如何将其添加到网站
<div class="customadwrap">
<?php $args = array( 'post_type' => 'ads');
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post();
?>
<a href="<?php echo get_post_meta($post->ID, 'link-url', true); ?>">
<?php the_title(); ?>
</a>
<?php
endwhile;
?>
</div>
标题显示没有问题,但输入的网址不是。如何让fref工作?
答案 0 :(得分:0)
在第二段代码中,将$post->ID
替换为get_the_ID()
。