WP(WordPress插件)的即时文章有选择地从提要中丢弃帖子

WP(Wordpress插件)的即时文章有选择地从提要中丢弃帖子

WP(Wordpress插件)的即时文章有选择地从提要中丢弃帖子,wordpress,facebook-instant-articles,Wordpress,Facebook Instant Articles,我正在尝试自动排除所有没有自定义字段集的项目。我已经检查了“呈现前的即时文章”和“呈现后的即时文章”挂钩,但我想知道如何使用它们来防止文章呈现。有什么想法吗?即时文章发布前和发布后用于在发布前/发布后启动操作,但不能阻止发布呈现。您需要做的是挂接,以便更改Facebook即时文章使用的主查询 如果查看facebook-instant-articles.php插件文件,您将看到以下函数: function instant_articles_query( $query ) { if ( $q

我正在尝试自动排除所有没有自定义字段集的项目。我已经检查了“呈现前的即时文章”和“呈现后的即时文章”挂钩,但我想知道如何使用它们来防止文章呈现。有什么想法吗?

即时文章发布前和发布后用于在发布前/发布后启动操作,但不能阻止发布呈现。您需要做的是挂接,以便更改Facebook即时文章使用的主查询

如果查看facebook-instant-articles.php插件文件,您将看到以下函数:

function instant_articles_query( $query ) { if ( $query->is_main_query() && $query->is_feed( INSTANT_ARTICLES_SLUG ) ) { $query->set( 'orderby', 'modified' ); $query->set( 'posts_per_page', 100 ); $query->set( 'posts_per_rss', 100 ); /** * If the constant INSTANT_ARTICLES_LIMIT_POSTS is set to true, we will limit the feed * to only include posts which are modified within the last 24 hours. * Facebook will initially need 100 posts to pass the review, but will only update * already imported articles if they are modified within the last 24 hours. */ if ( defined( 'INSTANT_ARTICLES_LIMIT_POSTS' ) && INSTANT_ARTICLES_LIMIT_POSTS ) { $query->set( 'date_query', array( array( 'column' => 'post_modified', 'after' => '1 day ago', ), ) ); } } } add_action( 'pre_get_posts', 'instant_articles_query', 10, 1 ); 

您可以在此之后立即挂接并添加您自己的元条件,如下所示:

function instant_articles_query_modified($query) { if($query->is_main_query() && isset(INSTANT_ARTICLES_SLUG) && $query->is_feed(INSTANT_ARTICLES_SLUG)) { $query->set('meta_query', array( array( 'key' => 'your_required_meta' ) )); } add_action('pre_get_posts', 'instant_articles_query_modified', 10, 2); 

instant\u articles\u before\u render\u post

instant\u articles\u after\u render\u post

用于在后期渲染之前/之后启动操作,但不能阻止后期渲染。您需要做的是挂接,以便更改Facebook即时文章使用的主查询

如果查看facebook-instant-articles.php插件文件,您将看到以下函数:

function instant_articles_query( $query ) { if ( $query->is_main_query() && $query->is_feed( INSTANT_ARTICLES_SLUG ) ) { $query->set( 'orderby', 'modified' ); $query->set( 'posts_per_page', 100 ); $query->set( 'posts_per_rss', 100 ); /** * If the constant INSTANT_ARTICLES_LIMIT_POSTS is set to true, we will limit the feed * to only include posts which are modified within the last 24 hours. * Facebook will initially need 100 posts to pass the review, but will only update * already imported articles if they are modified within the last 24 hours. */ if ( defined( 'INSTANT_ARTICLES_LIMIT_POSTS' ) && INSTANT_ARTICLES_LIMIT_POSTS ) { $query->set( 'date_query', array( array( 'column' => 'post_modified', 'after' => '1 day ago', ), ) ); } } } add_action( 'pre_get_posts', 'instant_articles_query', 10, 1 ); 

您可以在此之后立即挂接并添加您自己的元条件,如下所示:

function instant_articles_query_modified($query) { if($query->is_main_query() && isset(INSTANT_ARTICLES_SLUG) && $query->is_feed(INSTANT_ARTICLES_SLUG)) { $query->set('meta_query', array( array( 'key' => 'your_required_meta' ) )); } add_action('pre_get_posts', 'instant_articles_query_modified', 10, 2); 

谢谢。上面的代码没有很好地工作,因为它缺少一个结尾},而isset导致了一个问题

试试这个:

 function instant_articles_query_modified($query) { if($query->is_main_query() && null!==INSTANT_ARTICLES_SLUG && $query->is_feed(INSTANT_ARTICLES_SLUG)) { $query->set('meta_query', array( array( 'key' => 'your_required_meta' ) )); } } 

谢谢。上面的代码没有很好地工作,因为它缺少一个结尾},而isset导致了一个问题

试试这个:

 function instant_articles_query_modified($query) { if($query->is_main_query() && null!==INSTANT_ARTICLES_SLUG && $query->is_feed(INSTANT_ARTICLES_SLUG)) { $query->set('meta_query', array( array( 'key' => 'your_required_meta' ) )); } } 

此文由“快兔兔AI采集器”自动生成,目的为演示采集器效果,若侵权请及时联系删除。

原文链接:http://www.duoduokou.com/wordpress/35304496635190988508.html

更多内容