SlideShare una empresa de Scribd logo
1 de 47
Descargar para leer sin conexión
Drupal 8 simple page
Y otras historias
• Y otras historias
Y este soy yo… @estoyausente
• Y otras historias
Y este soy yo… @estoyausente
Gasolina vital
• Y otras historias
Y este soy yo… @estoyausente
Gasolina vital
Drupal 7
Drupal 8
Un pequeño paso para el hombre …
Esta presentación contiene
ejemplos que funcionan
basados sólo en mi experiencia
para más información consulte
las APIs
Vamos a ver
1. Configuration manager

2. Routing

3. Formularios

4. Servicios

5. Theming
Configuration manager
Impresiones
1. ¡Funciona!

2. ¡Funciona bien!

3. …

4. Aún no lo veo para algunas cosas.
Configuration manager
Configuration manager
Configuration manager
Configuration manager
Configuration manager
Configuration manager
Para explorar
1. https://www.drupal.org/project/config_tools

2. https://www.drupal.org/project/config_update

3. https://www.drupal.org/project/config_sync

4. https://www.drupal.org/project/config_devel

5. https://www.drupal.org/project/features ????
Mi primer módulo
Drupal
generate:module
Routing
example_dyb_landing_content:

path: '/landing-my-awsome-path'

defaults:

_controller: 'Drupalexample_dyb_landing
ControllerLandingContentController::pageContent'

requirements:

_access: 'TRUE'
example_dyb_landing/example_dyb_landing.routing.yml
Controller
namespace Drupalexample_dyb_landingController;



use DrupalCoreControllerControllerBase;

use DrupalCoreUrl;



class LandingContentController extends
ControllerBase {

public function pageContent() {
$content = []; //Render array
return $content;

}

}
example_dyb_landing/src/Controllers/LandingContentController.php
Pausa para gato
Forms
namespace Drupalexample_dyb_landingForm;



use DrupalCoreFormFormBase;

use DrupalCoreFormFormStateInterface;



class ContactForm extends FormBase {



public function getFormId() {

return 'contact_form';

}
example_dyb_landing/src/Form/ContactForm.php
Forms
public function buildForm(array $form,
FormStateInterface $form_state) {
$form['mail'] = array(

'#type' => 'email',

'#title' => $this->t('Email'),

'#required' => TRUE,

'#attributes' => ['class' => ['formcontrol']],

);
return $form;

}
example_dyb_landing/src/Form/ContactForm.php
Forms
public function validateForm(array &$form,
FormStateInterface $form_state) {

$values = $form_state->getValues();



if(!Drupal::service('email.validator')-
>isValid($values['mail'])) {

$form_state->setErrorByName('mail', $this-
>t('The email address %mail is not valid.',
array('%mail' => $values['mail'])));

}
}
example_dyb_landing/src/Form/ContactForm.php
Forms


public function submitForm(array &$form, FormStateInterface
$form_state) {



$values = $form_state->getValues();

$to = Drupal::config('system.site')->get('mail');

$language_interface = Drupal::languageManager()-
>getCurrentLanguage();



Drupal::service('plugin.manager.mail')-
>mail('example_dyb_landing', 'contact_message', $to,
$language_interface, $values, 'no-replyđ@mail.com');

drupal_set_message($this->t('Thank for contact us. Your
message has been sent correctly.'));

}
example_dyb_landing/src/Form/ContactForm.php
Forms
$output['bottom']['form'] = [

'#type' => 'container',

'#attributes' => ['class' => ['left']],

'form' => Drupal::formBuilder()-
>getForm('Drupalexample_dyb_landingForm
ContactForm'),

];
example_dyb_landing/src/Form/ContactForm.php
Forms
$output['bottom']['form'] = [

'#type' => 'container',

'#attributes' => ['class' => ['left']],

'form' => Drupal::formBuilder()-
>getForm('Drupalexample_dyb_landingForm
ContactForm'),

];
example_dyb_landing/src/Form/ContactForm.php
Servicios
services:

rest_client.client:

class: Drupalrest_clientRestClient
example_dyb_landing/rest_client.services.yml
Servicios
namespace Drupalrest_client;



/**

* Class RestClient

* @package Drupalrest_client

*/

class RestClient{
protected $url;
public function __construct() {

$this->url = 'myserver.com';

}
example_dyb_landing/src/RestClient.php
Servicios
public function getSpecialities($country = 'ES') {



$cid = 'rest_client_getSpecialities_' . $country;

if ($cache = Drupal::cache()->get($cid)) {

return $cache->data;

}

//$output = getSomeStuff();
Drupal::cache()->set($cid, $output);

return $output;

}



return [];

}
example_dyb_landing/src/RestClient.php
Servicios
public function getSpecialities($country = 'ES') {



$cid = 'rest_client_getSpecialities_' . $country;

if ($cache = Drupal::cache()->get($cid)) {

return $cache->data;

}

//$output = getSomeStuff();
Drupal::cache()->set($cid, $output);

return $output;

}



return [];

}
example_dyb_landing/src/RestClient.php
Inyección de dependencias
dependencies:

- rest_client
example_dyb_landing/example_dyb_landing.info.yml
Inyección de dependencias
namespace Drupalregister_formForm;

use Drupalrest_clientRestClient;
class RegisterForm extends FormBase{



protected $client;





public function __construct(RestClient $client) {

$this->client = $client;

}


public static function create(ContainerInterface $container) {

return new static(

$container->get('rest_client.client'),

);
}
example_dyb_landing/src/Form/RegisterForm.php
Inyección de dependencias


public function buildForm(array $form,
FormStateInterface $form_state) {

$form['speciality'] = [

'#type' => 'select',

'#options' => $this->client->getSpecialities(),

'#title' => $this->t('Speciality'),

'#required' => TRUE,

'#attributes' => ['class' => ['formcontrol']],

];
return $form;
}
example_dyb_landing/src/Form/RegisterForm.php
Pausa para meme
Mi primer theme
Drupal
generate:theme
name: public

type: theme

description: Public theme.

package: Other

core: 8.x

libraries:

- public/global-styling



base theme: classy



regions:

content: Content

header: Header

footer: Footer
public/public.info.yml
Mi primer theme
global-styling:

version: 1.x

css:

theme:

css/style.css: {}

js:

js/public.js: {}

dependencies:

- core/jquery

- core/drupal

- core/drupalSettings
public/public.libraries.yml
Añadir css/js
function public_preprocess_breadcrumb(&$variables){



//Add current page to breadcrumb.

$request = Drupal::request();

$route_match = Drupal::routeMatch();

$page_title = Drupal::service('title_resolver')-
>getTitle($request, $route_match->getRouteObject());

$variables['breadcrumb'][] = array(

'text' => $page_title,

);

}
public/public.theme
Preprocess
{% if breadcrumb %}

<nav class="breadcrumbs" role="navigation" aria-labelledby="system-
breadcrumb">

<h2 class="visually-hidden">{{ 'Breadcrumb'|t }}</h2>

<ol class="itemlistbread">

{% for item in breadcrumb %}

<li class="itembread">

{% if item.url %}

<a href="{{ item.url }}" class="itembread__link">{{ item.text }}</a>

{% else %}

<span>{{ item.text }}</span>

{% endif %}

</li>

{% endfor %}

</ol>

</nav>

{% endif %}
public/templates/elements/breadcrumb.html.twig
Twig
<?php
db_query('DROP TABLE {users}’);
?>
<?php
db_query('DROP TABLE {users}’);
?>
twig.config:

debug: true
sites/default/default.services.yml
Twig debug
Pausa para chiste
Deberes
• Caché

• Composer

• REST

• Migrate

• … Infinitas cosas.
Drupalcamp 2016
Granada del 19 al 24 de Abril
¿Preguntas?
Buenas gracias
y muchas tardes
@estoyausenteSamuel Solís

Más contenido relacionado

La actualidad más candente

Pourquoi WordPress n’est pas un CMS
Pourquoi WordPress n’est pas un CMSPourquoi WordPress n’est pas un CMS
Pourquoi WordPress n’est pas un CMSThomas Gasc
 
16. CodeIgniter stergerea inregistrarilor
16. CodeIgniter stergerea inregistrarilor16. CodeIgniter stergerea inregistrarilor
16. CodeIgniter stergerea inregistrarilorRazvan Raducanu, PhD
 
Dress Your WordPress with Child Themes
Dress Your WordPress with Child ThemesDress Your WordPress with Child Themes
Dress Your WordPress with Child ThemesLaurie M. Rauch
 
Gravity Forms Hooks & Filters
Gravity Forms Hooks & FiltersGravity Forms Hooks & Filters
Gravity Forms Hooks & Filtersiamdangavin
 
Drupal 8 版型開發變革
Drupal 8 版型開發變革Drupal 8 版型開發變革
Drupal 8 版型開發變革Chris Wu
 
Form API Intro
Form API IntroForm API Intro
Form API IntroJeff Eaton
 
Jqeury ajax plugins
Jqeury ajax pluginsJqeury ajax plugins
Jqeury ajax pluginsInbal Geffen
 
AngularJS Compile Process
AngularJS Compile ProcessAngularJS Compile Process
AngularJS Compile ProcessEyal Vardi
 
WordPress overloading Gravityforms using hooks, filters and extending classes
WordPress overloading Gravityforms using hooks, filters and extending classes WordPress overloading Gravityforms using hooks, filters and extending classes
WordPress overloading Gravityforms using hooks, filters and extending classes Paul Bearne
 
FLOW3, Extbase & Fluid cook book
FLOW3, Extbase & Fluid cook bookFLOW3, Extbase & Fluid cook book
FLOW3, Extbase & Fluid cook bookBastian Waidelich
 
Let's write secure drupal code!
Let's write secure drupal code!Let's write secure drupal code!
Let's write secure drupal code!Balázs Tatár
 

La actualidad más candente (19)

Pourquoi WordPress n’est pas un CMS
Pourquoi WordPress n’est pas un CMSPourquoi WordPress n’est pas un CMS
Pourquoi WordPress n’est pas un CMS
 
20. CodeIgniter edit images
20. CodeIgniter edit images20. CodeIgniter edit images
20. CodeIgniter edit images
 
16. CodeIgniter stergerea inregistrarilor
16. CodeIgniter stergerea inregistrarilor16. CodeIgniter stergerea inregistrarilor
16. CodeIgniter stergerea inregistrarilor
 
Dress Your WordPress with Child Themes
Dress Your WordPress with Child ThemesDress Your WordPress with Child Themes
Dress Your WordPress with Child Themes
 
Gravity Forms Hooks & Filters
Gravity Forms Hooks & FiltersGravity Forms Hooks & Filters
Gravity Forms Hooks & Filters
 
Drupal 8 版型開發變革
Drupal 8 版型開發變革Drupal 8 版型開發變革
Drupal 8 版型開發變革
 
Form API Intro
Form API IntroForm API Intro
Form API Intro
 
TICT #13
TICT #13TICT #13
TICT #13
 
12. edit record
12. edit record12. edit record
12. edit record
 
Jqeury ajax plugins
Jqeury ajax pluginsJqeury ajax plugins
Jqeury ajax plugins
 
TICT #11
TICT #11 TICT #11
TICT #11
 
AngularJS Compile Process
AngularJS Compile ProcessAngularJS Compile Process
AngularJS Compile Process
 
WordPress overloading Gravityforms using hooks, filters and extending classes
WordPress overloading Gravityforms using hooks, filters and extending classes WordPress overloading Gravityforms using hooks, filters and extending classes
WordPress overloading Gravityforms using hooks, filters and extending classes
 
8. vederea inregistrarilor
8. vederea inregistrarilor8. vederea inregistrarilor
8. vederea inregistrarilor
 
Borrados
BorradosBorrados
Borrados
 
FLOW3, Extbase & Fluid cook book
FLOW3, Extbase & Fluid cook bookFLOW3, Extbase & Fluid cook book
FLOW3, Extbase & Fluid cook book
 
Lecture n
Lecture nLecture n
Lecture n
 
Let's write secure drupal code!
Let's write secure drupal code!Let's write secure drupal code!
Let's write secure drupal code!
 
10. view one record
10. view one record10. view one record
10. view one record
 

Destacado

Destacado (20)

50 упражнений, чтобы выучить язык жестов
50 упражнений, чтобы выучить язык жестов50 упражнений, чтобы выучить язык жестов
50 упражнений, чтобы выучить язык жестов
 
Portfolio
PortfolioPortfolio
Portfolio
 
Las meninas
Las meninasLas meninas
Las meninas
 
Evaluation Question 4
Evaluation Question 4Evaluation Question 4
Evaluation Question 4
 
Portfolio Task Evaluation
Portfolio Task EvaluationPortfolio Task Evaluation
Portfolio Task Evaluation
 
Asistencia junio 26 2014
Asistencia junio 26 2014Asistencia junio 26 2014
Asistencia junio 26 2014
 
ACHIEVING SUPERIOR SERVCES GROUP PHOT
ACHIEVING SUPERIOR SERVCES GROUP PHOTACHIEVING SUPERIOR SERVCES GROUP PHOT
ACHIEVING SUPERIOR SERVCES GROUP PHOT
 
VIH ESCLEROSIS MULTIPLE WILSON
VIH ESCLEROSIS MULTIPLE WILSONVIH ESCLEROSIS MULTIPLE WILSON
VIH ESCLEROSIS MULTIPLE WILSON
 
2
22
2
 
1.GHLR.GuatemalaAssessment.Narrative
1.GHLR.GuatemalaAssessment.Narrative1.GHLR.GuatemalaAssessment.Narrative
1.GHLR.GuatemalaAssessment.Narrative
 
Health Magazine Construction
Health Magazine ConstructionHealth Magazine Construction
Health Magazine Construction
 
Snow Plow
Snow PlowSnow Plow
Snow Plow
 
Dinero Inteligente
Dinero InteligenteDinero Inteligente
Dinero Inteligente
 
Be watter with Spark
Be watter with SparkBe watter with Spark
Be watter with Spark
 
FSIG Expert Fabry Conference - 14 February 2014
FSIG Expert Fabry Conference - 14 February 2014FSIG Expert Fabry Conference - 14 February 2014
FSIG Expert Fabry Conference - 14 February 2014
 
shopper marketing 4.0
 shopper marketing 4.0 shopper marketing 4.0
shopper marketing 4.0
 
Production diary day 3
Production diary day 3Production diary day 3
Production diary day 3
 
Vencer é preciso daniel e samuel
Vencer é preciso   daniel e samuelVencer é preciso   daniel e samuel
Vencer é preciso daniel e samuel
 
Vontade de adorar eyshila
Vontade de adorar   eyshilaVontade de adorar   eyshila
Vontade de adorar eyshila
 
Presentation_Sahil Singh_26.11.15
Presentation_Sahil Singh_26.11.15Presentation_Sahil Singh_26.11.15
Presentation_Sahil Singh_26.11.15
 

Similar a Drupal 8 simple page: Mi primer proyecto en Drupal 8.

Convert modules from 6.x to 7.x
Convert modules from 6.x to 7.xConvert modules from 6.x to 7.x
Convert modules from 6.x to 7.xJoão Ventura
 
Drupal Development
Drupal DevelopmentDrupal Development
Drupal DevelopmentJeff Eaton
 
Drupal 8 Every Day: An Intro to Developing With Drupal 8
Drupal 8 Every Day: An Intro to Developing With Drupal 8Drupal 8 Every Day: An Intro to Developing With Drupal 8
Drupal 8 Every Day: An Intro to Developing With Drupal 8Acquia
 
Drupal 8 Services And Dependency Injection
Drupal 8 Services And Dependency InjectionDrupal 8 Services And Dependency Injection
Drupal 8 Services And Dependency InjectionPhilip Norton
 
Symfony CMF - PHP Conference Brazil 2011
Symfony CMF - PHP Conference Brazil 2011Symfony CMF - PHP Conference Brazil 2011
Symfony CMF - PHP Conference Brazil 2011Jacopo Romei
 
2023 - Drupalcon - How Drupal builds your pages
2023 - Drupalcon - How Drupal builds your pages2023 - Drupalcon - How Drupal builds your pages
2023 - Drupalcon - How Drupal builds your pagessparkfabrik
 
Drupalcon 2023 - How Drupal builds your pages.pdf
Drupalcon 2023 - How Drupal builds your pages.pdfDrupalcon 2023 - How Drupal builds your pages.pdf
Drupalcon 2023 - How Drupal builds your pages.pdfLuca Lusso
 
10 Things Every Plugin Developer Should Know (WordCamp Atlanta 2013)
10 Things Every Plugin Developer Should Know (WordCamp Atlanta 2013)10 Things Every Plugin Developer Should Know (WordCamp Atlanta 2013)
10 Things Every Plugin Developer Should Know (WordCamp Atlanta 2013)arcware
 
What's new in the Drupal 7 API?
What's new in the Drupal 7 API?What's new in the Drupal 7 API?
What's new in the Drupal 7 API?Alexandru Badiu
 
Валентин Мацвейко та Владислав Мойсеєнко — D8: Migrate Yourself: code->module...
Валентин Мацвейко та Владислав Мойсеєнко — D8: Migrate Yourself: code->module...Валентин Мацвейко та Владислав Мойсеєнко — D8: Migrate Yourself: code->module...
Валентин Мацвейко та Владислав Мойсеєнко — D8: Migrate Yourself: code->module...LEDC 2016
 
Migrate yourself. code -> module -> mind
Migrate yourself. code -> module -> mindMigrate yourself. code -> module -> mind
Migrate yourself. code -> module -> mindValentine Matsveiko
 
Learning the basics of the Drupal API
Learning the basics of the Drupal APILearning the basics of the Drupal API
Learning the basics of the Drupal APIAlexandru Badiu
 
WebCamp: Developer Day: DDD in PHP on example of Symfony - Олег Зинченко
WebCamp: Developer Day: DDD in PHP on example of Symfony - Олег ЗинченкоWebCamp: Developer Day: DDD in PHP on example of Symfony - Олег Зинченко
WebCamp: Developer Day: DDD in PHP on example of Symfony - Олег ЗинченкоGeeksLab Odessa
 
OOP Is More Than Cars and Dogs
OOP Is More Than Cars and DogsOOP Is More Than Cars and Dogs
OOP Is More Than Cars and DogsChris Tankersley
 

Similar a Drupal 8 simple page: Mi primer proyecto en Drupal 8. (20)

Drupal8 simplepage v2
Drupal8 simplepage v2Drupal8 simplepage v2
Drupal8 simplepage v2
 
Convert modules from 6.x to 7.x
Convert modules from 6.x to 7.xConvert modules from 6.x to 7.x
Convert modules from 6.x to 7.x
 
Drupal Development
Drupal DevelopmentDrupal Development
Drupal Development
 
Drupal 8 Every Day: An Intro to Developing With Drupal 8
Drupal 8 Every Day: An Intro to Developing With Drupal 8Drupal 8 Every Day: An Intro to Developing With Drupal 8
Drupal 8 Every Day: An Intro to Developing With Drupal 8
 
Drupal 8 Services And Dependency Injection
Drupal 8 Services And Dependency InjectionDrupal 8 Services And Dependency Injection
Drupal 8 Services And Dependency Injection
 
Symfony CMF - PHP Conference Brazil 2011
Symfony CMF - PHP Conference Brazil 2011Symfony CMF - PHP Conference Brazil 2011
Symfony CMF - PHP Conference Brazil 2011
 
2023 - Drupalcon - How Drupal builds your pages
2023 - Drupalcon - How Drupal builds your pages2023 - Drupalcon - How Drupal builds your pages
2023 - Drupalcon - How Drupal builds your pages
 
Drupalcon 2023 - How Drupal builds your pages.pdf
Drupalcon 2023 - How Drupal builds your pages.pdfDrupalcon 2023 - How Drupal builds your pages.pdf
Drupalcon 2023 - How Drupal builds your pages.pdf
 
10 Things Every Plugin Developer Should Know (WordCamp Atlanta 2013)
10 Things Every Plugin Developer Should Know (WordCamp Atlanta 2013)10 Things Every Plugin Developer Should Know (WordCamp Atlanta 2013)
10 Things Every Plugin Developer Should Know (WordCamp Atlanta 2013)
 
What's new in the Drupal 7 API?
What's new in the Drupal 7 API?What's new in the Drupal 7 API?
What's new in the Drupal 7 API?
 
Drupal Render API
Drupal Render APIDrupal Render API
Drupal Render API
 
Валентин Мацвейко та Владислав Мойсеєнко — D8: Migrate Yourself: code->module...
Валентин Мацвейко та Владислав Мойсеєнко — D8: Migrate Yourself: code->module...Валентин Мацвейко та Владислав Мойсеєнко — D8: Migrate Yourself: code->module...
Валентин Мацвейко та Владислав Мойсеєнко — D8: Migrate Yourself: code->module...
 
Migrate yourself. code -> module -> mind
Migrate yourself. code -> module -> mindMigrate yourself. code -> module -> mind
Migrate yourself. code -> module -> mind
 
Learning the basics of the Drupal API
Learning the basics of the Drupal APILearning the basics of the Drupal API
Learning the basics of the Drupal API
 
WebCamp: Developer Day: DDD in PHP on example of Symfony - Олег Зинченко
WebCamp: Developer Day: DDD in PHP on example of Symfony - Олег ЗинченкоWebCamp: Developer Day: DDD in PHP on example of Symfony - Олег Зинченко
WebCamp: Developer Day: DDD in PHP on example of Symfony - Олег Зинченко
 
Drupal 8 migrate!
Drupal 8 migrate!Drupal 8 migrate!
Drupal 8 migrate!
 
Mojolicious
MojoliciousMojolicious
Mojolicious
 
Fapi
FapiFapi
Fapi
 
OOP Is More Than Cars and Dogs
OOP Is More Than Cars and DogsOOP Is More Than Cars and Dogs
OOP Is More Than Cars and Dogs
 
Complex Sites with Silex
Complex Sites with SilexComplex Sites with Silex
Complex Sites with Silex
 

Más de Samuel Solís Fuentes

Más de Samuel Solís Fuentes (16)

De managers y developers
De managers y developersDe managers y developers
De managers y developers
 
Hábitos y consejos para sobrevivir a un trabajo sedentario
Hábitos y consejos para sobrevivir a un trabajo sedentarioHábitos y consejos para sobrevivir a un trabajo sedentario
Hábitos y consejos para sobrevivir a un trabajo sedentario
 
Drupal intro for Symfony developers
Drupal intro for Symfony developersDrupal intro for Symfony developers
Drupal intro for Symfony developers
 
Querying solr
Querying solrQuerying solr
Querying solr
 
Las tripas de un sistema solr
Las tripas de un sistema solrLas tripas de un sistema solr
Las tripas de un sistema solr
 
D8 Form api
D8 Form apiD8 Form api
D8 Form api
 
Mejorar tu código mejorando tu comunicación
Mejorar tu código mejorando tu comunicaciónMejorar tu código mejorando tu comunicación
Mejorar tu código mejorando tu comunicación
 
Custom entities in d8
Custom entities in d8Custom entities in d8
Custom entities in d8
 
Como arreglar este desastre
Como arreglar este desastreComo arreglar este desastre
Como arreglar este desastre
 
Drupal y rails. Nuestra experiencia
Drupal y rails. Nuestra experienciaDrupal y rails. Nuestra experiencia
Drupal y rails. Nuestra experiencia
 
Mejorar tu código hablando con el cliente
Mejorar tu código hablando con el clienteMejorar tu código hablando con el cliente
Mejorar tu código hablando con el cliente
 
Taller de introducción al desarrollo de módulos
Taller de introducción al desarrollo de módulosTaller de introducción al desarrollo de módulos
Taller de introducción al desarrollo de módulos
 
Más limpio que un jaspe.
Más limpio que un jaspe.Más limpio que un jaspe.
Más limpio que un jaspe.
 
Drupal as a framework
Drupal as a frameworkDrupal as a framework
Drupal as a framework
 
Arquitectura de información en drupal
Arquitectura de información en drupalArquitectura de información en drupal
Arquitectura de información en drupal
 
Drupal para desarrolladores
Drupal para desarrolladoresDrupal para desarrolladores
Drupal para desarrolladores
 

Último

What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 

Último (20)

What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 

Drupal 8 simple page: Mi primer proyecto en Drupal 8.