FEATURE: cache most used SQL queries
This commit is contained in:
@@ -2,11 +2,12 @@
|
||||
|
||||
namespace App\Http\Controllers\Visitor;
|
||||
|
||||
use App\Models\Content\Content as ContentModel;
|
||||
use App\CMS\Contracts\Repositories\Content;
|
||||
use App\CMS\Helpers\PageRenderer;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Content\Content as ContentModel;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Cache;
|
||||
|
||||
class ContentPage extends Controller
|
||||
{
|
||||
@@ -20,13 +21,15 @@ class ContentPage extends Controller
|
||||
*/
|
||||
function __construct(Content $content)
|
||||
{
|
||||
|
||||
$this->content = $content;
|
||||
}
|
||||
|
||||
public function getPage($url)
|
||||
{
|
||||
$page = $this->content->getByURL($url);
|
||||
$contentModel = $this->content;
|
||||
$page = Cache::remember('content-' . $url, setting('contentCacheLifetime', 5), function () use ($contentModel, $url) {
|
||||
return $contentModel->getByURL($url);
|
||||
});
|
||||
|
||||
// no page available
|
||||
if (!$page) {
|
||||
|
||||
@@ -2,12 +2,17 @@
|
||||
|
||||
namespace App\Http\Controllers\Visitor;
|
||||
|
||||
use Illuminate\Support\Facades\Cache;
|
||||
|
||||
class Homepage extends ContentPage
|
||||
{
|
||||
public function getIndex()
|
||||
{
|
||||
// try to find some homepage
|
||||
$page = $this->content->getHomepage();
|
||||
$contentModel = $this->content;
|
||||
$page = Cache::remember('hp', setting('homepageCacheLifetime', 5), function () use ($contentModel) {
|
||||
return $contentModel->getHomepage();
|
||||
});
|
||||
|
||||
// test if we have any homepage
|
||||
if (!$page) {
|
||||
|
||||
Reference in New Issue
Block a user