mgsmus hocam merhaba. tıkandım da yardımcı olursanız sevinirim.
app/DynamicDomain.php oluşturdum. içeriği şu şekilde;
`namespace App;
class DynamicDomain
{
private static string $domain = '';
public static function get(): ?string
{
return static::$domain;
}
public static function set(string $domain): void
{
static::$domain = $domain;
}
}`
daha sonra Middleware içerisine ResolveDynamicDomain.php dosyası oluşturdum;
`namespace App\Http\Middleware;
use App\DynamicDomain;
use Closure;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
class ResolveDynamicDomain
{
public function handle(Request $request, Closure $next): Response
{
$domain = $request->host();
if($domain != 'odatabilisim.com') {
DynamicDomain::set($domain);
}
return $next($request);
}
}`
veritabanında users tablosu içerisine domain
adında bir alan açtım. daha önce https://odatabilisim.com/web-site-user
yani kullanıcıların web sitelerine erişim controller'ı şu şekildeydi;
`public function userFrontendIndex (Request $request, $slug, FlasherInterface $flasher)
{
$user = User::where('slug', $slug)->first();
if (!$user) {
// TODO: burayı admin frontend'e yönlendireceğiz.
$flasher->addError('Page Not Found');
return view('welcome');
}
$data = [
'user' => User::where('slug', $slug)->first(),
'about_us' => UserAboutUs::where('user_id', $user->id)->first(),
'services' => UserServices::where('user_id', $user->id)->where('status', 1)->get(),
'pricing' => UserPricing::where('user_id', $user->id)->where('status', 1)->get(),
'faq' => UserFaq::where('user_id', $user->id)->where('status', 1)->get(),
'social_media' => UserSocialMedia::where('user_id', $user->id)->where('status', 1)->get(),
'home' => DB::table('user_homes')->where('user_id', $user->id)->first(),
];
if ($data['user']->template == 1){
return view('userFrontend.pages.userFrontendIndex', $data);
}elseif ($data['user']->template == 2){
return view('userFrontend_2.pages.userFrontend2Index', $data);
}elseif ($data['user']->template == 3){
return view('userFrontend_3.pages.userFrontend3Index', $data);
}else{
return view('userFrontend.pages.userFrontendIndex', $data);
}
}`
burada tıkandım hocam. yardımcı olur musunuz?