2016-06-21 45 views
2

“阿贾克斯负载更多”插件已经安装在我的网站,我想改变订购的WordPress:如何更改订购“阿贾克斯负载更多”插件

spacial领域wp_posts表在DB

但我不能如何设置在我的帖子

<option value="spacial" selected="selected">VIP (default)</option> 
<option value="date">Date</option> 

改变了:

plugins/ajax-load-more/admin/shortcode-builder/shortcode-builder.php 

因此,它是:

<div class="inner half"> 
    <label class="full"><?php _e('Order By', 'ajax-load-more'); ?>:</label> 
     <option value="spacial" selected="selected">VIP (default)</option> 
    <select class="alm_element" name="post-orderby" id="post-orderby"> 
     <option value="date">Date</option> 
     <option value="title">Title</option> 
     <option value="name">Name (slug)</option> 
     <option value="menu_order">Menu Order</option> 
     <option value="author">Author</option> 
     <option value="ID">ID</option> 
     <option value="comment_count">Comment Count</option> 
     <option value="modified">Modified</option> 
     <option value="meta_value_num">meta_value_num</option>     
    </select> 
</div> 

但一切都没有改变和岗位不排序,因为我想在Admin Panel > Ajax Load More > Shortcode Builde

简码输出:

[ajax_load_more post_type="post" orderby="spacial"] 

我应该在哪里把“短代码建设者'代码?

------------------- Updata -------------------

You mean Admin面板> Apearacne>编辑>主网页(主页)

我可以发现:

echo do_shortcode('[ajax_load_more category__not_in=1 '.$query.' button_label="More Posts" orderby="title" order="DESC" posts_per_page="20" ]'); 

当我改变orderbyspacial它不工作

我也尝试:

<?php 
    $cat = get_category(get_query_var('cat')); 
    $category = $cat->slug; 

    if (!empty ($category)) 
     $query .= ' category="'.$category.'" '; 
    if (isset ($_GET["province"]) && !empty($_GET["province"])) 
     $query .= ' meta_key="province" meta_value="'.$_GET["province"].'" '; 
    if (isset ($_GET["city"]) && !empty($_GET["city"])) 
     $query .= ' meta_key="city" meta_value="'.$_GET["city"].'" '; 
    $query .= ' ORDER BY SPACIAL DESC'; 
    echo do_shortcode('[ajax_load_more category__not_in=1 '.$query.' button_label="More Posts" posts_per_page="20" ]'); 

?> 
+0

我不确定你是什么意思的改变顺序,但你可以把'shortcode-builder'动作/过滤器挂钩到活动主题/儿童主题的'functions.php文件中。 – Milap

+0

@Milap我是WP的初学者,你能解释一下吗? – AndroSco

回答

2

您只能通过自定义字段值不会在wp.posts表中的字段顺序(我相信)。 https://codex.wordpress.org/Class_Reference/WP_Query#Order_.26_Orderby_Parameters

如果空间是一个自定义字段。

[ajax_load_more post_type="post" orderby="meta_value" meta_key="spacial"] 
+0

它根据标题和wp_posts表中的一些字段排序,所以它是如何做到这一点的? – AndroSco

+0

你不能。您需要使用WordPress WPDB类创建自定义查询。 https://codex.wordpress.org/Class_Reference/wpdb然后使用'post_in' shortcode参数将此自定义查询的结果传递给Ajax Load More。 –

+0

已更新,请检查,谢谢 – AndroSco