GaitExo — Walk Further. Live Freely.



Outdoor & Travel Exoskeletons



Insights & Resources

GaitExo Blog & News

Explore the latest insights on consumer exoskeleton technology, outdoor mobility, trail gear reviews, and partnership opportunities for distributors across Europe and North America.

Latest Articles

From the GaitExo Team


‘post’,
‘post_status’ => ‘publish’,
‘posts_per_page’ => 12,
‘paged’ => $paged,
‘orderby’ => ‘date’,
‘order’ => ‘DESC’,
]);

ob_start();

if ($blog_query->have_posts()) {
echo ‘

‘;
while ($blog_query->have_posts()) {
$blog_query->the_post();
$post_id = get_the_ID();
$permalink = get_permalink($post_id);
$title = get_the_title($post_id);
$excerpt = get_the_excerpt($post_id);
$date = get_the_date(‘F j, Y’, $post_id);
$author = get_the_author();
$safe_title = esc_html($title);
$safe_excerpt = esc_html($excerpt);
$safe_date = esc_html($date);
$safe_author = esc_html($author);
$safe_url = esc_url($permalink);

$categories = get_the_category($post_id);
$cat_name = !empty($categories) ? esc_html($categories[0]->name) : ‘General’;
$cat_url = !empty($categories) ? esc_url(get_category_link($categories[0]->term_id)) : ‘#’;

$thumb_id = has_post_thumbnail($post_id) ? get_post_thumbnail_id($post_id) : 0;
if ($thumb_id) {
$alt_text = get_post_meta($thumb_id, ‘_wp_attachment_image_alt’, true) ?: $title;
$thumb_html = wp_get_attachment_image($thumb_id, ‘medium_large’, false, [
‘class’ => ‘w-full h-full object-cover transition-transform duration-500 group-hover:scale-105’,
‘loading’ => ‘lazy’,
‘decoding’ => ‘async’,
‘alt’ => esc_attr($alt_text),
‘sizes’ => ‘(max-width: 640px) 100vw, (max-width: 1024px) 50vw, 33vw’,
]);
} else {
$thumb_html = ‘' . esc_attr($title) . '‘;
}

echo <<








By {$safe_author}

{$safe_title}

{$safe_excerpt}


Read More

HTML;
}
echo ‘

‘;

$total_pages = $blog_query->max_num_pages;
$current_page = $paged;

if ($total_pages > 1) {
$prev_disabled = $current_page <= 1 ? 'opacity-40 pointer-events-none' : ''; $next_disabled = $current_page >= $total_pages ? ‘opacity-40 pointer-events-none’ : ”;
$prev_page = max(1, $current_page – 1);
$next_page = min($total_pages, $current_page + 1);
$hx_target = ‘#blog-pagination-‘ . esc_attr($block_id);
$hx_swap = ‘innerHTML’;

$prev_params = http_build_query([‘block_id’ => $block_id, ‘paged’ => $prev_page]);
$next_params = http_build_query([‘block_id’ => $block_id, ‘paged’ => $next_page]);
$prev_url = ‘/wp-json/zeroy/v1/htmx/execute/current?’ . $prev_params;
$next_url = ‘/wp-json/zeroy/v1/htmx/execute/current?’ . $next_params;

echo <<


HTML;

for ($i = 1; $i <= $total_pages; $i++) { $page_params = http_build_query(['block_id' => $block_id, ‘paged’ => $i]);
$page_url = ‘/wp-json/zeroy/v1/htmx/execute/current?’ . $page_params;
$is_current = ($i === $current_page);
$active_class = $is_current
? ‘bg-[#1E3A8A] text-white border-[#1E3A8A] font-bold’
: ‘bg-white text-[#374151] border-[#D1D5DB] hover:bg-[#1E3A8A] hover:text-white hover:border-[#1E3A8A]’;
$aria_current = $is_current ? ‘aria-current=”page”‘ : ”;

$show = ($i === 1 || $i === $total_pages || abs($i – $current_page) <= 1); if (!$show) { if ($i === 2 || $i === $total_pages - 1) { echo '‘;
}
continue;
}

echo <<{$i}
HTML;
}

echo <<


HTML;
}
} else {
echo ‘

No posts found. Check back soon!

‘;
}

wp_reset_postdata();

$html = ob_get_clean();
hx_response($html);
exit;
}
?>

max_num_pages;
$current_page = $paged;

if ($total_pages > 1) {
$prev_disabled = $current_page <= 1 ? 'opacity-40 pointer-events-none' : ''; $next_disabled = $current_page >= $total_pages ? ‘opacity-40 pointer-events-none’ : ”;
$prev_page = max(1, $current_page – 1);
$next_page = min($total_pages, $current_page + 1);
$hx_target = ‘#blog-pagination-‘ . esc_attr($block_id);

$prev_params = http_build_query([‘block_id’ => $block_id, ‘paged’ => $prev_page]);
$next_params = http_build_query([‘block_id’ => $block_id, ‘paged’ => $next_page]);
$prev_url = ‘/wp-json/zeroy/v1/htmx/execute/current?’ . $prev_params;
$next_url = ‘/wp-json/zeroy/v1/htmx/execute/current?’ . $next_params;
?>

No Articles Yet

We’re working on great content. Check back soon!