Post Categories

Engineering

Apa Yang Baru Di Laravel 5.5

BY

Luluk Oktaviani

|

Sejak pertama kali dirilis pada pertengahan 2011, Laravel telah menjelma menjadi salah satu framework yang paling banyak digunakan secara luas. Akhir Agustus 2017 menandai 6 tahun Laravel hadir sebagai framework fullstack yang memberi kekuatan bagi puluhan ribu aplikasi web maupun API. Di saat itu pula Laravel versi 5.5 dirilis dengan membawa beragam fitur menarik. Apa saja yang baru di Laravel 5.5? Simak beberapa ulasan berikut ini.

Whoops package

Kembalinya package populer yang sempat tidak disertakan di Laravel sebelumnya ini adalah kabar baik bagi saya. Whoops menampilkan exception dengan jelas dan cantik. Laravel 5.5 menyertakan Whoops v2 yang membawa sejumlah fitur seperti mencari bantuan mengenai exception terkait di Google dan StackOverflow dengan sekali klik.

Collection Dumper

Fitur ini memungkinkan kita untuk menginvestigasi nilai dari suatu Collection secara mudah. Kode dibawah akan menampilkan isi dari Collection $pages.

    $pages = Page::all()->dumper();

Kita juga dapat menggunakan dumper ini beberapa kali seperti

$pages = Page::all()->
    ->dump()
    ->filter(function($item) {
        if ($item->id == 1) return $item;
    })
    ->dump();

Exception custom rendering and reporting

Di Lavarel 5.5, kita bisa membuat class Exception sendiri serta membuat implementasi method render dan report sesuai dengan kebutuhan kita. Dua method ini nantinya akan dieksekusi ketika exception terjadi. Method render berisi kode tentang bagaimana exception ditampilkan, sedangkan method report berisi kode untuk melaporkan exception tersebut, semisal melalui email atau menulis nya ke log

<?php namespace App\Exceptions;

class MyCustomException extends \Exception {

    public function render()
    {
        return view('error.custom');
    }

    public function report()
    {
        // send to log
        // send email
    }
}

Responsible Interface

Dengan fitur ini, kita mendapat kontrol penuh bagaimana sebuah response dibentuk dan dikembalikan di dalam class terpisah

<?php namespace App\Responses;

use Illuminate\Contracts\Support\Responsable;

class MyCustomResponse implements Responsable {

    public function __construct()
    {

    }

    public function toResponse($request)
    {
        if ($request->wantsJson()) {
            // do something here
        } else {
            return view('custom_response');
        }

        // return redirect(), etc
    }
}

Kita dapat menggunakannya di sebuah Controller seperti

<?php

namespace App\Http\Controllers;

use App\Http\Requests;
use Illuminate\Http\Request;
use App\Responses\MyCustomResponse;

class HomeController extends Controller
{
    /**
     * Show the application dashboard.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        return new MyCustomeResponse;
    }
}

Frontend Preset

Laravel 5.5 menyediakan generator untuk beberapa frontend framework seperti bootstrap, react, dan vue.

~$ php artisan preset bootstrap|react|vue
~$ npm install

Artisan migrate fresh

Pada versi sebelumnya, Laravel telah mempunyai fitur migrate:refresh yang akan me-rollback semua migration dan menjalankankan kembali semua migration. Berbeda dengan fitur tersebut, fitur migrate:fresh ini akan langsung menghapus semua table dan menjalankan migration dari awal kembali

~$ php artisan migrate:fresh

Automatically Register New Package

Laravel 5.5 memberi kemampuan bagi sebuah package untuk terdaftar dalam service provider milik Laravel tanpa harus secara eksplisit mendaftarkannya melalui config. Umumnya kita akan melakukan hal seperti ini di Laravel versi sebelumnya

~$ composer require graham-campbell/markdown

Kemudian mendaftarkan package tersebut di config

//config/app.php

'providers' => [
    ...
    GrahamCampbell\Markdown\MarkdownServiceProvider:class,
    ...
]

'aliases' => [
    ...
    'Markdown' => GrahamCampbell\Markdown\Facades\Markdown::class,
    ...
]

Di Laravel 5.5, kita bisa mengeliminasi langkah diatas dengan sedikit modifikasi pada file composer.json milik package

    "extra": {
        "laravel": {
            "providers": [
                "GrahamCampbell\Markdown\MarkdownServiceProvider"
            ],
            "aliases": {
                'Markdown' => GrahamCampbell\Markdown\Facades\Markdown::class
            }
        },
    },

Other

Selain fitur baru diatas, ada beberapa fitur lainnya seperti:

  1. Select package on vendor:publish
    Kita dapat memilih config dari package mana yang akan dipublish
Which provider or tag's files would you like to publish?:
  [0] Publish files from all providers and tags listed below
  [1] Provider: Illuminate\Notifications\NotificationServiceProvider
  [2] Provider: Illuminate\Pagination\PaginationServiceProvider
  [3] Provider: UxWeb\SweetAlert\SweetAlertServiceProvider
  [4] Provider: GrahamCampbell\Markdown\MarkdownServiceProvider
  1. Custom Validation Rule: Kita dapat membuat class untuk validation rule
  2. Factory-model generator: Meng-generate model beserta factory

Upgrade to Laravel 5.5

Laravel menyediakan dokumentasi yang lengkap tentang bagaimana cara upgrade dari Laravel versi sebelumnya. Secara ringkas, kita cukup mengubah beberapa bagian di composer.json

     "require": {
-        "php": ">=5.6.4",
-        "laravel/framework": "5.4.*",
+        "php": ">=7.0.0",
+        "graham-campbell/markdown": "^8.0",
+        "laravel/framework": "5.5.*",
         "laravel/tinker": "~1.0",
     },
     "require-dev": {
         "fzaninotto/faker": "~1.4",
         "mockery/mockery": "0.9.*",
-        "phpunit/phpunit": "~5.7",
+        "phpunit/phpunit": "~6.0",
         "symfony/css-selector": "3.1.*",
-        "symfony/dom-crawler": "3.1.*"
+        "symfony/dom-crawler": "3.1.*",
+        "filp/whoops": "~2.0"
     },
     "autoload": {
         "classmap": [
@@ -45,6 +47,10 @@
         "post-update-cmd": [
             "Illuminate\Foundation\ComposerScripts::postUpdate",
             "php artisan optimize"
+        ],
+        "post-autoload-dump": [
+            "Illuminate\Foundation\ComposerScripts::postAutoloadDump",
+            "@php artisan package:discover"
         ]
     },

Potongan kode diatas adalah hasil dari git diff pada file composer.json milik saya. Selanjutnya, kita tinggal memperbarui composer package

~$ composer update

Selesai. Mudah bukan? Selain itu, engineer termuda kami pernah membawakan materi yang serupa dalam pertemuan PHP Indonesia Bandung. Anda bisa menyaksikan sesi lengkapnya disini:

Belajar Laravel bersama Refactory? Contact Us!

Hubungkan dengan kami

Ikuti refactory

Artikel Populer


( ! ) Deprecated: jquery-slick is <strong>deprecated</strong> since version 2.7.0! Use Swiper instead. in /apps/refactory-portal/wp-includes/functions.php on line 5049
Call Stack
#TimeMemoryFunctionLocation
10.0000401032{main}( ).../index.php:0
20.0000401304require( '/apps/refactory-portal/wp-blog-header.php ).../index.php:17
32.016715072488require_once( '/apps/refactory-portal/wp-includes/template-loader.php ).../wp-blog-header.php:19
42.027915155528include( '/apps/refactory-portal/wp-content/plugins/elementor/modules/page-templates/templates/header-footer.php ).../template-loader.php:106
52.151320436312Elementor\Modules\PageTemplates\Module->print_content( ).../header-footer.php:19
62.151320436688call_user_func:{/apps/refactory-portal/wp-content/plugins/elementor/modules/page-templates/module.php:207}( $function_name = [0 => class Elementor\Modules\PageTemplates\Module { protected $print_callback = ...; private ${Elementor\Core\Base\Module}reflection = NULL; private ${Elementor\Core\Base\Module}components = [...]; private ${Elementor\Core\Base\Base_Object}settings = NULL }, 1 => 'print_callback'] ).../module.php:207
72.151320436768Elementor\Modules\PageTemplates\Module->print_callback( ).../module.php:207
82.151620437520the_content( $more_link_text = ???, $strip_teaser = ??? ).../module.php:190
92.151820437544apply_filters( $tag = 'the_content', $value = '<h2>Post Categories</h2>\n<ul id="main-menu">\n \t<li id="menu-item-3571" data-vertical-menu="750px"><a href="https://refactory.id/blog/">Blog</a></li>\n \t<li id="menu-item-3024" data-vertical-menu="750px"><a href="https://refactory.id/blog-engineering/">Engineering</a></li>\n \t<li id="menu-item-3025" data-vertical-menu="750px"><a href="https://refactory.id/blog-profile/">Profile</a></li>\n \t<li id="menu-item-3022" data-vertical-menu="750px"><a href="https://refactory.id/blog-tutorial/">Tutorial</a></li>' ).../post-template.php:253
102.151820437944WP_Hook->apply_filters( $value = '<h2>Post Categories</h2>\n<ul id="main-menu">\n \t<li id="menu-item-3571" data-vertical-menu="750px"><a href="https://refactory.id/blog/">Blog</a></li>\n \t<li id="menu-item-3024" data-vertical-menu="750px"><a href="https://refactory.id/blog-engineering/">Engineering</a></li>\n \t<li id="menu-item-3025" data-vertical-menu="750px"><a href="https://refactory.id/blog-profile/">Profile</a></li>\n \t<li id="menu-item-3022" data-vertical-menu="750px"><a href="https://refactory.id/blog-tutorial/">Tutorial</a></li>', $args = [0 => '<h2>Post Categories</h2>\n<ul id="main-menu">\n \t<li id="menu-item-3571" data-vertical-menu="750px"><a href="https://refactory.id/blog/">Blog</a></li>\n \t<li id="menu-item-3024" data-vertical-menu="750px"><a href="https://refactory.id/blog-engineering/">Engineering</a></li>\n \t<li id="menu-item-3025" data-vertical-menu="750px"><a href="https://refactory.id/blog-profile/">Profile</a></li>\n \t<li id="menu-item-3022" data-vertical-menu="750px"><a href="https://refactory.id/blog-tutorial/">Tutorial</a></li>'] ).../plugin.php:212
112.152220440944Elementor\Frontend->apply_builder_in_content( $content = '<h2>Post Categories</h2>\n<ul id="main-menu">\n \t<li id="menu-item-3571" data-vertical-menu="750px"><a href="https://refactory.id/blog/">Blog</a></li>\n \t<li id="menu-item-3024" data-vertical-menu="750px"><a href="https://refactory.id/blog-engineering/">Engineering</a></li>\n \t<li id="menu-item-3025" data-vertical-menu="750px"><a href="https://refactory.id/blog-profile/">Profile</a></li>\n \t<li id="menu-item-3022" data-vertical-menu="750px"><a href="https://refactory.id/blog-tutorial/">Tutorial</a></li>' ).../class-wp-hook.php:287
122.152220441320Elementor\Frontend->get_builder_content( $post_id = 5117, $with_css = ??? ).../frontend.php:898
132.152820710256Elementor\Core\DocumentTypes\Post->print_elements_with_wrapper( $elements_data = [0 => ['id' => '79e3605', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 1 => ['id' => '66738148', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 2 => ['id' => '726ec236', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 3 => ['id' => '185c457b', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 4 => ['id' => '7f9fc6c9', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE]] ).../frontend.php:984
142.159220876552Elementor\Core\DocumentTypes\Post->print_elements( $elements_data = [0 => ['id' => '79e3605', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 1 => ['id' => '66738148', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 2 => ['id' => '726ec236', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 3 => ['id' => '185c457b', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 4 => ['id' => '7f9fc6c9', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE]] ).../document.php:933
152.244322845640Elementor\Element_Section->print_element( ).../document.php:1296
162.248022955496Elementor\Element_Section->print_content( ).../element-base.php:650
172.342424932560Elementor\Element_Column->print_element( ).../element-base.php:907
182.345925034144Elementor\Element_Column->print_content( ).../element-base.php:650
192.422926981416Elementor\Element_Section->print_element( ).../element-base.php:907
202.432327091272Elementor\Element_Section->print_content( ).../element-base.php:650
212.432327092728Elementor\Element_Column->print_element( ).../element-base.php:907
222.435727194312Elementor\Element_Column->print_content( ).../element-base.php:650
232.441727322144OneElements\Includes\Widgets\PostGrid\Widget_OneElements_PostGrid->print_element( ).../element-base.php:907
242.556332097992OneElements\Includes\Widgets\PostGrid\Widget_OneElements_PostGrid->enqueue_scripts( ).../element-base.php:682
252.556332098368Elementor\Utils::handle_deprecation( $item = 'jquery-slick', $version = '2.7.0', $replacement = 'Swiper' ).../element-base.php:152
262.556332099232_deprecated_file( $file = 'jquery-slick', $version = '2.7.0', $replacement = 'Swiper', $message = ??? ).../utils.php:487
272.556432100304trigger_error( $message = 'jquery-slick is <strong>deprecated</strong> since version 2.7.0! Use Swiper instead.', $error_type = 16384 ).../functions.php:5049

Case Studies


( ! ) Deprecated: jquery-slick is <strong>deprecated</strong> since version 2.7.0! Use Swiper instead. in /apps/refactory-portal/wp-includes/functions.php on line 5049
Call Stack
#TimeMemoryFunctionLocation
10.0000401032{main}( ).../index.php:0
20.0000401304require( '/apps/refactory-portal/wp-blog-header.php ).../index.php:17
32.016715072488require_once( '/apps/refactory-portal/wp-includes/template-loader.php ).../wp-blog-header.php:19
42.027915155528include( '/apps/refactory-portal/wp-content/plugins/elementor/modules/page-templates/templates/header-footer.php ).../template-loader.php:106
52.151320436312Elementor\Modules\PageTemplates\Module->print_content( ).../header-footer.php:19
62.151320436688call_user_func:{/apps/refactory-portal/wp-content/plugins/elementor/modules/page-templates/module.php:207}( $function_name = [0 => class Elementor\Modules\PageTemplates\Module { protected $print_callback = ...; private ${Elementor\Core\Base\Module}reflection = NULL; private ${Elementor\Core\Base\Module}components = [...]; private ${Elementor\Core\Base\Base_Object}settings = NULL }, 1 => 'print_callback'] ).../module.php:207
72.151320436768Elementor\Modules\PageTemplates\Module->print_callback( ).../module.php:207
82.151620437520the_content( $more_link_text = ???, $strip_teaser = ??? ).../module.php:190
92.151820437544apply_filters( $tag = 'the_content', $value = '<h2>Post Categories</h2>\n<ul id="main-menu">\n \t<li id="menu-item-3571" data-vertical-menu="750px"><a href="https://refactory.id/blog/">Blog</a></li>\n \t<li id="menu-item-3024" data-vertical-menu="750px"><a href="https://refactory.id/blog-engineering/">Engineering</a></li>\n \t<li id="menu-item-3025" data-vertical-menu="750px"><a href="https://refactory.id/blog-profile/">Profile</a></li>\n \t<li id="menu-item-3022" data-vertical-menu="750px"><a href="https://refactory.id/blog-tutorial/">Tutorial</a></li>' ).../post-template.php:253
102.151820437944WP_Hook->apply_filters( $value = '<h2>Post Categories</h2>\n<ul id="main-menu">\n \t<li id="menu-item-3571" data-vertical-menu="750px"><a href="https://refactory.id/blog/">Blog</a></li>\n \t<li id="menu-item-3024" data-vertical-menu="750px"><a href="https://refactory.id/blog-engineering/">Engineering</a></li>\n \t<li id="menu-item-3025" data-vertical-menu="750px"><a href="https://refactory.id/blog-profile/">Profile</a></li>\n \t<li id="menu-item-3022" data-vertical-menu="750px"><a href="https://refactory.id/blog-tutorial/">Tutorial</a></li>', $args = [0 => '<h2>Post Categories</h2>\n<ul id="main-menu">\n \t<li id="menu-item-3571" data-vertical-menu="750px"><a href="https://refactory.id/blog/">Blog</a></li>\n \t<li id="menu-item-3024" data-vertical-menu="750px"><a href="https://refactory.id/blog-engineering/">Engineering</a></li>\n \t<li id="menu-item-3025" data-vertical-menu="750px"><a href="https://refactory.id/blog-profile/">Profile</a></li>\n \t<li id="menu-item-3022" data-vertical-menu="750px"><a href="https://refactory.id/blog-tutorial/">Tutorial</a></li>'] ).../plugin.php:212
112.152220440944Elementor\Frontend->apply_builder_in_content( $content = '<h2>Post Categories</h2>\n<ul id="main-menu">\n \t<li id="menu-item-3571" data-vertical-menu="750px"><a href="https://refactory.id/blog/">Blog</a></li>\n \t<li id="menu-item-3024" data-vertical-menu="750px"><a href="https://refactory.id/blog-engineering/">Engineering</a></li>\n \t<li id="menu-item-3025" data-vertical-menu="750px"><a href="https://refactory.id/blog-profile/">Profile</a></li>\n \t<li id="menu-item-3022" data-vertical-menu="750px"><a href="https://refactory.id/blog-tutorial/">Tutorial</a></li>' ).../class-wp-hook.php:287
122.152220441320Elementor\Frontend->get_builder_content( $post_id = 5117, $with_css = ??? ).../frontend.php:898
132.152820710256Elementor\Core\DocumentTypes\Post->print_elements_with_wrapper( $elements_data = [0 => ['id' => '79e3605', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 1 => ['id' => '66738148', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 2 => ['id' => '726ec236', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 3 => ['id' => '185c457b', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 4 => ['id' => '7f9fc6c9', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE]] ).../frontend.php:984
142.159220876552Elementor\Core\DocumentTypes\Post->print_elements( $elements_data = [0 => ['id' => '79e3605', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 1 => ['id' => '66738148', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 2 => ['id' => '726ec236', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 3 => ['id' => '185c457b', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 4 => ['id' => '7f9fc6c9', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE]] ).../document.php:933
152.244322845640Elementor\Element_Section->print_element( ).../document.php:1296
162.248022955496Elementor\Element_Section->print_content( ).../element-base.php:650
172.342424932560Elementor\Element_Column->print_element( ).../element-base.php:907
182.345925034144Elementor\Element_Column->print_content( ).../element-base.php:650
192.572332435000Elementor\Element_Section->print_element( ).../element-base.php:907
202.576232544856Elementor\Element_Section->print_content( ).../element-base.php:650
212.576332546312Elementor\Element_Column->print_element( ).../element-base.php:907
222.580032647896Elementor\Element_Column->print_content( ).../element-base.php:650
232.586132776216LivemeshAddons\Widgets\LAE_Posts_Carousel_Widget->print_element( ).../element-base.php:907
242.640933789856LivemeshAddons\Widgets\LAE_Posts_Carousel_Widget->enqueue_scripts( ).../element-base.php:682
252.640933789856Elementor\Utils::handle_deprecation( $item = 'jquery-slick', $version = '2.7.0', $replacement = 'Swiper' ).../element-base.php:152
262.640933790720_deprecated_file( $file = 'jquery-slick', $version = '2.7.0', $replacement = 'Swiper', $message = ??? ).../utils.php:487
272.641033791040trigger_error( $message = 'jquery-slick is <strong>deprecated</strong> since version 2.7.0! Use Swiper instead.', $error_type = 16384 ).../functions.php:5049
The current query has no posts. Please make sure you have published items matching your query.

( ! ) Deprecated: jquery-slick is <strong>deprecated</strong> since version 2.7.0! Use Swiper instead. in /apps/refactory-portal/wp-includes/functions.php on line 5049
Call Stack
#TimeMemoryFunctionLocation
10.0000401032{main}( ).../index.php:0
20.0000401304require( '/apps/refactory-portal/wp-blog-header.php ).../index.php:17
32.016715072488require_once( '/apps/refactory-portal/wp-includes/template-loader.php ).../wp-blog-header.php:19
42.027915155528include( '/apps/refactory-portal/wp-content/plugins/elementor/modules/page-templates/templates/header-footer.php ).../template-loader.php:106
52.151320436312Elementor\Modules\PageTemplates\Module->print_content( ).../header-footer.php:19
62.151320436688call_user_func:{/apps/refactory-portal/wp-content/plugins/elementor/modules/page-templates/module.php:207}( $function_name = [0 => class Elementor\Modules\PageTemplates\Module { protected $print_callback = ...; private ${Elementor\Core\Base\Module}reflection = NULL; private ${Elementor\Core\Base\Module}components = [...]; private ${Elementor\Core\Base\Base_Object}settings = NULL }, 1 => 'print_callback'] ).../module.php:207
72.151320436768Elementor\Modules\PageTemplates\Module->print_callback( ).../module.php:207
82.151620437520the_content( $more_link_text = ???, $strip_teaser = ??? ).../module.php:190
92.151820437544apply_filters( $tag = 'the_content', $value = '<h2>Post Categories</h2>\n<ul id="main-menu">\n \t<li id="menu-item-3571" data-vertical-menu="750px"><a href="https://refactory.id/blog/">Blog</a></li>\n \t<li id="menu-item-3024" data-vertical-menu="750px"><a href="https://refactory.id/blog-engineering/">Engineering</a></li>\n \t<li id="menu-item-3025" data-vertical-menu="750px"><a href="https://refactory.id/blog-profile/">Profile</a></li>\n \t<li id="menu-item-3022" data-vertical-menu="750px"><a href="https://refactory.id/blog-tutorial/">Tutorial</a></li>' ).../post-template.php:253
102.151820437944WP_Hook->apply_filters( $value = '<h2>Post Categories</h2>\n<ul id="main-menu">\n \t<li id="menu-item-3571" data-vertical-menu="750px"><a href="https://refactory.id/blog/">Blog</a></li>\n \t<li id="menu-item-3024" data-vertical-menu="750px"><a href="https://refactory.id/blog-engineering/">Engineering</a></li>\n \t<li id="menu-item-3025" data-vertical-menu="750px"><a href="https://refactory.id/blog-profile/">Profile</a></li>\n \t<li id="menu-item-3022" data-vertical-menu="750px"><a href="https://refactory.id/blog-tutorial/">Tutorial</a></li>', $args = [0 => '<h2>Post Categories</h2>\n<ul id="main-menu">\n \t<li id="menu-item-3571" data-vertical-menu="750px"><a href="https://refactory.id/blog/">Blog</a></li>\n \t<li id="menu-item-3024" data-vertical-menu="750px"><a href="https://refactory.id/blog-engineering/">Engineering</a></li>\n \t<li id="menu-item-3025" data-vertical-menu="750px"><a href="https://refactory.id/blog-profile/">Profile</a></li>\n \t<li id="menu-item-3022" data-vertical-menu="750px"><a href="https://refactory.id/blog-tutorial/">Tutorial</a></li>'] ).../plugin.php:212
112.152220440944Elementor\Frontend->apply_builder_in_content( $content = '<h2>Post Categories</h2>\n<ul id="main-menu">\n \t<li id="menu-item-3571" data-vertical-menu="750px"><a href="https://refactory.id/blog/">Blog</a></li>\n \t<li id="menu-item-3024" data-vertical-menu="750px"><a href="https://refactory.id/blog-engineering/">Engineering</a></li>\n \t<li id="menu-item-3025" data-vertical-menu="750px"><a href="https://refactory.id/blog-profile/">Profile</a></li>\n \t<li id="menu-item-3022" data-vertical-menu="750px"><a href="https://refactory.id/blog-tutorial/">Tutorial</a></li>' ).../class-wp-hook.php:287
122.152220441320Elementor\Frontend->get_builder_content( $post_id = 5117, $with_css = ??? ).../frontend.php:898
132.152820710256Elementor\Core\DocumentTypes\Post->print_elements_with_wrapper( $elements_data = [0 => ['id' => '79e3605', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 1 => ['id' => '66738148', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 2 => ['id' => '726ec236', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 3 => ['id' => '185c457b', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 4 => ['id' => '7f9fc6c9', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE]] ).../frontend.php:984
142.159220876552Elementor\Core\DocumentTypes\Post->print_elements( $elements_data = [0 => ['id' => '79e3605', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 1 => ['id' => '66738148', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 2 => ['id' => '726ec236', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 3 => ['id' => '185c457b', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 4 => ['id' => '7f9fc6c9', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE]] ).../document.php:933
152.244322845640Elementor\Element_Section->print_element( ).../document.php:1296
162.248022955496Elementor\Element_Section->print_content( ).../element-base.php:650
172.342424932560Elementor\Element_Column->print_element( ).../element-base.php:907
182.345925034144Elementor\Element_Column->print_content( ).../element-base.php:650
192.658934156024PremiumAddons\Widgets\Premium_Blog->print_element( ).../element-base.php:907
202.932653134248PremiumAddons\Widgets\Premium_Blog->enqueue_scripts( ).../element-base.php:682
212.932653134248Elementor\Utils::handle_deprecation( $item = 'jquery-slick', $version = '2.7.0', $replacement = 'Swiper' ).../element-base.php:152
222.932653135112_deprecated_file( $file = 'jquery-slick', $version = '2.7.0', $replacement = 'Swiper', $message = ??? ).../utils.php:487
232.932753135432trigger_error( $message = 'jquery-slick is <strong>deprecated</strong> since version 2.7.0! Use Swiper instead.', $error_type = 16384 ).../functions.php:5049
Tag
Artikel Terkait
Lihat lebih banyak artikel bagus dari kategori ini!

( ! ) Deprecated: jquery-slick is <strong>deprecated</strong> since version 2.7.0! Use Swiper instead. in /apps/refactory-portal/wp-includes/functions.php on line 5049
Call Stack
#TimeMemoryFunctionLocation
10.0000401032{main}( ).../index.php:0
20.0000401304require( '/apps/refactory-portal/wp-blog-header.php ).../index.php:17
32.016715072488require_once( '/apps/refactory-portal/wp-includes/template-loader.php ).../wp-blog-header.php:19
42.027915155528include( '/apps/refactory-portal/wp-content/plugins/elementor/modules/page-templates/templates/header-footer.php ).../template-loader.php:106
52.151320436312Elementor\Modules\PageTemplates\Module->print_content( ).../header-footer.php:19
62.151320436688call_user_func:{/apps/refactory-portal/wp-content/plugins/elementor/modules/page-templates/module.php:207}( $function_name = [0 => class Elementor\Modules\PageTemplates\Module { protected $print_callback = ...; private ${Elementor\Core\Base\Module}reflection = NULL; private ${Elementor\Core\Base\Module}components = [...]; private ${Elementor\Core\Base\Base_Object}settings = NULL }, 1 => 'print_callback'] ).../module.php:207
72.151320436768Elementor\Modules\PageTemplates\Module->print_callback( ).../module.php:207
82.151620437520the_content( $more_link_text = ???, $strip_teaser = ??? ).../module.php:190
92.151820437544apply_filters( $tag = 'the_content', $value = '<h2>Post Categories</h2>\n<ul id="main-menu">\n \t<li id="menu-item-3571" data-vertical-menu="750px"><a href="https://refactory.id/blog/">Blog</a></li>\n \t<li id="menu-item-3024" data-vertical-menu="750px"><a href="https://refactory.id/blog-engineering/">Engineering</a></li>\n \t<li id="menu-item-3025" data-vertical-menu="750px"><a href="https://refactory.id/blog-profile/">Profile</a></li>\n \t<li id="menu-item-3022" data-vertical-menu="750px"><a href="https://refactory.id/blog-tutorial/">Tutorial</a></li>' ).../post-template.php:253
102.151820437944WP_Hook->apply_filters( $value = '<h2>Post Categories</h2>\n<ul id="main-menu">\n \t<li id="menu-item-3571" data-vertical-menu="750px"><a href="https://refactory.id/blog/">Blog</a></li>\n \t<li id="menu-item-3024" data-vertical-menu="750px"><a href="https://refactory.id/blog-engineering/">Engineering</a></li>\n \t<li id="menu-item-3025" data-vertical-menu="750px"><a href="https://refactory.id/blog-profile/">Profile</a></li>\n \t<li id="menu-item-3022" data-vertical-menu="750px"><a href="https://refactory.id/blog-tutorial/">Tutorial</a></li>', $args = [0 => '<h2>Post Categories</h2>\n<ul id="main-menu">\n \t<li id="menu-item-3571" data-vertical-menu="750px"><a href="https://refactory.id/blog/">Blog</a></li>\n \t<li id="menu-item-3024" data-vertical-menu="750px"><a href="https://refactory.id/blog-engineering/">Engineering</a></li>\n \t<li id="menu-item-3025" data-vertical-menu="750px"><a href="https://refactory.id/blog-profile/">Profile</a></li>\n \t<li id="menu-item-3022" data-vertical-menu="750px"><a href="https://refactory.id/blog-tutorial/">Tutorial</a></li>'] ).../plugin.php:212
112.152220440944Elementor\Frontend->apply_builder_in_content( $content = '<h2>Post Categories</h2>\n<ul id="main-menu">\n \t<li id="menu-item-3571" data-vertical-menu="750px"><a href="https://refactory.id/blog/">Blog</a></li>\n \t<li id="menu-item-3024" data-vertical-menu="750px"><a href="https://refactory.id/blog-engineering/">Engineering</a></li>\n \t<li id="menu-item-3025" data-vertical-menu="750px"><a href="https://refactory.id/blog-profile/">Profile</a></li>\n \t<li id="menu-item-3022" data-vertical-menu="750px"><a href="https://refactory.id/blog-tutorial/">Tutorial</a></li>' ).../class-wp-hook.php:287
122.152220441320Elementor\Frontend->get_builder_content( $post_id = 5117, $with_css = ??? ).../frontend.php:898
132.152820710256Elementor\Core\DocumentTypes\Post->print_elements_with_wrapper( $elements_data = [0 => ['id' => '79e3605', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 1 => ['id' => '66738148', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 2 => ['id' => '726ec236', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 3 => ['id' => '185c457b', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 4 => ['id' => '7f9fc6c9', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE]] ).../frontend.php:984
142.159220876552Elementor\Core\DocumentTypes\Post->print_elements( $elements_data = [0 => ['id' => '79e3605', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 1 => ['id' => '66738148', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 2 => ['id' => '726ec236', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 3 => ['id' => '185c457b', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE], 4 => ['id' => '7f9fc6c9', 'elType' => 'section', 'settings' => [...], 'elements' => [...], 'isInner' => FALSE]] ).../document.php:933
152.972948321872Elementor\Element_Section->print_element( ).../document.php:1296
162.976448431728Elementor\Element_Section->print_content( ).../element-base.php:650
172.976548433184Elementor\Element_Column->print_element( ).../element-base.php:907
182.979648534768Elementor\Element_Column->print_content( ).../element-base.php:650
193.005749198816OneElements\Includes\Widgets\PostGrid\Widget_OneElements_PostGrid->print_element( ).../element-base.php:907
203.049349981632OneElements\Includes\Widgets\PostGrid\Widget_OneElements_PostGrid->enqueue_scripts( ).../element-base.php:682
213.049349982008Elementor\Utils::handle_deprecation( $item = 'jquery-slick', $version = '2.7.0', $replacement = 'Swiper' ).../element-base.php:152
223.049349982872_deprecated_file( $file = 'jquery-slick', $version = '2.7.0', $replacement = 'Swiper', $message = ??? ).../utils.php:487
233.049449983192trigger_error( $message = 'jquery-slick is <strong>deprecated</strong> since version 2.7.0! Use Swiper instead.', $error_type = 16384 ).../functions.php:5049
×