#php #sql #wordpress #loops #widget
#php #sql #wordpress #циклы #виджет
Вопрос:
Я пытаюсь создать виджет для отображения списка сообщений, понравившихся текущему пользователю в WordPress.
Все, что я получаю, это все сообщения, которые понравились всем пользователям. Как я мог бы улучшить свой код, чтобы я мог каким-то образом фильтровать и показывать только сообщения, понравившиеся текущему пользователю?
Заранее спасибо
Как выглядит мой код:
global $wpdb;
$user_id = get_current_user_id();
$title = apply_filters( 'widget_title', $instance['title'] );
echo $before_widget;
$results = $wpdb->get_results(
"SELECT wp_hearts_table.post_id,
wp_hearts_table.owner_id,
wp_posts.post_title
FROM wp_hearts_table
INNER JOIN wp_posts
ON wp_posts.ID = wp_hearts_table.post_id " );
//Widget content output
echo '<h4>My Heart It Posts amp;#10084;</h4>';
if(!empty($instance['amount'])){
//list of posts
echo "<ul>";
foreach($results as $result){
echo "<li>";
?>
<a href="<?php echo get_permalink($result->post_id) ?>">
<?php echo $result->post_title ?>
</a>
<?php
echo "</li>";
}
echo "</ul>";
}
echo $after_widget;
}
Комментарии:
1. Вы получаете
user_id
в верхней части вашего кода, но вы не использовали его для фильтрации вашего запроса