WordPress通过动态值更改循环顺序

时间:2013-03-16 作者:Barbio

目前,我有一个名为“price”的自定义字段,可以正确排序我的帖子。

以下各项已起作用:

  $query_args[\'meta_key\'] = \'price\';
  $query_args[\'orderby\'] = \'meta_value_num\';
  $query_args[\'order\'] = \'asc\';
问题是这是一个“推荐”价格,实际价格需要在循环内计算。

问题是要知道是否有方法或技巧,在那里我们可以运行循环,计算实际价格,并根据实际价格变量显示帖子。

1 个回复
SO网友:revo

在您发布/更新帖子时,请使用price, 最好有另一个自定义元帖子来保存real price 在it中使用add_action()add_post_meta(), 然后,您可以使用您发布的查询,但$query_args[\'meta_key\'] = \'real_price\';

如下所示:

function wp_po54785( $post_id )
{
    $recommended_price = get_post_meta( $post_id, \'price\', true );
    if ( ! $recommended_price )
        return;

    // Avoid infinite loops
    remove_action( current_filter(), __FUNCTION__ );
    // If you\'re doing this from inside a class:
    # remove_action( current_filter(), array( $this, __FUNCTION__ ) );

    // The Algorithm
    // You use to
    // Calculate real price
    // By doing works on $recommended_price
    // And put in $real_price;
    add_post_meta( $post_id, \'real_price\', $real_price );
}
add_action( \'save_post\', \'wp_po54785\' );

结束

相关推荐

Modifying a Loop to Show More

此循环显示主题选项中指定的特定类别中超过4个帖子标题的一篇特色帖子。我想做的是显示4个标题中的所有4个帖子,在4个标题之上。这4个标题来自这段代码<a class=\"listtitle\" href=\"<?php the_permalink() ?>\" rel=\"bookmark\" title=\"<?php printf( esc_attr__( \'Permalink to %s\', \'wpnewspaper\' ), the_title_attribute( \