pressbooks aldine theme the theme used for the front page or default book
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

68 lines
1.5 KiB

7 years ago
<?php
namespace Aldine;
7 years ago
use Sober\Controller\Controller;
class FrontPage extends Controller
7 years ago
{
public function blockCount()
{
7 years ago
$c = 0;
foreach ([
'home-block-1',
'home-block-2',
'home-block-3',
'home-block-4'
] as $block) {
if (is_active_sidebar($block)) {
$c++;
}
}
return $c;
}
public function blocks()
{
$blocks = [];
for ($i = 0; $i < 4; $i++) {
if (is_active_sidebar("home-block-$i")) {
$blocks[] = "home-block-$i";
}
}
return $blocks;
}
public function totalPages()
{
$books = wp_remote_get(network_home_url('/wp-json/pressbooks/v2/books?per_page=3'));
return $books['headers']['x-wp-totalpages'];
}
public function currentPage()
{
return get_query_var('page', 1);
}
public function previousPage()
{
return (get_query_var('page', 1) > 1) ? get_query_var('page') - 1 : 0;
}
public function nextPage()
{
return (get_query_var('page', 1) < FrontPage::totalPages()) ? get_query_var('page', 1) + 1 : 0;
}
public static function latestBooks($offset = null)
{
7 years ago
$path = ($offset) ?
"/wp-json/pressbooks/v2/books?per_page=3&page=$offset" :
'/wp-json/pressbooks/v2/books?per_page=3';
$books = wp_remote_get(network_home_url($path));
$books = json_decode($books['body'], true);
return $books;
}
7 years ago
}