Inicio » Cursos » Flutter y Laravel Tienda Delivery

Planteamiento y herramientas

BackEnd Administración

FrontEnd página web

Servicios web API Rest

  • 26.Integrar Json Web Tokens
  • 27.Autenticación con JWT
  • 28.Enviar Productos en JSON
  • 29.Recibir pedidos en Laravel

Desarrollo del aplicativo

Bonus

  • 53.SEO Onpage en Laravel
  • 54.Maquetación FrontEnd
  • 55.Diseño en Flutter

Curso Flutter y Laravel Tienda Delivery

Lección: 13 ➜ Blog para SEO

Para crear un blog con una orientación hacia el posicionamiento SEO de una tienda se debe tener alguna estrategia en la generación de contenidos, como blog

Lección 13: Blog para SEO

Para crear un blog con una orientación hacia el posicionamiento SEO de una tienda se debe tener alguna estrategia en la generación de contenidos, como blog

Modelo:

<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Publicaciones extends Model
{    
    protected $fillable = [
        'slug', 'title','description','nombre','descripcion', 'urlfoto','visitas','orden','categorias_id'
    ];
    public function categorias(){
        return $this->belongsTo("App\Categorias");
    }
}

Migration:

Schema::create('publicaciones', function (Blueprint $table) {
            $table->increments('id');
            $table->string('slug',50)->unique();
            $table->string('title',67);
            $table->string('description',155);
            $table->string('nombre',50);
            $table->text('descripcion');
            $table->string( 'urlfoto',100)->default('foto.jpg');
            $table->integer('visitas')->default(0);
            $table->integer('orden')->default(0);
            $table->integer('categorias_id')->unsigned();
            $table->foreign('categorias_id')->references('id')->on('categorias');
            $table->timestamps();
        });

Controlador:

<?php

namespace App\Http\Controllers\Admin;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App\Publicaciones;
use App\Categorias;

class PublicacionesController extends Controller
{
    public function index()
    {
        $publicaciones = Publicaciones::all();
      
        return view("admin.publicaciones.index",compact('publicaciones'));
    }
    public function create()
    {
        $categorias = Categorias::orderBy('nombre','asc')->pluck('nombre','id');
        return view("admin.publicaciones.create",compact("categorias"));
    }
    public function store(Request $request)
    {
        $publicacion = new Publicaciones($request->all());
        if($request->hasfile('urlfoto')):
            $urlfoto = $request->file('urlfoto');
            $ruta   = public_path('/img/publicaciones/'.$request->file('urlfoto')->getClientOriginalName());
            copy($urlfoto->getRealPath(),$ruta);
            $publicacion->urlfoto =$request->file('urlfoto')->getClientOriginalName();
        endif;       
        $publicacion->save();
        return redirect()->route('admin.publicaciones.index');
    }

    public function edit($id)
    {
        $publicacion = Publicaciones::whereId($id)->first();
        $categorias = Categorias::orderBy('nombre','asc')->pluck('nombre','id');
        return view("admin.publicaciones.edit",compact('publicacion','categorias'));
    }

    public function update(Request $request, $id)
    {
        $publicacion = Publicaciones::findOrFail($id);

        $publicacion->fill($request->all());

        if($request->hasfile('urlfoto')):
            $urlfoto = $request->file('urlfoto');
            $ruta   = public_path('/img/publicaciones/'.$request->file('urlfoto')->getClientOriginalName());
            copy($urlfoto->getRealPath(),$ruta);            
            $publicacion->urlfoto =$request->file('urlfoto')->getClientOriginalName();
        endif;        
        $publicacion->save();
        return redirect()->route('admin.publicaciones.index');
    }

    
    public function destroy($id)
    {
        $publicacion = Publicaciones::findOrFail($id);
        if(file_exists(public_path('/img/publicaciones/'.$publicacion->urlfoto)   ))
            unlink(public_path('/img/publicaciones/'.$publicacion->urlfoto));
        $publicacion->delete();
        return redirect()->route('admin.publicaciones.index');

    }
}

 


1581 visitas

Descarga el código del proyecto

Descarga el código fuente del proyecto adquiriendo el curso completo

Descargar ahora

Más cursos que pueden interesarte

Más cursos

Codea Codea App

México, Colombia, España, Venezuela, Argentina, Bolivia, Perú

© Todos los derechos reservados Codea App | ...de frente al código!!! | 2020 - 2023