Wordpress使用自定义帖子类型帖子关联常规帖子

时间:2011-07-26 12:55:35

标签: wordpress post

我想将自定义帖子类型的帖子与标准wordpress帖子相关联。任何人都可以指出我正确的方向如何实现这一目标?

原因是我想写博客文章,我的一些博客文章可能与特定产品有关。因此,在产品页面上,我希望能够为该产品提供相关文章的链接。

1 个答案:

答案 0 :(得分:1)

我建议将相关帖子/相关产品的ID数组或字符串保存为使用您网站后端的自定义字段。

在您网站的前端,您可以使用<?php echo get_the_title(ID); ?><?php echo get_page_link(ID); ?>功能从数据库和链接中获取相关的ID。

根据后端编辑的舒适程度,您可以使用functions.php中的以下代码将自定义Meta Box添加到后端。

add_action('admin_init', 'register_meta');
add_action('save_post', 'save_metadaten');


function register_meta(){
        add_meta_box("produkt_meta","Daten des Produkts","produkt_meta","produkt","normal","high");
}

function produkt_meta() {
    global $post;
    $custom = get_post_custom($post->ID);
    $preis = $custom["produkt_preis"][0]; ?>

    <h4>Produkt-Daten</h4>
    <p style="padding-bottom:4px;"><label style="width:200px; display:inline-block;">Preis:</label><input size="5" name="produkt_preis" value="<?php echo $preis; ?>" /> €</p>
    <?php
}

function save_metadaten(){
    global $post;

    // check if there are associated post IDs set somehow, and prepare these to save them in the database

    if($_POST["produkt_preis"]) {update_post_meta($post->ID, "produkt_preis", $_POST["produkt_preis"]);}
}

将“produkt_preis”替换为“associated_post_ids”或其他任何内容。

为了获得最大的舒适度,您可以在produkt_meta函数中添加一个JavaScript,其中列出了您的帖子,因此您只需单击它并自动填充元字段,但这是您应该自己创建的部分; - )

希望这有帮助。