Правки API #6

Merged
apuc merged 1 commits from feature/back-api into master 2024-05-30 20:17:31 +03:00

View File

@ -27,20 +27,57 @@ function getEndlessPostsResults($data)
$tags = get_the_tags($tag_slug); //Получаем тэги по айди $tags = get_the_tags($tag_slug); //Получаем тэги по айди
$i = 0; $i = 0;
$postSlugs = []; $postSlugs = [];
foreach ($tags as $key => $slug){ //Создаём массив с ID тэгов
$postSlugs[] += $tags[$i]->term_id; if (!$tags){
$i++; $tags = 'null';
} }
if (is_array($tags) && count($tags) > 0) {
$postSlugs = array_column($tags, 'term_id');
} else {
// Handle the case when no tags are found
$postSlugs = array(); // or some other default value
}
$id_from_permalink = explode('/', $link); $id_from_permalink = explode('/', $link);
$id_from_permalink = explode('-', $id_from_permalink[3]); $id_from_permalink = explode('-', $id_from_permalink[3]);
$id = $id_from_permalink[0]; $id = $id_from_permalink[0];
$requestedPost = get_post($id); $requestedPostFromPermalink = get_post($id);
$requestedPost = [
'id' => $requestedPostFromPermalink->ID,
"post_author" => $requestedPostFromPermalink->post_author,
"post_date" => $requestedPostFromPermalink->post_date,
"post_date_gmt" => $requestedPostFromPermalink->post_date_gmt,
"post_content" => $requestedPostFromPermalink->post_content,
"post_title" => $requestedPostFromPermalink->post_title,
"post_excerpt" => $requestedPostFromPermalink->post_excerpt,
"post_status" => $requestedPostFromPermalink->post_status,
"comment_status" => $requestedPostFromPermalink->comment_status,
"ping_status" => $requestedPostFromPermalink->ping_status,
"post_password" => $requestedPostFromPermalink->post_password,
"post_name" => $requestedPostFromPermalink->post_name,
"to_ping" => $requestedPostFromPermalink->to_ping,
"pinged" => $requestedPostFromPermalink->pinged,
"post_modified" => $requestedPostFromPermalink->post_modified,
"post_modified_gmt" => $requestedPostFromPermalink->post_modified_gmt,
"post_content_filtered" => $requestedPostFromPermalink->post_content_filtered,
"post_parent" => $requestedPostFromPermalink->post_parent,
"guid" => $requestedPostFromPermalink->guid,
"menu_order" => $requestedPostFromPermalink->menu_order,
"post_type" => $requestedPostFromPermalink->post_type,
"post_mime_type" => $requestedPostFromPermalink->post_mime_type,
"comment_count" => $requestedPostFromPermalink->comment_count,
"filter" => $requestedPostFromPermalink->filter,
];
$result[] = ['requested-post' => $requestedPost]; $result[] = ['requested-post' => $requestedPost];
$args = array( // Создаем массив с параметрами запроса $args = array( // Создаем массив с параметрами запроса
'tag__and' => $postSlugs, 'tag__and' => $postSlugs,
'posts_per_page' => 10, 'posts_per_page' => 10,
@ -52,23 +89,8 @@ function getEndlessPostsResults($data)
$posts = new WP_Query($args); // Инициализация запроса $posts = new WP_Query($args); // Инициализация запроса
while ( $posts->have_posts() ) { while ( $posts->have_posts() ) {
$posts->the_post(); $posts->the_post();
$tags = get_the_tags();
$postsTags ='';
$tags = get_the_tags();
foreach ($tags as $key => $tag){
$postsTags .= $tags[$i]->name;
if ($key < count($tags) - 1) {
$postsTags .= ', ';
}
$i++;
}
$actualTag = get_the_tags();
$terms = get_the_category();
$result[] = array( $result[] = array(
'post_id' => get_the_ID(), 'id' => get_the_ID(),
'permalink' => get_the_permalink(), 'permalink' => get_the_permalink(),
); );
} }