PHP code example of ceniver / laravel-blog
1. Go to this page and download the library: Download ceniver/laravel-blog library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
ceniver / laravel-blog example snippets
'pages' => [
// Paket ile gelen varsayilanlar
[
'page_type' => 'homepage',
'name' => 'Ana Sayfa',
'variables' => ['{site_name}', '{locale}'],
],
[
'page_type' => 'blog_index',
'name' => 'Blog Listesi',
'variables' => ['{site_name}', '{locale}'],
],
[
'page_type' => 'blog_category',
'name' => 'Kategori Sayfasi',
'variables' => ['{site_name}', '{category}', '{locale}'],
],
[
'page_type' => 'blog_article',
'name' => 'Makale Detay',
'variables' => ['{site_name}', '{title}', '{excerpt}', '{locale}'],
],
// Kendi ozel sayfalariniz
[
'page_type' => 'about',
'name' => 'Hakkimizda',
'variables' => ['{site_name}', '{locale}'],
],
[
'page_type' => 'contact',
'name' => 'Iletisim',
'variables' => ['{site_name}', '{locale}'],
],
[
'page_type' => 'product_detail',
'name' => 'Urun Detay',
'variables' => ['{site_name}', '{product_name}', '{price}', '{locale}'],
],
],
namespace App\Http\Controllers;
use Ceniver\Blog\Services\HeadBuilder;
use Ceniver\Blog\Services\SeoService;
class HomeController extends Controller
{
public function __construct(
private HeadBuilder $head,
private SeoService $seo,
) {}
public function index()
{
$locale = app()->getLocale(); // veya 'tr'
$headHtml = $this->head->render('homepage', $locale, [
'site_name' => $this->seo->siteName(),
'locale' => $locale,
]);
return view('home', compact('headHtml'));
}
}
// app/Http/Controllers/HomeController.php
public function index()
{
$headHtml = $this->head->render('homepage', 'tr', [
'site_name' => $this->seo->siteName(),
'locale' => 'tr',
]);
return view('home', compact('headHtml'));
}
// app/Http/Controllers/ProductController.php
use Ceniver\Blog\Services\HeadBuilder;
use Ceniver\Blog\Services\SeoService;
class ProductController extends Controller
{
public function __construct(
private HeadBuilder $head,
private SeoService $seo,
) {}
public function show(string $locale, Product $product)
{
$headHtml = $this->head->render('product_detail', $locale, [
'site_name' => $this->seo->siteName(),
'product_name' => $product->name,
'price' => $product->formatted_price,
'locale' => $locale,
]);
return view('products.show', compact('product', 'headHtml'));
}
}
$headHtml = $this->head->render('product_detail', $locale, [
'site_name' => $this->seo->siteName(),
'product_name' => $product->name,
'price' => $product->formatted_price,
'locale' => $locale,
], [
// Bu degerler master panel sablonlarini override eder
'title' => $product->seo_title ?? null,
'description' => $product->seo_description ?? null,
'og_image' => $product->image_url,
'og_type' => 'product',
'canonical' => url("/products/{$product->slug}"),
'robots' => $product->is_draft ? 'noindex, nofollow' : null,
'schema_json' => json_encode([
'@context' => 'https://schema.org',
'@type' => 'Product',
'name' => $product->name,
'image' => $product->image_url,
'offers' => [
'@type' => 'Offer',
'price' => $product->price,
'priceCurrency' => 'TRY',
],
]),
]);
$headHtml = $this->head->render('about', $locale, [
'site_name' => $this->seo->siteName(),
'locale' => $locale,
], [
'hreflang' => [
'tr' => url('/tr/hakkimizda'),
'en' => url('/en/about'),
'de' => url('/de/uber-uns'),
],
]);
$headHtml = $this->head->render(
string $pageType, // Sayfa tipi (config'teki page_type)
string $locale, // Dil kodu ('tr', 'en', vb.)
array $vars = [], // Sablon degiskenleri
array $overrides = [] // Opsiyonel override degerleri
);
bash
php artisan blog:install
bash
# Config yayinla
php artisan vendor:publish --tag=blog-config
# .env'ye ekle
BLOG_MASTER_URL=https://panel.example.com
BLOG_MASTER_API_KEY=your-api-key-here
BLOG_DEFAULT_LOCALE=tr
# Migration
php artisan migrate
bash
php artisan vendor:publish --tag=blog-views