Ceci est un tutoriel de suivi de Introduction à Craft CMS. Si vous n'êtes pas familier avec Craft, je vous recommande de lire la première partie. Ensuite, revenez ici et suivez notre guide d'installation et de démarrage.
Craft CMS de Pixel & Tonic est une alternative WordPress aux éditeurs axés sur le développement qui souhaitent un contrôle plus profond et des performances plus puissantes de leurs outils de gestion de contenu. C'est également une option potentielle pour les consultants et les développeurs d'élargir leurs offres clients.
Craft n'est pas un créateur de site. Vous devez créer votre HTML, CSS et JavaScript à la main en incorporant des modèles Twig. Cela ne sera pas intimidant pour ceux qui ont l'habitude de créer des thèmes WordPress. Pour d'autres, malheureusement, il n'y a pas de marché officiel des thèmes ou des plugins pour le moment (bien que je ne serais pas surpris si un autre apparaîtrait à l'avenir) Mais Craft est conçu pour être exceptionnellement évolutif et offre des fonctionnalités natives pour des relations complexes de gestion de contenu..
C'est un choix approprié pour les petits sites Web, mais se distinguera par des sites de contenu plus grands avec un contenu interconnecté multicouche important.
Craft est écrit en PHP sur la puissante plate-forme Yii 1.x. Si vous n'avez pas entendu parler de Yii, vous pouvez lire mon introduction au framework Yii à Tuts +. Vous n'avez pas besoin de connaître PHP ou Yii pour utiliser Craft. Cela ressemble à des outils de CMS basés sur Django écrits en Python.
Même si vous n’avez peut-être pas entendu parler de Craft, sa communauté de développeurs se développe rapidement. En juin dernier, sa proposition de site Craft CMS StackExchange a été approuvée en cinq jours seulement..
Vous pouvez voir une vitrine des sites exécutant Craft ici.
Dans ce tutoriel, je vais vous expliquer le processus d'installation de Craft, son site de démonstration, et vous familiariser avec Craft pour la création de votre propre site..
Commençons par installer le site de démonstration de Craft On The Rocks avec un exemple de thème et de contenu. Ce site débloque également toutes les fonctionnalités premium pour les tests.
J'utilise Mac OS X avec MAMP. Mes sites locaux fonctionnent dans le répertoire ~ / Sites. Clonons le site de démonstration Craft de Github:
git clone https://github.com/pixelandtonic/ontherocks.git
Ensuite, définissons les autorisations de fichiers pour les répertoires internes de Craft:
cd ontherocks chmod 777 artisanat / stockage / chmod 774 artisanat / config
Ensuite, mettons à jour la dernière version de Craft. En février 2015, j'ai utilisé la version 2.3.2627. Cependant, vous pouvez trouver les toutes dernières informations à la page "Mises à jour" du site Web Craft...
curl -L http://download.buildwithcraft.com/craft/2.3/2.3.2627/Craft-2.3.2627.zip -o /tmp/Craft.zip unzip /tmp/Craft.zip -d BaseCraft cp -R BaseCraft / craft / app craft / app rm -R BaseCraft && rm /tmp/Craft.zip
Ensuite, j'ai utilisé PHPMyAdmin pour créer la base de données:
Clique sur le avec des glaçons base de données dans PHPMyAdmin. Puis clique Importation et choisissez le fichier dans ~ / Sites / ontherocks / SQL / ontherocks.sql
:
Ensuite, éditez le fichier de configuration de la base de données avec les informations d'identification de votre base de données MySQL locale:
nano ~ / Sites / ontherocks / craft / config / db.php
/ ** * Configuration de la base de données * * Tous les paramètres de configuration de la base de données de votre système vont ici. * Vous pouvez voir une liste des paramètres par défaut dans craft / app / config / defaults / db.php * / return array ('server' => 'localhost', 'user' => 'rocks_user', 'password' => 'yourpassword', 'database' => 'ontherocks', 'tablePrefix' => 'craft',);
Créez un nouvel hôte virtuel avec le nom d’hôte “ontherocks.dev” qui pointe vers le dossier public /.
Modifiez votre fichier / etc / hosts pour résoudre ontherocks.dev à 127.0.0.1, si nécessaire:
## # Host Database # # localhost est utilisé pour configurer l'interface # de bouclage lors du démarrage du système. Ne changez pas cette entrée. ## 127.0.0.1 localhost 127.0.0.1 ontherocks.dev
Le tableau de bord Craft se trouve à l'adresse http://ontherocks.dev/admin. Une fois chargé, vous verrez quelque chose comme ceci: des singes… et des globes oculaires!
Ensuite, il vous sera demandé de mettre à jour la base de données:
Vous pouvez vous connecter avec les informations d'identification suivantes: Nom d'utilisateur: admin, Mot de passe: mot de passe.
Voici le tableau de bord-ressemble un peu à WordPress, hein?
Voici la page d'accueil de On the Rocks:
Les gentils gars de Pixel & Tonic m'ont offert une pré-version de leur nouveau site de démonstration gratuit, qui devrait être disponible au moment où vous le lirez, cliquez ici. Le nouveau site s'appelle Happy Lager:
Les étapes d'installation sont exactement les mêmes que celles décrites ci-dessus pour On the Rocks. Le référentiel Git devrait être situé ici:
clone de git https://github.com/pixelandtonic/happylager.git
Happy Lager utilise les capacités de mise en page plus profondes de Craft. Voici une paire de captures d'écran de la page À propos de:
En dessous du pli:
Voici la page des services:
Voici la page Entrées dans le tableau de bord avec tout le contenu de Happy Lager:
Examinez les types d'entrées dans le volet de navigation de gauche: Singles, Canaux et Structures. Craft propose des types de données plus sophistiqués et extensibles que WordPress.
Simple sont des pages uniques au design unique, telles que la page d'accueil de votre site. Canaux sont pour des entrées organisées par date, comme un blog ou des sections de nouvelles. Des structures sont pour le contenu fourni dans un ordre prédéfini.
Voici la page d'édition. Notez l'étendue des champs possibles qui sont à nouveau personnalisables, par exemple. Titre, Image sélectionnée, Description courte, Titre, Sous-titre, Corps de l'article.
Remarquez au-dessous du pli comment le type de citation à extraire propose différentes dispositions dans le déroulement de l'histoire, tout comme l'image qui suit (mais je ne pouvais pas tout inclure dans la capture d'écran):
Cette capacité est ce que Craft appelle sa Matrice, et cela permet une composition et une mise en page plus puissantes. Chaque bloc peut avoir des champs et une position personnalisés, et peut être glissé et déposé dans le flux. Voici une courte vidéo montrant la Matrice:
Ici se trouve le Aperçu en direct-Juste magnifique. Cela me rappelle l'aperçu de Markdown de Ghost, que j'ai écrit dans Keeping Up with Ghost 0.5 (Tuts +). Les lecteurs se souviendront peut-être que je déteste Markdown. J'apprécie donc beaucoup l'aperçu en direct de Craft:
Voici un peu plus sur Aperçu en direct:
Craft offre un accès facile aux révisions antérieures:
Les ressources d’image sont organisées par groupe et disponibles sur le Les atouts page:
Si vous avez déjà attendu que WordPress charge votre page multimédia, vous apprécierez la rapidité de Craft..
Regardez de plus près le contenu derrière certaines parties de la page d'accueil de Happy Lager. Voici comment il apparaît lorsque vous modifiez le contenu:
Craft utilise des modèles Twig pour transposer les éléments de contenu structurés dans des pages Web:
# # À propos du modèle # ------------------- # # Unique à propos du modèle # # # % extend "_layouts / site"% % block main%Titre
% si entry.infoHeroTopText%entry.infoHeroTopText
% endif% % si entry.infoHeroBottomText%entry.infoHeroBottomText
% fin si % % si entry.firstSectionHeader%entry.firstSectionHeader
% endif% % si entry.firstSectionSubheader%entry.firstSectionSubheader
% fin si %
Les sites artisanaux sont construits autour des sections que nous avons décrites ci-dessus: Simples, Canaux et Structures. Voici une courte vidéo qui montre les types de section plus en profondeur:
Voici les sections associées au site de démonstration Happy Lager - notez en quoi chacune d’elles correspond à la barre de navigation principale..
le Page d'accueil et Sur page sont des célibataires. le Nouvelles et Travail page sont des canaux. le Prestations de service la page est une structure.
Bien entendu, Craft propose également des catégories et des tags. Les catégories vous aident à organiser le contenu de votre site à l'avance, tandis que les balises vous permettent de créer une folksonomie ad hoc basée sur le contenu de chacun de vos articles..
Voici une courte vidéo décrivant les catégories et les tags:
Une autre fonctionnalité intéressante offerte par Craft est la possibilité d'acheminer les demandes d'URL par des chemins conviviaux directement vers des sections spécifiques:
Voici la page What's On Tap de http://happylager.dev/index.php/work:
Ici, vous pouvez voir comment les éléments ci-dessus sont édités en tant qu'entrées séparées dans le canal de travail, organisées par date..Voici un aperçu de la page Services-Comment c’est fait sur http://happylager.dev/index.php/services. C'est une structure dont les éléments ont un ordre prédéfini.
Chacune des zones d'image est pilotée par une entrée sous services. Vous pouvez changer leur ordre d'apparition par glisser-déposer:
Voici un exemple de modèle Twig pour cette page:
% extend "_layouts / site"% % block main%% pour l'entrée dans craft.entries.section ('Services'). find ()%Titre
% endfor% % endblock%entry.title
Et voici le modèle pour chaque entrée. Cela vous donne une idée de la façon de créer des modèles Twig pour votre site Craft et de ce qui est impliqué:
# # Modèle d'entrée de services # ------------------- # # Ce modèle est chargé chaque fois que l'URL d'une entrée de travail est demandée. En effet, le paramètre Modèle de la section Travail est défini sur "services / _entry", le chemin d'accès à ce modèle. # % extend "_layouts / site"% % block main% % set currentUrl = craft.request.getUrl ()% % set lastSegment = craft.request.getLastSegment ()% % if lastSegment ! = 'services'% % endif% % if lastSegment == 'services'%entry.title
% if entry.indexHeading% entry.indexHeading % endif%% if lastSegment! = 'services'% % pour l'entrée dans craft.entries.section ('Services'). type ('servicesDetail'). order ('postDate desc'). find ()%% else% % include "includes / articlebody"% % endif%% set image = entry.featuredImage.first ()% % si image% % fin si %% endfor%entry.title
% if entry.shortDescription% entry.shortDescription % endif%% pour le bloc dans entry.servicesBody% % endfor%block.heading
block.text% set photo = block.image.first ()% % si photo% % fin si %% set entries = craft.entries.section ('Work'). limit (1) .offset (2)% % pour l'entrée dans les entrées% % set asset = entry.featuredImage.last ()% % si actif% % endif% % endblock% % block foot% parent () % endblock%% fin si %% endfor%% set asset = entry.featuredImage.first ()% % si asset% % fin si %entry.title
entry.heading
% si entry.subheading%entry.subheading
% fin si %Afficher plus
La modification des entrées dans Craft est simple, un peu comme WordPress, mais avec des fonctionnalités de mise en page améliorées que vous auriez normalement besoin de plugins pour accomplir..
Chaque section peut avoir plusieurs types d'entrée définis par l'utilisateur. Par exemple, la section Nouvelles contient deux types d'entrées: les articles et les liens. Les types de saisie vous permettent de stocker différents types de contenu dans la même section..
Voici une courte vidéo sur les types d'entrée:
Maintenant que vous avez une idée de la construction du site dans Craft, installons une nouvelle version à partir de zéro..
Pour installer Craft, visitez le site Web et téléchargez la base de code. J'utilise Mac OS X avec MAMP pour mon développement et mes tests locaux.
Craft fournit des instructions d'installation détaillées et des liens vers des guides pour Mac, Laravel, Heroku et même une installation automatisée avec Composer..
Renommez le fichier htaccess:
cd ~ / Sites / craftcms / public mv htaccess .htaccess
Créez un lien symbolique vers votre répertoire public Craft pour MAMP:
ln -s ~ / Sites / craftcms / public / Applications / MAMP / htdocs / craft
Si vous exécutez votre installation Craft localement à partir des noms d'hôte "craft.dev" ou "ontherocks.dev", vous aurez la possibilité de basculer entre Craft Personal, Craft Client et Craft Pro gratuitement, pour toujours..
J'ai créé la base de données via PHPMyAdmin.
Editez le fichier de configuration de la base de données Craft pour vos informations d'identification MySQL:
nano ./craft/config/db.php
Entrez vos identifiants dans les champs ci-dessous:
/ ** * Configuration de la base de données * * Tous les paramètres de configuration de la base de données de votre système vont ici. * Vous pouvez voir une liste des paramètres par défaut dans craft / app / etc / config / defaults / db.php * / return array (// Le nom du serveur de la base de données ou l'adresse IP. Il s'agit généralement de "localhost" ou de "127.0.0.1 '.' server '=>' localhost ', // Le nom d'utilisateur de la base de données avec lequel vous connecter.' user '=>' root ', // Le mot de passe de la base de données avec lequel vous connecter.' password '=>' votre-mot de passe ', / / Le nom de la base de données à sélectionner. 'Base de données' => 'craft', // Préfixe à utiliser pour nommer les tables. Ce nombre ne doit pas dépasser 5 caractères. 'TablePrefix' => 'craft',);
Configurez les autorisations d'écriture pour ces répertoires d'applications Craft:
chmod 744 ./craft/app chmod 744 ./craft/config chmod 744 ./craft/storage/
Visitez la page d'accueil Craft locale et vous devriez revoir les singes!
Enregistrez votre compte administratif initial:
Configurez les propriétés de votre site:
Et c'est tout:
Voici à nouveau votre tableau de bord:
Craft est tellement axé sur l'utilisateur final qu'il inclut un formulaire de contact d'assistance sur la page d'accueil de son tableau de bord..
Vous pouvez trouver les paramètres du site dans la barre de navigation en haut à droite. Cela me rappelle un peu iOS:
Voici à quoi ressemble votre site Craft par défaut lorsque vous commencez:
Oui, Craft n’a pas la communauté de thèmes WordPress. Pour la plupart, vous devez coder votre propre thème. Pour le novice, WordPress a toujours un avantage.
D'autre part, vous remarquerez peut-être déjà à quelle vitesse Craft s'exécute par rapport à WordPress.
Certes, vous pouvez commencer à créer un exemple de contenu pour votre site, mais vous devrez en apprendre davantage sur les thèmes et plug-ins Craft. Voici quelques ressources qui vous aideront:
Je vous encourage à installer Craft et à explorer davantage ses fonctionnalités. Je suis enthousiasmé par la puissance, le contrôle et l’évolutivité que Craft propose comme alternative à WordPress. Je suis aussi un passionné de Yii et c'est formidable de voir un outil CMS construit sur mon framework préféré.
Si vous souhaitez voir une série de suivi sur la publication avec Craft, veuillez publier une note dans les commentaires. J'apprécie également vos questions et vos commentaires et, en général, je réponds Vous pouvez me joindre sur Twitter @reifman ou m'envoyer un email directement.
Je tiens également à remercier Brandon Kelly, propriétaire de Pixel & Tonic, les créateurs de Craft. Brandon a été très utile pour répondre à mes questions et m'a donné un aperçu de leur nouveau site de démonstration auquel vous devriez pouvoir accéder maintenant..