在我目前的项目中,我有三个帖子类别(专栏,分拣和新闻),并使用Jetpack Publicize在Facebook和Twitter上分享任何新帖子。
对于"新闻"类别,我只想在Twitter上宣传(所以不知何故只为这个类别停用Facebook分享)。
我一直在查看Jetpack文档并调整了他们推荐的代码:
add_filter( 'wpas_submit_post?', 'news_twitter_submit_post', 10, 4 );
function news_twitter_submit_post( $ret, $post_id, $name, $connection ) {
// $categories = get_the_terms( $post_id, 'category' );
$categories = wp_get_post_categories( $post->slug );
if ( 'facebook' == $name ) {
if ( is_array( $categories ) )
$categories = wp_list_pluck( $categories, 'slug' );
if ( !empty( $categories ) && in_array( 'news', $categories ) ){
$ret = false;
}
}
return $ret; }
除此之外,该帖子仍在Facebook上发布。
我一直在查看publicize_should_publicize_published_post钩子,但无法让它工作。
我能以任何方式实现这一目标吗?
答案 0 :(得分:0)
所以我用Jetpack玩了一点,然后决定换到另一个插件。
一些注意事项:
我使用了publicize_should_publicize_published_post,它基本上是整个Publicize插件的一个很大的ON / OFF开关。无法让它只关闭一个频道(Facebook)
无论我如何表达if-else条件,Facebook发布仍然经历过,尽管我确实检查了该功能的输出是否正确。
仍然有兴趣知道是否有人为这个问题提供了一个干净的解决方案,但让我们关闭这个问题。