<abbr id="zpayk"></abbr>
    1. <abbr id="zpayk"><listing id="zpayk"></listing></abbr>

      ><\/span>\n<\/span>\n ><\/span>\n<\/span> ><\/span><\/span><\/h1<\/span>><\/span>\n<\/span> ><\/span><\/span><\/h3<\/span>><\/span>\n<\/span> <\/header<\/span>><\/span>\n<\/span>\n <\/span> if ( have_posts() ) :\n<\/span><\/span> \/* Start the Loop *\/\n<\/span><\/span> while ( have_posts() ) :\n<\/span><\/span> the_post();\n<\/span><\/span> endwhile;\n<\/span><\/span> endif;\n<\/span><\/span> ?><\/span>\n<\/span>\n<\/body<\/span>><\/span>\n<\/span><\/pre>\n

      Nous devons remplir cela en boucle avec du contenu - ou avec des balises WordPress de sortie de contenu. <\/p>\n

      si nous changeons notre boucle, en ajoutant the_title (), the_excerpt (), et nous ajoutons du balisage html et the_id (), pour ressembler à ceci: <\/p>\n

      <\/span>if ( have_posts() ) {\n<\/span><\/span>    while ( have_posts() ) {\n<\/span><\/span>        the_post();\n<\/span><\/span>        \/\/\n<\/span><\/span>        \/\/ Post Content here\n<\/span><\/span>        \/\/\n<\/span><\/span>    } \/\/ end while\n<\/span><\/span>} \/\/ end if\n<\/span><\/span>?><\/span>\n<\/span><\/pre>\n

      Nous allons maintenant obtenir une liste de messages sur notre page d'accueil, sans style appliqué: <\/p>\n\n

      \"Comment <\/p>\n

      WordPress montre une page de blog - une page d'archive pour tous les articles de blog - par défaut. <\/p>\n

      Si nous visitons maintenant URL de message unique - quelque chose comme http:\/\/my-website.com\/2018\/11\/14\/sapiente-adfacilis-quo-repellat-quos\/ - nous verrons quelque chose comme ceci: <\/p>\n

      \"Comment <\/p>\n

      notre boucle <\/em>, bien que très brut, fonctionne réellement. <\/p>\n

      Structurer notre thème dans des fichiers et appliquer le banc de bootstrap <\/h2>\n

      Nous allons maintenant implémenter des partiels, comme Header.php et Footer.php et divers modèles spécialisés, tous en utilisant le balisage de Bootstrap Twitter, afin que nous puissions le coiffer plus facilement. <\/p>\n

      En commen?ant par index.php, nous rempla?ons tout le contenu avant et après la boucle par get_header () et get_footer () Fonctions: <\/p>\n

          <\/span>    if ( have_posts() ) : while ( have_posts() ): the_post(); ?><\/span>\n<\/span>\n     id=\"post-<\/span>\"<\/span>><\/span>\n<\/span>        ><\/span><\/span><\/h2<\/span>><\/span>\n<\/span>         class=\"post-excerpt\"<\/span>><\/span><\/span><\/div<\/span>><\/span>\n<\/span>    <\/div<\/span>><\/span>\n<\/span>\n    <\/span>    endif;\n<\/span><\/span>    ?><\/span>\n<\/span><\/pre>\n

      Cela signifie que nous devons fournir tout ce contenu dans les partiels que nous avons mentionnés. <\/p>\n

      Conformément à ce que nous avons dit - que nous utiliserons le thème Bootstrap Twitter - notre fichier en tête.php ressemblera à ceci: <\/p>\n

      <\/span>\/**\n<\/span><\/span> *\n<\/span><\/span> * @package Botega_Scratch_Theme\n<\/span><\/span><\/span> *\/\n<\/span><\/span>\n<\/span>get_header(); ?><\/span>\n<\/span>\n    <\/span>    if ( have_posts() ) : while ( have_posts() ): the_post(); ?><\/span>\n<\/span>\n     id=\"post-<\/span>\"<\/span>><\/span>\n<\/span>        ><\/span><\/span><\/h2<\/span>><\/span>\n<\/span>         class=\"post-excerpt\"<\/span>><\/span><\/span><\/div<\/span>><\/span>\n<\/span>    <\/div<\/span>><\/span>\n<\/span>\n    <\/span>    endif;\n<\/span><\/span>    ?><\/span>\n<\/span>\n<\/span>\n<\/span><\/pre>\n

      Notre fichier Footer.php ressemblera à ceci: <\/p>\n

      \/*\n<\/span>Theme Name: Botega Simple Theme\n<\/span>Theme URI: https:\/\/botega.co.uk\n<\/span>Author: Tonino Jankov\n<\/span>Author URI: https:\/\/botega.co.uk\n<\/span>Description: Basic WordPress theme for Sitepoint theme building tutorial\n<\/span>Text Domain: bsimple\n<\/span>Version: 1.0.0\n<\/span>License: GNU General Public License v2 or later\n<\/span>*\/\n<\/span><\/pre>\n

      Nous utilisons des classes bootstrap dans nos balises HTML, et wp_head () et wp_footer () Fire WP_head et WP_Footer Action Hooks. <\/p>\n

      La prochaine chose que nous ferons consiste à inclure le CSS et JavaScript du modèle Bootstrap Clean de Startbootstrap.com, qui est livré avec une licence MIT, afin que nous puissions l'utiliser librement. De cette fa?on, notre thème sera livré avec des styles prédéfinis, une réactivité, et nous pourrons toujours le styliser davantage. <\/p>\n

      fonctions.php <\/h2>\n

      fonctions.php est un fichier qui est livré avec n'importe quel thème WordPress sérieux. Il s'agit d'un fichier qui agit comme des archives de plugin d'un homme pauvre. Il nous permet d'inclure toute fonctionnalité personnalisée dans notre thème. <\/p>\n

      Nous allons d'abord utiliser ce fichier pour inclure le bootstrap et les styles et scripts de notre thème bootstrap: <\/p>\n

      <\/span>\/**\n<\/span><\/span> *\n<\/span><\/span> * @package Botega_Scratch_Theme\n<\/span><\/span><\/span> *\/\n<\/span><\/span>?><\/span>\n<\/span>\n<\/span>\n<\/span> <\/span><\/span>><\/span>\n<\/span>><\/span>\n<\/span>    ><\/span><\/span><\/title<\/span>><\/span>\n<\/span>     rel=\"stylesheet\"<\/span> href=\"<\/span>\"<\/span>><\/span>\n<\/span>    <\/span>\n<\/span><\/head<\/span>><\/span>\n<\/span>
      

      国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

      ><\/span>\n<\/span>\n ><\/span>\n<\/span> ><\/span><\/span><\/h1<\/span>><\/span>\n<\/span> ><\/span><\/span><\/h3<\/span>><\/span>\n<\/span> <\/header<\/span>><\/span>\n<\/span>\n <\/span> if ( have_posts() ) :\n<\/span><\/span> \/* Start the Loop *\/\n<\/span><\/span> while ( have_posts() ) :\n<\/span><\/span> the_post();\n<\/span><\/span> endwhile;\n<\/span><\/span> endif;\n<\/span><\/span> ?><\/span>\n<\/span>\n<\/body<\/span>><\/span>\n<\/span><\/pre>\n

      Il s'agit d'une manière WordPress-idiomatique d'inclure des scripts et des styles dans un thème. Il nous permet de spécifier que la position des scripts sera en cours (en-tête vs pieds de page) et la priorité de la mise en file d'attente. Nous pouvons même spécifier la dépendance de chaque ressource particulière sur l'autre. Cela garantira que les ressources seront chargées dans le bon ordre. <\/p>\n

      Nous utilisons ici le crochet d'action WP_ENQUEUE_Scripts. Nous pouvons en savoir plus dans le codex. (Nous avons couvert des crochets d'action dans l'article précédent.) <\/p>\n

      à l'intérieur de notre fonction Bsimple_Scripts () personnalisée - que nous accrochons à wp_enqueue_scripts Action Hook - nous utilisons deux fonctions WordPress pour charger nos scripts et nos styles - wp_enqueue_script () et wp_enqueue_style (). Les arguments pour ces fonctions - comme spécifié dans ses pages de référence liées - nous permettent de tirer pleinement parti de la flexibilité que nous avons mentionnée. <\/p>\n

      Nous pouvons voir que nous chargeons des styles à partir d'Internet (polices Google) et de notre dossier de thème. Par conséquent, nous créons des répertoires CSS, JS et WebFonts dans notre dossier de thème et copierons les fichiers CSS, les fichiers JavaScript de notre thème bootstrap, les fichiers ic?nes de Fontawesome. <\/p>\n

      Nous copie également notre fichier index.php sur les fichiers archive.php, page.php et single.php, que nous modifierons. <\/p>\n

      Maintenant, notre structure de fichiers de thème ressemblera à ceci: <\/p>\n

      \"Comment <\/p>\n

      ajustant le balisage <\/h2>\n

      Si nous visitons maintenant notre page d'accueil, nous verrons le menu en haut - bien qu'il et la page soient toujours un gachis - car la ligne suivante dans notre en-tête sort toujours le menu enveloppé dans Div et son propre UL Tags, il n'est donc pas affecté par nos styles bootstrap: <\/p>\n

      <\/span>if ( have_posts() ) {\n<\/span><\/span>    while ( have_posts() ) {\n<\/span><\/span>        the_post();\n<\/span><\/span>        \/\/\n<\/span><\/span>        \/\/ Post Content here\n<\/span><\/span>        \/\/\n<\/span><\/span>    } \/\/ end while\n<\/span><\/span>} \/\/ end if\n<\/span><\/span>?><\/span>\n<\/span><\/pre>\n

      Pour résoudre ce problème, nous devons d'abord aller à notre tableau de bord WP-Admin et créer - dans le personnalisateur - un nouveau menu. Nous allons le nommer Menu supérieur <\/em>. <\/p>\n

      Après avoir fait cela, nous irons dans notre fichier en tête.php supprimez ces lignes: <\/p>\n

      \/*\n<\/span>Theme Name: Botega Simple Theme\n<\/span>Theme URI: https:\/\/botega.co.uk\n<\/span>Author: Tonino Jankov\n<\/span>Author URI: https:\/\/botega.co.uk\n<\/span>Description: Basic WordPress theme for Sitepoint theme building tutorial\n<\/span>Text Domain: bsimple\n<\/span>Version: 1.0.0\n<\/span>License: GNU General Public License v2 or later\n<\/span>*\/\n<\/span><\/pre>\n

      à leur place, nous mettons ces lignes: <\/p>\n

      <\/span>\/**\n<\/span><\/span> *\n<\/span><\/span> * @package Botega_Scratch_Theme\n<\/span><\/span><\/span> *\/\n<\/span><\/span>?><\/span>\n<\/span>\n<\/span>\n<\/span> <\/span><\/span>><\/span>\n<\/span>><\/span>\n<\/span>    ><\/span><\/span><\/title<\/span>><\/span>\n<\/span>     rel=\"stylesheet\"<\/span> href=\"<\/span>\"<\/span>><\/span>\n<\/span>    <\/span>\n<\/span><\/head<\/span>><\/span>\n<\/span>><\/span>\n<\/span>\n      ><\/span>\n<\/span>         ><\/span><\/span><\/h1<\/span>><\/span>\n<\/span>         ><\/span><\/span><\/h3<\/span>><\/span>\n<\/span>      <\/header<\/span>><\/span>\n<\/span>\n        <\/span>        if ( have_posts() ) :\n<\/span><\/span>            \/* Start the Loop *\/\n<\/span><\/span>            while ( have_posts() ) :\n<\/span><\/span>                the_post();\n<\/span><\/span>            endwhile;\n<\/span><\/span>        endif;\n<\/span><\/span>        ?><\/span>\n<\/span>\n<\/body<\/span>><\/span>\n<\/span><\/pre>\n

      Cela supprimera la balise DIV et la duplication de la balise UL pour nous, mais nous devons toujours appliquer le Nav-Item et le Nav-Link à nos éléments de menu (à Li et à une balise respectivement). Comment allons-nous y aller? WP_NAV_MENU ne fournit pas d'arguments pour cela. Nous utiliserons les hame?ons NAV_MENU_LINK_ATBUTES et NAV_MENU_CSS_CLASS. Nous mettons cela dans notre fichier functions.php: <\/p>\n

      <\/span>if ( have_posts() ) {\n<\/span><\/span>    while ( have_posts() ) {\n<\/span><\/span>        the_post();\n<\/span><\/span>        \/\/\n<\/span><\/span>        \/\/ Post Content here\n<\/span><\/span>        \/\/\n<\/span><\/span>    } \/\/ end while\n<\/span><\/span>} \/\/ end if\n<\/span><\/span>?><\/span>\n<\/span><\/pre>\n

      Maintenant, nous pouvons spécifier de nouveaux attributs dans notre WP_NAV_MENU dans notre tête.php: <\/p>\n

          <\/span>    if ( have_posts() ) : while ( have_posts() ): the_post(); ?><\/span>\n<\/span>\n     id=\"post-<\/span>\"<\/span>><\/span>\n<\/span>        ><\/span><\/span><\/h2<\/span>><\/span>\n<\/span>         class=\"post-excerpt\"<\/span>><\/span><\/span><\/div<\/span>><\/span>\n<\/span>    <\/div<\/span>><\/span>\n<\/span>\n    <\/span>    endif;\n<\/span><\/span>    ?><\/span>\n<\/span><\/pre>\n

      Maintenant, nos liens de menu supérieurs peuvent tirer parti des styles déjà définis dans CSS de notre thème bootstrap. <\/p>\n

      En-tête dynamique <\/h2>\n

      pour pouvoir utiliser un en-tête dynamique - c'est-à-dire un en-tête différent pour la première page, pour d'autres pages sélectionnées, ou pour les archives - nous définirons une fonction dynamic_header () dans notre fichier functions.php, où nous 'LL Sortir notre balisage d'en-tête en fonction de la page que le visiteur charge. <\/p>\n

      Alors maintenant, notre fichier en tête.php se terminera comme ceci: <\/p>\n

      <\/span>\/**\n<\/span><\/span> *\n<\/span><\/span> * @package Botega_Scratch_Theme\n<\/span><\/span><\/span> *\/\n<\/span><\/span>\n<\/span>get_header(); ?><\/span>\n<\/span>\n    <\/span>    if ( have_posts() ) : while ( have_posts() ): the_post(); ?><\/span>\n<\/span>\n     id=\"post-<\/span>\"<\/span>><\/span>\n<\/span>        ><\/span><\/span><\/h2<\/span>><\/span>\n<\/span>         class=\"post-excerpt\"<\/span>><\/span><\/span><\/div<\/span>><\/span>\n<\/span>    <\/div<\/span>><\/span>\n<\/span>\n    <\/span>    endif;\n<\/span><\/span>    ?><\/span>\n<\/span>\n<\/span>\n<\/span><\/pre>\n

      Nous définirons également cette fonction comme ceci: <\/p>\n

      <\/span>\/**\n<\/span><\/span> * The header for our theme.\n<\/span><\/span> *\n<\/span><\/span> * @package Botega_Scratch_Theme\n<\/span><\/span><\/span> *\n<\/span><\/span> *\/\n<\/span><\/span>?><\/span>\n<\/span><\/span>\n<\/span>><\/span>\n<\/span>><\/span>\n<\/span> charset=\"<\/span>\"<\/span>><\/span>\n<\/span> name=\"viewport\"<\/span> content=\"width=device-width, initial-scale=1\"<\/span>><\/span>\n<\/span>\n<\/span>\n<\/span><\/head<\/span>><\/span>\n<\/span>\n <\/span><\/span>><\/span>\n<\/span>\n   class=\"navbar navbar-default navbar-custom navbar-fixed-top\"<\/span>><\/span>\n<\/span>     class=\"container-fluid\"<\/span>><\/span>\n<\/span>       class=\"navbar-header page-scroll\"<\/span>><\/span>\n<\/span>               href=\"<\/span>\"<\/span> rel=\"home\"<\/span> class=\"navbar-brand\"<\/span>><\/span><\/span><\/a<\/span>><\/span>\n<\/span>      <\/div<\/span>><\/span>\n<\/span>\n       class=\"collapse navbar-collapse\"<\/span> id=\"bs-example-navbar-collapse-1\"<\/span>><\/span>\n<\/span>           class=\"nav navbar-nav navbar-right\"<\/span>><\/span>\n<\/span>           'primary', 'items_wrap' => '%3$s' ) ); ?><\/span>\n<\/span>          <\/ul<\/span>><\/span>\n<\/span>      <\/div<\/span>><\/span>\n<\/span>    <\/div<\/span>><\/span>\n<\/span>  <\/nav<\/span>><\/span>\n<\/span>\n   class=\"container\"<\/span>><\/span>\n<\/span>       class=\"row\"<\/span>><\/span>\n<\/span><\/pre>\n

      Pour pouvoir utiliser toutes les données URL ou Post actuelles - comme dans la boucle - nous déclarons une variable Global $ POST. Ensuite, nous remplissons simplement des bo?tiers de page ou de demande avec en-tête de remplissage HTML, que nous terminerons plus tard. Cela définit les bases d'un en-tête vraiment dynamique. <\/p>\n

      Nous devons nous assurer que notre première page - avec un menu dynamique supérieur - sera bien même lorsque l'utilisateur est connecté. WordPress montre une barre d'administration <\/em> lorsque les visiteurs sont connectés, même lorsqu'ils visitent la première page. Parce qu'il a une position: fixe, il superpose la zone supérieure de notre site Web, couvrant tout ce qui est là, nous devons donc spécifier un décalage pour notre menu supérieur. <\/p>\n

      Nous allons l'ajouter à notre style.css: <\/p>\n

      <\/span>\/**\n<\/span><\/span> * Footer template partial\n<\/span><\/span> *\n<\/span><\/span> * @package Botega_Scratch_Theme\n<\/span><\/span><\/span> *\n<\/span><\/span> *\/\n<\/span><\/span>?><\/span>\n<\/span>     <\/div<\/span>><\/span>\n<\/span>     \n<\/span>  <\/div<\/span>><\/span>\n<\/span>  \n<\/span>\n  \n<\/span>  ><\/span>\n<\/span>     class=\"container\"<\/span>><\/span>\n<\/span>       class=\"row\"<\/span>><\/span>\n<\/span>           class=\"col-lg-8 col-md-10 mx-auto\"<\/span>><\/span>\n<\/span>          <\/div<\/span>><\/span>\n<\/span>      <\/div<\/span>><\/span>\n<\/span>    <\/div<\/span>><\/span>\n<\/span>  <\/footer<\/span>><\/span>\n<\/span>\n<\/span>\n<\/span>\n<\/body<\/span>><\/span>\n<\/span><\/html<\/span>><\/span>\n<\/span><\/pre>\n

      Cela garantit que le #Mainnav - notre conteneur de menu - a suffisamment de décalage du haut, donc il n'est pas couvert lorsque l'utilisateur est connecté. Nous pouvons facilement le cibler. <\/p>\n

      Nous pouvons voir que nous abordons deux cas dans notre CSS - un défaut et un autre pour les écrans plus petits. En effet\n<\/p> Sur mobile, nous devrions maintenant avoir un menu déroulant réactif à alimentation JavaScript:

      \n<\/p>

      \"Comment\n<\/p> Conclusion

      \n<\/h2> Dans cette deuxième partie sur la création d'un thème WordPress à partir de zéro, nous avons créé un thème WordPress très basique, et nous y avons inclus des styles et scripts bootstrap. Nous avons ajusté la sortie du menu pour s'adapter à nos styles prédéfinis. Nous avons également séparé la sortie de l'en-tête et du pied de page dans leurs partiels respectifs.

      <\/p>\n

      Le fichier functions.php - un fichier crucial dans le développement du thème - est un autre sujet que nous avons introduit et exploité. La sortie de l'en-tête a été séparée en sa propre fonction, qui utilisera des détails de la visite de la page et des variables définies par propriétaire de site pour déterminer la sortie finale. <\/p>\n

      Dans la troisième partie du guide, nous finirons de construire des modèles particuliers, de donner une meilleure structure à nos fonctions et partiels de thème, et terminer le style de notre site Web. <\/p>\n


      \n

      Il y a trois articles dans cette série sur la construction d'un thème WordPress à partir de zéro: <\/p>\n

        \n
      • sous-tension de la structure d'un thème <\/li>\n
      • Bases sur le thème <\/li>\n
      • affiner le thème <\/li>\n<\/ul>\n\n\n\n

        Questions fréquemment posées (FAQ) sur la construction d'un thème WordPress à partir de zéro <\/h2>\n\n\n\n

        Quelles sont les conditions préalables pour construire un thème WordPress à partir de zéro? <\/h3>

        Avant de commencer à construire un thème WordPress à partir de zéro, vous devez avoir une compréhension de base de HTML, CSS, PHP et JavaScript. Ce sont les technologies de base utilisées dans le développement du thème WordPress. De plus, vous devez être familier avec la plate-forme WordPress elle-même, y compris sa structure de fichiers et sa hiérarchie de modèle. Il est également utile d'avoir un environnement de développement local configuré sur votre ordinateur, comme MAMP ou XAMPP, où vous pouvez tester votre thème lorsque vous le construisez. <\/p>

        Comment commencer à créer un thème WordPress à partir de zéro? <\/h3>

        La première étape de la création d'un thème WordPress à partir de zéro consiste à créer un nouveau répertoire dans votre dossier WordPress Thèmes. Ce sera la maison de tous vos fichiers de thème. Ensuite, vous devrez créer un fichier style.css et un fichier index.php. Le fichier style.css est l'endroit où vous rédigerez tout votre code CSS, et c'est également là que vous définissez les détails de votre thème. Le fichier index.php est le fichier de modèle principal de votre thème. C'est là que vous rédigerez le code PHP et HTML qui génère la mise en page de votre site Web. <\/p>

        Comment puis-je ajouter des fonctionnalités personnalisées au thème WordPress? <\/h3>

        Vous pouvez ajouter des fonctionnalités personnalisées à votre thème WordPress par Création d'un fichier functions.php dans votre répertoire de thème. Ce fichier agit comme un plugin, vous permettant d'ajouter des fonctionnalités et des fonctionnalités personnalisées à votre thème. Vous pouvez l'utiliser pour enregistrer les menus de navigation, ajouter des barres latérales, des styles et scripts d'observation, et bien plus encore. <\/p>

        Comment créer un thème WordPress réactif? <\/h3>

        Pour créer un thème WordPress réactif, vous ?Je dois utiliser les requêtes multimédias dans votre code CSS. Les requêtes multimédias vous permettent d'appliquer différents styles en fonction de la taille de l'écran de l'utilisateur. Cela signifie que vous pouvez créer une disposition différente pour les appareils de bureau, de tablette et mobiles. Vous devrez également vous assurer que vos images sont réactives, ce que vous pouvez faire en définissant leur largeur à 100%. <\/p>\n

        Comment personnaliser l'en-tête et le pied de page de mon thème WordPress? <\/h3>

        Vous pouvez personnaliser l'en-tête et le pied de page de votre thème WordPress en créant un fichier en-tête.php et un fichier footer.php dans votre répertoire de thème . Le fichier en tête.php est l'endroit où vous rédigerez le code HTML et PHP pour votre en-tête, et le fichier de pied.php est où vous rédigerez le code pour votre pied de page. Vous pouvez ensuite inclure ces fichiers dans vos autres fichiers de modèle à l'aide des fonctions get_header () et get_footer (). <\/p>

        Comment ajouter un type de message personnalisé au thème WordPress? <\/h3>

        Vous pouvez ajouter Un type de publication personnalisé sur votre thème WordPress à l'aide de la fonction register_post_type () dans votre fichier functions.php. Cette fonction vous permet de définir un nouveau type de message avec ses propres étiquettes, capacités et fonctionnalités. Vous pouvez ensuite créer un fichier .php unique {PostType} et un fichier archive- {PostType} .php pour contr?ler l'affichage de votre type de publication personnalisé. <\/p>

        Comment ajouter une barre latérale à mon thème WordPress? <\/h3>

        Vous pouvez ajouter une barre latérale à votre thème WordPress en créant un fichier Sidebar.php dans votre répertoire de thème et en utilisant la fonction register_sidebar () dans votre fichier function.php. Vous pouvez ensuite afficher votre barre latérale dans vos autres fichiers de modèle à l'aide de la fonction get_sidebar (). <\/p>

        Comment ajouter un menu de navigation à mon thème WordPress? <\/h3>

        Vous pouvez ajouter un menu de navigation à votre Thème wordpress en utilisant la fonction registre_nav_menus () dans votre fichier fonctions.php. Cette fonction vous permet d'enregistrer un ou plusieurs menus de navigation dans votre thème. Vous pouvez ensuite afficher votre menu dans votre autre fichier de modèle à l'aide de la fonction wp_nav_menu (). <\/p>

        Comment personnaliser la boucle dans mon thème WordPress? <\/h3>

        Vous pouvez personnaliser la boucle dans votre thème WordPress En modifiant le code de boucle dans votre fichier index.php ou d'autres fichiers de modèle. La boucle est le code PHP que WordPress utilise pour afficher les publications. Vous pouvez le personnaliser pour modifier la fa?on dont les articles sont affichés, le nombre de messages affichés, et plus encore. <\/p>

        Comment mettre à jour mon thème WordPress? <\/h3>

        Vous pouvez mettre à jour votre thème WordPress en apportant des modifications à vos fichiers de thème, puis les télécharger sur votre site WordPress. Si vous utilisez un thème enfant, vous pouvez mettre à jour le thème parent sans perdre vos modifications. Si vous n'utilisez pas un thème enfant, vous devriez faire une sauvegarde de votre thème avant de le mettre à jour, car les mises à jour écraseront vos modifications. <\/p>"}

        Table des matières
        Les plats clés
        Création du thème minimum nu
        Structurer notre thème dans des fichiers et appliquer le banc de bootstrap
        fonctions.php
        ajustant le balisage
        En-tête dynamique
        Questions fréquemment posées (FAQ) sur la construction d'un thème WordPress à partir de zéro
        Quelles sont les conditions préalables pour construire un thème WordPress à partir de zéro?
        Comment commencer à créer un thème WordPress à partir de zéro?
        Comment puis-je ajouter des fonctionnalités personnalisées au thème WordPress?
        Comment créer un thème WordPress réactif?
        Comment personnaliser l'en-tête et le pied de page de mon thème WordPress?
        Comment ajouter un type de message personnalisé au thème WordPress?
        Comment ajouter une barre latérale à mon thème WordPress?
        Comment ajouter un menu de navigation à mon thème WordPress?
        Comment personnaliser la boucle dans mon thème WordPress?
        Comment mettre à jour mon thème WordPress?
        Maison Tutoriel CMS WordPresse Comment construire un thème WordPress à partir de zéro: les bases

        Comment construire un thème WordPress à partir de zéro: les bases

        Feb 09, 2025 am 10:43 AM

        Comment construire un thème WordPress à partir de zéro: les bases

        Dans ce tutoriel, nous explorerons en profondeur la structure du fichier de thème WordPress et apprendrons à créer un thème WordPress de base à partir de zéro.

        Dans la première partie de cette série, nous avons introduit WordPress Théming et la terminologie fondamentale relative au développement du thème WordPress. Nous avons couvert Modèles , Partials , Hiérarchie des modèles , Types de publication WordPress , le style.css Stylesheet, wordpress Filtre et Action Hooks, WordPress Loop , Tags conditionnels , et nous avons brièvement examiné une structure de fichier de thème WordPress simple typique.

        Les plats clés

        • Commencez par configurer un thème minimum nu à l'aide d'un fichier index.php et style.css, garantissant que WordPress reconna?t votre nouveau thème.
        • Intégrer le bootstrap pour la conception et l'esthétique réactives, modifiant les fichiers de modèle pour inclure les classes HTML et CSS de Bootstrap.
        • Utilisez le fichier functions.php pour ajouter des fonctionnalités personnalisées, des styles et scripts d'établissement et gérer efficacement les crochets WordPress.
        • Personnalisez la sortie dynamique des menus d'en-tête et de navigation à l'aide de crochets et de conditionnels WordPress pour s'adapter à différents types de pages.
        • Assurez-vous que votre thème est réactif et convivial sur les appareils mobiles en ajustant CSS et en utilisant des requêtes multimédias.

        Création du thème minimum nu

        La première chose que nous ferons est d'installer un plugin qui nous permettra de créer des articles WordPress et d'autres contenus. De cette fa?on, nous serons en mesure de peupler rapidement notre site Web de développement sans perdre trop de temps. Un plugin qui sert cet objectif est FakerPress de Gustavo Bordoni, disponible dans le référentiel de plugin WordPress.

        Nous installons et activons rapidement le plugin via WP-Cli.

        Maintenant, lorsque nous nous connectons au tableau de bord d'administration, nous verrons que FakerPress est installé, et nous pouvons créer toutes sortes de contenu en lot, y compris tous les types de publication personnalisés que nous avons.

        Comment construire un thème WordPress à partir de zéro: les bases

        Maintenant, en utilisant ce plugin, nous allons créer du faux contenu. C'est le résultat, en utilisant la valeur par défaut vingt-sept WordPress Thème:

        Comment construire un thème WordPress à partir de zéro: les bases

        Maintenant, nous plongeons rapidement et créons un thème minimum nu qui se compose du fichier Catch-All Index.php, et de style.css, dont nous avons besoin pour le système de temntat WordPress pour reconna?tre le thème:

        <span>/*
        </span><span>Theme Name: Botega Simple Theme
        </span><span>Theme URI: https://botega.co.uk
        </span><span>Author: Tonino Jankov
        </span><span>Author URI: https://botega.co.uk
        </span><span>Description: Basic WordPress theme for Sitepoint theme building tutorial
        </span><span>Text Domain: bsimple
        </span><span>Version: 1.0.0
        </span><span>License: GNU General Public License v2 or later
        </span><span>*/
        </span>

        C'est le style.css, qui ne se compose que de commentaires de méta-CSS pour l'instant. Ces commentaires sont nécessaires.

        Il s'agit du fichier index.php. Il attrapera toutes les demandes pour l'instant:

        <span>/*
        </span><span>Theme Name: Botega Simple Theme
        </span><span>Theme URI: https://botega.co.uk
        </span><span>Author: Tonino Jankov
        </span><span>Author URI: https://botega.co.uk
        </span><span>Description: Basic WordPress theme for Sitepoint theme building tutorial
        </span><span>Text Domain: bsimple
        </span><span>Version: 1.0.0
        </span><span>License: GNU General Public License v2 or later
        </span><span>*/
        </span>

        Nous téléchargeons et activons maintenant le thème minimal que nous avons. Je l'active en utilisant WP-CLI:

        Le thème est désormais visible par WordPress et est actif:

        Comment construire un thème WordPress à partir de zéro: les bases

        Nous n'avons pas fourni de capture d'écran, donc l'affichage dans le backend est basique.

        Si nous visitons notre site Web maintenant dans le navigateur, c'est ce que nous verrons:

        Comment construire un thème WordPress à partir de zéro: les bases

        évidemment, nous avons du travail à faire.

        Si nous affichons le code source de la page d'accueil, nous verrons que la fonction wp_head () a publié de nombreuses balises WordPress par défaut dans le , comme CSS, JavaScript, Link et Meta Tags.

        La fonction bloginfo () est utilisée pour produire des informations sur le site Web.

        Notre page d'accueil est vide, car nous ne publions rien à l'intérieur de la boucle - un modèle que WordPress utilise dans tous ses modèles pour produire du contenu.

        La page Codex autour de la boucle va profondément dans les détails à ce sujet. Une structure typique pour la boucle - qui est basée sur PHP tandis que Structure de contr?le - ressemble à ceci:

        <span><span><?php
        </span></span><span><span>/**
        </span></span><span><span> *
        </span></span><span><span> * <span>@package Botega_Scratch_Theme
        </span></span></span><span><span> */
        </span></span><span><span>?></span>
        </span>
        <span><span><!DOCTYPE html></span>
        </span><span><span><span><html</span> <span><span><?php language_attributes(); ?></span></span>></span>
        </span><span><span><span><head</span>></span>
        </span>    <span><span><span><title</span>></span><span><?php bloginfo('name'); ?></span><span><span></title</span>></span>
        </span>    <span><span><span><link</span> rel<span>="stylesheet"</span> href<span>="<span><?php bloginfo('stylesheet_url'); ?></span>"</span>></span>
        </span>    <span><span><?php wp_head(); ?></span>
        </span><span><span><span></head</span>></span>
        </span><span><span><span><body</span>></span>
        </span>
              <span><span><span><header</span>></span>
        </span>         <span><span><span><h1</span>></span><span><?php bloginfo('name'); ?></span><span><span></h1</span>></span>
        </span>         <span><span><span><h3</span>></span><span><?php bloginfo('description'); ?></span><span><span></h3</span>></span>
        </span>      <span><span><span></header</span>></span>
        </span>
                <span><span><?php
        </span></span><span>        <span>if ( have_posts() ) :
        </span></span><span>            <span>/* Start the Loop */
        </span></span><span>            <span>while ( have_posts() ) :
        </span></span><span>                <span>the_post();
        </span></span><span>            <span>endwhile;
        </span></span><span>        <span>endif;
        </span></span><span>        <span>?></span>
        </span>
        <span><span><span></body</span>></span>
        </span>

        Nous devons remplir cela en boucle avec du contenu - ou avec des balises WordPress de sortie de contenu.

        si nous changeons notre boucle, en ajoutant the_title (), the_excerpt (), et nous ajoutons du balisage html et the_id (), pour ressembler à ceci:

        <span><span><?php
        </span></span><span><span>if ( have_posts() ) {
        </span></span><span>    <span>while ( have_posts() ) {
        </span></span><span>        <span>the_post();
        </span></span><span>        <span>//
        </span></span><span>        <span>// Post Content here
        </span></span><span>        <span>//
        </span></span><span>    <span>} // end while
        </span></span><span><span>} // end if
        </span></span><span><span>?></span>
        </span>

        Nous allons maintenant obtenir une liste de messages sur notre page d'accueil, sans style appliqué:

        Comment construire un thème WordPress à partir de zéro: les bases

        WordPress montre une page de blog - une page d'archive pour tous les articles de blog - par défaut.

        Si nous visitons maintenant URL de message unique - quelque chose comme http://my-website.com/2018/11/14/sapiente-adfacilis-quo-repellat-quos/ - nous verrons quelque chose comme ceci:

        Comment construire un thème WordPress à partir de zéro: les bases

        notre boucle , bien que très brut, fonctionne réellement.

        Structurer notre thème dans des fichiers et appliquer le banc de bootstrap

        Nous allons maintenant implémenter des partiels, comme Header.php et Footer.php et divers modèles spécialisés, tous en utilisant le balisage de Bootstrap Twitter, afin que nous puissions le coiffer plus facilement.

        En commen?ant par index.php, nous rempla?ons tout le contenu avant et après la boucle par get_header () et get_footer () Fonctions:

            <span><span><?php
        </span></span><span>    <span>if ( have_posts() ) : while ( have_posts() ): the_post(); ?></span>
        </span>
            <span><span><span><div</span> id<span>="post-<span><?php the_ID(); ?></span>"</span>></span>
        </span>        <span><span><span><h2</span>></span><span><?php the_title(); ?></span><span><span></h2</span>></span>
        </span>        <span><span><span><div</span> class<span>="post-excerpt"</span>></span><span><?php the_excerpt(); ?></span><span><span></div</span>></span>
        </span>    <span><span><span></div</span>></span>
        </span>
            <span><span><?php endwhile;
        </span></span><span>    <span>endif;
        </span></span><span>    <span>?></span>
        </span>

        Cela signifie que nous devons fournir tout ce contenu dans les partiels que nous avons mentionnés.

        Conformément à ce que nous avons dit - que nous utiliserons le thème Bootstrap Twitter - notre fichier en tête.php ressemblera à ceci:

        /**
         *
         * @package Botega_Scratch_Theme
         */
        
        get_header(); ?>
        
            <span><span><?php
        </span></span><span>    <span>if ( have_posts() ) : while ( have_posts() ): the_post(); ?></span>
        </span>
            <span><span><span><div</span> id<span>="post-<span><?php the_ID(); ?></span>"</span>></span>
        </span>        <span><span><span><h2</span>></span><span><?php the_title(); ?></span><span><span></h2</span>></span>
        </span>        <span><span><span><div</span> class<span>="post-excerpt"</span>></span><span><?php the_excerpt(); ?></span><span><span></div</span>></span>
        </span>    <span><span><span></div</span>></span>
        </span>
            <span><span><?php endwhile;
        </span></span><span>    <span>endif;
        </span></span><span>    <span>?></span>
        </span>
        
        

        Notre fichier Footer.php ressemblera à ceci:

        <span>/*
        </span><span>Theme Name: Botega Simple Theme
        </span><span>Theme URI: https://botega.co.uk
        </span><span>Author: Tonino Jankov
        </span><span>Author URI: https://botega.co.uk
        </span><span>Description: Basic WordPress theme for Sitepoint theme building tutorial
        </span><span>Text Domain: bsimple
        </span><span>Version: 1.0.0
        </span><span>License: GNU General Public License v2 or later
        </span><span>*/
        </span>

        Nous utilisons des classes bootstrap dans nos balises HTML, et wp_head () et wp_footer () Fire WP_head et WP_Footer Action Hooks.

        La prochaine chose que nous ferons consiste à inclure le CSS et JavaScript du modèle Bootstrap Clean de Startbootstrap.com, qui est livré avec une licence MIT, afin que nous puissions l'utiliser librement. De cette fa?on, notre thème sera livré avec des styles prédéfinis, une réactivité, et nous pourrons toujours le styliser davantage.

        fonctions.php

        fonctions.php est un fichier qui est livré avec n'importe quel thème WordPress sérieux. Il s'agit d'un fichier qui agit comme des archives de plugin d'un homme pauvre. Il nous permet d'inclure toute fonctionnalité personnalisée dans notre thème.

        Nous allons d'abord utiliser ce fichier pour inclure le bootstrap et les styles et scripts de notre thème bootstrap:

        <span><span><?php
        </span></span><span><span>/**
        </span></span><span><span> *
        </span></span><span><span> * <span>@package Botega_Scratch_Theme
        </span></span></span><span><span> */
        </span></span><span><span>?></span>
        </span>
        <span><span><!DOCTYPE html></span>
        </span><span><span><span><html</span> <span><span><?php language_attributes(); ?></span></span>></span>
        </span><span><span><span><head</span>></span>
        </span>    <span><span><span><title</span>></span><span><?php bloginfo('name'); ?></span><span><span></title</span>></span>
        </span>    <span><span><span><link</span> rel<span>="stylesheet"</span> href<span>="<span><?php bloginfo('stylesheet_url'); ?></span>"</span>></span>
        </span>    <span><span><?php wp_head(); ?></span>
        </span><span><span><span></head</span>></span>
        </span><span><span><span><body</span>></span>
        </span>
              <span><span><span><header</span>></span>
        </span>         <span><span><span><h1</span>></span><span><?php bloginfo('name'); ?></span><span><span></h1</span>></span>
        </span>         <span><span><span><h3</span>></span><span><?php bloginfo('description'); ?></span><span><span></h3</span>></span>
        </span>      <span><span><span></header</span>></span>
        </span>
                <span><span><?php
        </span></span><span>        <span>if ( have_posts() ) :
        </span></span><span>            <span>/* Start the Loop */
        </span></span><span>            <span>while ( have_posts() ) :
        </span></span><span>                <span>the_post();
        </span></span><span>            <span>endwhile;
        </span></span><span>        <span>endif;
        </span></span><span>        <span>?></span>
        </span>
        <span><span><span></body</span>></span>
        </span>

        Il s'agit d'une manière WordPress-idiomatique d'inclure des scripts et des styles dans un thème. Il nous permet de spécifier que la position des scripts sera en cours (en-tête vs pieds de page) et la priorité de la mise en file d'attente. Nous pouvons même spécifier la dépendance de chaque ressource particulière sur l'autre. Cela garantira que les ressources seront chargées dans le bon ordre.

        Nous utilisons ici le crochet d'action WP_ENQUEUE_Scripts. Nous pouvons en savoir plus dans le codex. (Nous avons couvert des crochets d'action dans l'article précédent.)

        à l'intérieur de notre fonction Bsimple_Scripts () personnalisée - que nous accrochons à wp_enqueue_scripts Action Hook - nous utilisons deux fonctions WordPress pour charger nos scripts et nos styles - wp_enqueue_script () et wp_enqueue_style (). Les arguments pour ces fonctions - comme spécifié dans ses pages de référence liées - nous permettent de tirer pleinement parti de la flexibilité que nous avons mentionnée.

        Nous pouvons voir que nous chargeons des styles à partir d'Internet (polices Google) et de notre dossier de thème. Par conséquent, nous créons des répertoires CSS, JS et WebFonts dans notre dossier de thème et copierons les fichiers CSS, les fichiers JavaScript de notre thème bootstrap, les fichiers ic?nes de Fontawesome.

        Nous copie également notre fichier index.php sur les fichiers archive.php, page.php et single.php, que nous modifierons.

        Maintenant, notre structure de fichiers de thème ressemblera à ceci:

        Comment construire un thème WordPress à partir de zéro: les bases

        ajustant le balisage

        Si nous visitons maintenant notre page d'accueil, nous verrons le menu en haut - bien qu'il et la page soient toujours un gachis - car la ligne suivante dans notre en-tête sort toujours le menu enveloppé dans Div et son propre UL Tags, il n'est donc pas affecté par nos styles bootstrap:

        <span><span><?php
        </span></span><span><span>if ( have_posts() ) {
        </span></span><span>    <span>while ( have_posts() ) {
        </span></span><span>        <span>the_post();
        </span></span><span>        <span>//
        </span></span><span>        <span>// Post Content here
        </span></span><span>        <span>//
        </span></span><span>    <span>} // end while
        </span></span><span><span>} // end if
        </span></span><span><span>?></span>
        </span>

        Pour résoudre ce problème, nous devons d'abord aller à notre tableau de bord WP-Admin et créer - dans le personnalisateur - un nouveau menu. Nous allons le nommer Menu supérieur .

        Après avoir fait cela, nous irons dans notre fichier en tête.php supprimez ces lignes:

        <span>/*
        </span><span>Theme Name: Botega Simple Theme
        </span><span>Theme URI: https://botega.co.uk
        </span><span>Author: Tonino Jankov
        </span><span>Author URI: https://botega.co.uk
        </span><span>Description: Basic WordPress theme for Sitepoint theme building tutorial
        </span><span>Text Domain: bsimple
        </span><span>Version: 1.0.0
        </span><span>License: GNU General Public License v2 or later
        </span><span>*/
        </span>

        à leur place, nous mettons ces lignes:

        <span><span><?php
        </span></span><span><span>/**
        </span></span><span><span> *
        </span></span><span><span> * <span>@package Botega_Scratch_Theme
        </span></span></span><span><span> */
        </span></span><span><span>?></span>
        </span>
        <span><span><!DOCTYPE html></span>
        </span><span><span><span><html</span> <span><span><?php language_attributes(); ?></span></span>></span>
        </span><span><span><span><head</span>></span>
        </span>    <span><span><span><title</span>></span><span><?php bloginfo('name'); ?></span><span><span></title</span>></span>
        </span>    <span><span><span><link</span> rel<span>="stylesheet"</span> href<span>="<span><?php bloginfo('stylesheet_url'); ?></span>"</span>></span>
        </span>    <span><span><?php wp_head(); ?></span>
        </span><span><span><span></head</span>></span>
        </span><span><span><span><body</span>></span>
        </span>
              <span><span><span><header</span>></span>
        </span>         <span><span><span><h1</span>></span><span><?php bloginfo('name'); ?></span><span><span></h1</span>></span>
        </span>         <span><span><span><h3</span>></span><span><?php bloginfo('description'); ?></span><span><span></h3</span>></span>
        </span>      <span><span><span></header</span>></span>
        </span>
                <span><span><?php
        </span></span><span>        <span>if ( have_posts() ) :
        </span></span><span>            <span>/* Start the Loop */
        </span></span><span>            <span>while ( have_posts() ) :
        </span></span><span>                <span>the_post();
        </span></span><span>            <span>endwhile;
        </span></span><span>        <span>endif;
        </span></span><span>        <span>?></span>
        </span>
        <span><span><span></body</span>></span>
        </span>

        Cela supprimera la balise DIV et la duplication de la balise UL pour nous, mais nous devons toujours appliquer le Nav-Item et le Nav-Link à nos éléments de menu (à Li et à une balise respectivement). Comment allons-nous y aller? WP_NAV_MENU ne fournit pas d'arguments pour cela. Nous utiliserons les hame?ons NAV_MENU_LINK_ATBUTES et NAV_MENU_CSS_CLASS. Nous mettons cela dans notre fichier functions.php:

        <span><span><?php
        </span></span><span><span>if ( have_posts() ) {
        </span></span><span>    <span>while ( have_posts() ) {
        </span></span><span>        <span>the_post();
        </span></span><span>        <span>//
        </span></span><span>        <span>// Post Content here
        </span></span><span>        <span>//
        </span></span><span>    <span>} // end while
        </span></span><span><span>} // end if
        </span></span><span><span>?></span>
        </span>

        Maintenant, nous pouvons spécifier de nouveaux attributs dans notre WP_NAV_MENU dans notre tête.php:

            <span><span><?php
        </span></span><span>    <span>if ( have_posts() ) : while ( have_posts() ): the_post(); ?></span>
        </span>
            <span><span><span><div</span> id<span>="post-<span><?php the_ID(); ?></span>"</span>></span>
        </span>        <span><span><span><h2</span>></span><span><?php the_title(); ?></span><span><span></h2</span>></span>
        </span>        <span><span><span><div</span> class<span>="post-excerpt"</span>></span><span><?php the_excerpt(); ?></span><span><span></div</span>></span>
        </span>    <span><span><span></div</span>></span>
        </span>
            <span><span><?php endwhile;
        </span></span><span>    <span>endif;
        </span></span><span>    <span>?></span>
        </span>

        Maintenant, nos liens de menu supérieurs peuvent tirer parti des styles déjà définis dans CSS de notre thème bootstrap.

        En-tête dynamique

        pour pouvoir utiliser un en-tête dynamique - c'est-à-dire un en-tête différent pour la première page, pour d'autres pages sélectionnées, ou pour les archives - nous définirons une fonction dynamic_header () dans notre fichier functions.php, où nous 'LL Sortir notre balisage d'en-tête en fonction de la page que le visiteur charge.

        Alors maintenant, notre fichier en tête.php se terminera comme ceci:

        /**
         *
         * @package Botega_Scratch_Theme
         */
        
        get_header(); ?>
        
            <span><span><?php
        </span></span><span>    <span>if ( have_posts() ) : while ( have_posts() ): the_post(); ?></span>
        </span>
            <span><span><span><div</span> id<span>="post-<span><?php the_ID(); ?></span>"</span>></span>
        </span>        <span><span><span><h2</span>></span><span><?php the_title(); ?></span><span><span></h2</span>></span>
        </span>        <span><span><span><div</span> class<span>="post-excerpt"</span>></span><span><?php the_excerpt(); ?></span><span><span></div</span>></span>
        </span>    <span><span><span></div</span>></span>
        </span>
            <span><span><?php endwhile;
        </span></span><span>    <span>endif;
        </span></span><span>    <span>?></span>
        </span>
        
        

        Nous définirons également cette fonction comme ceci:

        <span><span><?php
        </span></span><span><span>/**
        </span></span><span><span> * The header for our theme.
        </span></span><span><span> *
        </span></span><span><span> * <span>@package Botega_Scratch_Theme
        </span></span></span><span><span> *
        </span></span><span><span> */
        </span></span><span><span>?></span>
        </span><span><span><!DOCTYPE html></span>
        </span><span><span><span><html</span>></span>
        </span><span><span><span><head</span>></span>
        </span><span><span><span><meta</span> charset<span>="<span><?php bloginfo( 'charset' ); ?></span>"</span>></span>
        </span><span><span><span><meta</span> name<span>="viewport"</span> content<span>="width=device-width, initial-scale=1"</span>></span>
        </span>
        <span><span><?php wp_head(); ?></span>
        </span><span><span><span></head</span>></span>
        </span>
        <span><span><span><body</span> <span><span><?php body_class(); ?></span></span>></span>
        </span>
          <span><span><span><nav</span> class<span>="navbar navbar-default navbar-custom navbar-fixed-top"</span>></span>
        </span>    <span><span><span><div</span> class<span>="container-fluid"</span>></span>
        </span>      <span><span><span><div</span> class<span>="navbar-header page-scroll"</span>></span>
        </span>              <span><span><span><a</span> href<span>="<span><?php echo esc_url( home_url( '/' ) ); ?></span>"</span> rel<span>="home"</span> class<span>="navbar-brand"</span>></span><span><?php bloginfo( 'name' ); ?></span><span><span></a</span>></span>
        </span>      <span><span><span></div</span>></span>
        </span>
              <span><span><span><div</span> class<span>="collapse navbar-collapse"</span> id<span>="bs-example-navbar-collapse-1"</span>></span>
        </span>          <span><span><span><ul</span> class<span>="nav navbar-nav navbar-right"</span>></span>
        </span>          <span><span><?php wp_nav_menu( array( 'theme_location' => 'primary', 'items_wrap' => '%3$s' ) ); ?></span>
        </span>          <span><span><span></ul</span>></span>
        </span>      <span><span><span></div</span>></span>
        </span>    <span><span><span></div</span>></span>
        </span>  <span><span><span></nav</span>></span>
        </span>
          <span><span><span><div</span> class<span>="container"</span>></span>
        </span>      <span><span><span><div</span> class<span>="row"</span>></span>
        </span>

        Pour pouvoir utiliser toutes les données URL ou Post actuelles - comme dans la boucle - nous déclarons une variable Global $ POST. Ensuite, nous remplissons simplement des bo?tiers de page ou de demande avec en-tête de remplissage HTML, que nous terminerons plus tard. Cela définit les bases d'un en-tête vraiment dynamique.

        Nous devons nous assurer que notre première page - avec un menu dynamique supérieur - sera bien même lorsque l'utilisateur est connecté. WordPress montre une barre d'administration lorsque les visiteurs sont connectés, même lorsqu'ils visitent la première page. Parce qu'il a une position: fixe, il superpose la zone supérieure de notre site Web, couvrant tout ce qui est là, nous devons donc spécifier un décalage pour notre menu supérieur.

        Nous allons l'ajouter à notre style.css:

        <span><span><?php
        </span></span><span><span>/**
        </span></span><span><span> * Footer template partial
        </span></span><span><span> *
        </span></span><span><span> * <span>@package Botega_Scratch_Theme
        </span></span></span><span><span> *
        </span></span><span><span> */
        </span></span><span><span>?></span>
        </span>     <span><span><span></div</span>></span>
        </span>     <span><!-- /.row -->
        </span>  <span><span><span></div</span>></span>
        </span>  <span><!-- /.container -->
        </span>
          <span><!-- Footer -->
        </span>  <span><span><span><footer</span>></span>
        </span>    <span><span><span><div</span> class<span>="container"</span>></span>
        </span>      <span><span><span><div</span> class<span>="row"</span>></span>
        </span>          <span><span><span><div</span> class<span>="col-lg-8 col-md-10 mx-auto"</span>></span>
        </span>          <span><span><span></div</span>></span>
        </span>      <span><span><span></div</span>></span><!-- /.row -->
        </span>    <span><span><span></div</span>></span><!-- /.container -->
        </span>  <span><span><span></footer</span>></span><!-- /footer -->
        </span>
        <span><span><?php wp_footer(); ?></span>
        </span>
        <span><span><span></body</span>></span>
        </span><span><span><span></html</span>></span>
        </span>

        Cela garantit que le #Mainnav - notre conteneur de menu - a suffisamment de décalage du haut, donc il n'est pas couvert lorsque l'utilisateur est connecté. Nous pouvons facilement le cibler.

        Nous pouvons voir que nous abordons deux cas dans notre CSS - un défaut et un autre pour les écrans plus petits. En effet

        Sur mobile, nous devrions maintenant avoir un menu déroulant réactif à alimentation JavaScript:

        Comment construire un thème WordPress à partir de zéro: les bases

        Conclusion

        Dans cette deuxième partie sur la création d'un thème WordPress à partir de zéro, nous avons créé un thème WordPress très basique, et nous y avons inclus des styles et scripts bootstrap. Nous avons ajusté la sortie du menu pour s'adapter à nos styles prédéfinis. Nous avons également séparé la sortie de l'en-tête et du pied de page dans leurs partiels respectifs.

        Le fichier functions.php - un fichier crucial dans le développement du thème - est un autre sujet que nous avons introduit et exploité. La sortie de l'en-tête a été séparée en sa propre fonction, qui utilisera des détails de la visite de la page et des variables définies par propriétaire de site pour déterminer la sortie finale.

        Dans la troisième partie du guide, nous finirons de construire des modèles particuliers, de donner une meilleure structure à nos fonctions et partiels de thème, et terminer le style de notre site Web.


        Il y a trois articles dans cette série sur la construction d'un thème WordPress à partir de zéro:

        • sous-tension de la structure d'un thème
        • Bases sur le thème
        • affiner le thème

        Questions fréquemment posées (FAQ) sur la construction d'un thème WordPress à partir de zéro

        Quelles sont les conditions préalables pour construire un thème WordPress à partir de zéro?

        Avant de commencer à construire un thème WordPress à partir de zéro, vous devez avoir une compréhension de base de HTML, CSS, PHP et JavaScript. Ce sont les technologies de base utilisées dans le développement du thème WordPress. De plus, vous devez être familier avec la plate-forme WordPress elle-même, y compris sa structure de fichiers et sa hiérarchie de modèle. Il est également utile d'avoir un environnement de développement local configuré sur votre ordinateur, comme MAMP ou XAMPP, où vous pouvez tester votre thème lorsque vous le construisez.

        Comment commencer à créer un thème WordPress à partir de zéro?

        La première étape de la création d'un thème WordPress à partir de zéro consiste à créer un nouveau répertoire dans votre dossier WordPress Thèmes. Ce sera la maison de tous vos fichiers de thème. Ensuite, vous devrez créer un fichier style.css et un fichier index.php. Le fichier style.css est l'endroit où vous rédigerez tout votre code CSS, et c'est également là que vous définissez les détails de votre thème. Le fichier index.php est le fichier de modèle principal de votre thème. C'est là que vous rédigerez le code PHP et HTML qui génère la mise en page de votre site Web.

        Comment puis-je ajouter des fonctionnalités personnalisées au thème WordPress?

        Vous pouvez ajouter des fonctionnalités personnalisées à votre thème WordPress par Création d'un fichier functions.php dans votre répertoire de thème. Ce fichier agit comme un plugin, vous permettant d'ajouter des fonctionnalités et des fonctionnalités personnalisées à votre thème. Vous pouvez l'utiliser pour enregistrer les menus de navigation, ajouter des barres latérales, des styles et scripts d'observation, et bien plus encore.

        Comment créer un thème WordPress réactif?

        Pour créer un thème WordPress réactif, vous ?Je dois utiliser les requêtes multimédias dans votre code CSS. Les requêtes multimédias vous permettent d'appliquer différents styles en fonction de la taille de l'écran de l'utilisateur. Cela signifie que vous pouvez créer une disposition différente pour les appareils de bureau, de tablette et mobiles. Vous devrez également vous assurer que vos images sont réactives, ce que vous pouvez faire en définissant leur largeur à 100%.

        Comment personnaliser l'en-tête et le pied de page de mon thème WordPress?

        Vous pouvez personnaliser l'en-tête et le pied de page de votre thème WordPress en créant un fichier en-tête.php et un fichier footer.php dans votre répertoire de thème . Le fichier en tête.php est l'endroit où vous rédigerez le code HTML et PHP pour votre en-tête, et le fichier de pied.php est où vous rédigerez le code pour votre pied de page. Vous pouvez ensuite inclure ces fichiers dans vos autres fichiers de modèle à l'aide des fonctions get_header () et get_footer ().

        Comment ajouter un type de message personnalisé au thème WordPress?

        Vous pouvez ajouter Un type de publication personnalisé sur votre thème WordPress à l'aide de la fonction register_post_type () dans votre fichier functions.php. Cette fonction vous permet de définir un nouveau type de message avec ses propres étiquettes, capacités et fonctionnalités. Vous pouvez ensuite créer un fichier .php unique {PostType} et un fichier archive- {PostType} .php pour contr?ler l'affichage de votre type de publication personnalisé.

        Comment ajouter une barre latérale à mon thème WordPress?

        Vous pouvez ajouter une barre latérale à votre thème WordPress en créant un fichier Sidebar.php dans votre répertoire de thème et en utilisant la fonction register_sidebar () dans votre fichier function.php. Vous pouvez ensuite afficher votre barre latérale dans vos autres fichiers de modèle à l'aide de la fonction get_sidebar ().

        Comment ajouter un menu de navigation à mon thème WordPress?

        Vous pouvez ajouter un menu de navigation à votre Thème wordpress en utilisant la fonction registre_nav_menus () dans votre fichier fonctions.php. Cette fonction vous permet d'enregistrer un ou plusieurs menus de navigation dans votre thème. Vous pouvez ensuite afficher votre menu dans votre autre fichier de modèle à l'aide de la fonction wp_nav_menu ().

        Comment personnaliser la boucle dans mon thème WordPress?

        Vous pouvez personnaliser la boucle dans votre thème WordPress En modifiant le code de boucle dans votre fichier index.php ou d'autres fichiers de modèle. La boucle est le code PHP que WordPress utilise pour afficher les publications. Vous pouvez le personnaliser pour modifier la fa?on dont les articles sont affichés, le nombre de messages affichés, et plus encore.

        Comment mettre à jour mon thème WordPress?

        Vous pouvez mettre à jour votre thème WordPress en apportant des modifications à vos fichiers de thème, puis les télécharger sur votre site WordPress. Si vous utilisez un thème enfant, vous pouvez mettre à jour le thème parent sans perdre vos modifications. Si vous n'utilisez pas un thème enfant, vous devriez faire une sauvegarde de votre thème avant de le mettre à jour, car les mises à jour écraseront vos modifications.

        Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

        Déclaration de ce site Web
        Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefa?on, veuillez contacter admin@php.cn

        Outils d'IA chauds

        Undress AI Tool

        Undress AI Tool

        Images de déshabillage gratuites

        Undresser.AI Undress

        Undresser.AI Undress

        Application basée sur l'IA pour créer des photos de nu réalistes

        AI Clothes Remover

        AI Clothes Remover

        Outil d'IA en ligne pour supprimer les vêtements des photos.

        Clothoff.io

        Clothoff.io

        Dissolvant de vêtements AI

        Video Face Swap

        Video Face Swap

        échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

        Outils chauds

        Bloc-notes++7.3.1

        Bloc-notes++7.3.1

        éditeur de code facile à utiliser et gratuit

        SublimeText3 version chinoise

        SublimeText3 version chinoise

        Version chinoise, très simple à utiliser

        Envoyer Studio 13.0.1

        Envoyer Studio 13.0.1

        Puissant environnement de développement intégré PHP

        Dreamweaver CS6

        Dreamweaver CS6

        Outils de développement Web visuel

        SublimeText3 version Mac

        SublimeText3 version Mac

        Logiciel d'édition de code au niveau de Dieu (SublimeText3)

        Comment utiliser Git avec WordPress Comment utiliser Git avec WordPress Jun 26, 2025 am 12:23 AM

        Lorsque vous gérez des projets WordPress avec GIT, vous ne devez inclure que des thèmes, des plugins personnalisés et des fichiers de configuration dans le contr?le de version; configurer des fichiers .gitignore pour ignorer les répertoires de téléchargement, les caches et les configurations sensibles; Utilisez des outils Webhooks ou CI pour réaliser un déploiement automatique et faire attention au traitement de la base de données; Utilisez des politiques à deux branches (principale / développement) pour le développement collaboratif. Cela peut éviter les conflits, assurer la sécurité et améliorer l'efficacité de la collaboration et du déploiement.

        Comment créer un simple bloc Gutenberg Comment créer un simple bloc Gutenberg Jun 28, 2025 am 12:13 AM

        La clé pour créer un bloc Gutenberg est de comprendre sa structure de base et de connecter correctement les ressources avant et arrière. 1. Préparez l'environnement de développement: installez WordPress local, Node.js et @ wordpress / scripts; 2. Utilisez PHP pour enregistrer les blocs et définir la logique d'édition et d'affichage des blocs avec JavaScript; 3. Créer des fichiers JS via NPM pour que les modifications prennent effet; 4. Vérifiez si le chemin et les ic?nes sont corrects lors de la rencontre avec des problèmes ou utilisez une écoute en temps réel pour éviter la compilation manuelle répétée. Après ces étapes, un simple bloc Gutenberg peut être implémenté étape par étape.

        Comment utiliser l'environnement de test WordPress Comment utiliser l'environnement de test WordPress Jun 24, 2025 pm 05:13 PM

        Utilisez les environnements de test WordPress pour assurer la sécurité et la compatibilité de nouvelles fonctionnalités, plug-ins ou thèmes avant d'être officiellement lancés et éviter d'affecter de vrais sites Web. Les étapes pour créer un environnement de test comprennent: le téléchargement et l'installation de logiciels de serveur local (tels que localwp, xAMPP), la création d'un site, la configuration d'une base de données et un compte administrateur, l'installation de thèmes et de plug-ins pour les tests; La méthode de copie d'un site Web formel dans un environnement de test consiste à exporter le site via le plug-in, à importer l'environnement de test et à remplacer le nom de domaine; Lorsque vous l'utilisez, vous devez faire attention à ne pas utiliser de données utilisateur réelles, à nettoyer régulièrement des données inutiles, à sauvegarder l'état du test, à réinitialiser l'environnement dans le temps et à unifier la configuration de l'équipe pour réduire les différences.

        Comment rincer les règles de réécriture programmatiquement Comment rincer les règles de réécriture programmatiquement Jun 27, 2025 am 12:21 AM

        Dans WordPress, lors de l'ajout d'un type d'article personnalisé ou de la modification de la structure de liaison fixe, vous devez rafra?chir manuellement les règles de réécriture. à l'heure actuelle, vous pouvez appeler la fonction flush_rewrite_rules () via le code pour l'implémenter. 1. Cette fonction peut être ajoutée au thème ou au crochet d'activation du thème ou du plug-in pour actualiser automatiquement; 2. Exécuter une seule fois lorsque cela est nécessaire, comme l'ajout de CPT, la taxonomie ou la modification de la structure de liaison; 3. évitez les appels fréquents pour éviter d'affecter les performances; 4. Dans un environnement multi-sites, actualisez chaque site séparément le cas échéant; 5. Certains environnements d'hébergement peuvent restreindre le stockage des règles. De plus, cliquer sur Enregistrer pour accéder à la page "Paramètres> Links épinglés" peut également déclencher une actualisation, adaptée aux scénarios non automatiques.

        Comment configurer les redirectes dans WordPress HTACCESS Comment configurer les redirectes dans WordPress HTACCESS Jun 25, 2025 am 12:19 AM

        TosetupredirectSinwordPressusingthe.htaccessfile, locatethefileinyoursite’srootDirectoryandAdlecrectulesabovethe # BeginwordPressSection.

        Comment envoyer un e-mail de WordPress à l'aide de SMTP Comment envoyer un e-mail de WordPress à l'aide de SMTP Jun 27, 2025 am 12:30 AM

        UsingsmtpforwordPressEmailSimproveSDeliverability andreliabilitycompatedTotheDefaultPhpmail () function.1.smtpauthenticateswithyouremailServer, réducingspamplacement.2

        Comment rendre un thème WordPress réactif Comment rendre un thème WordPress réactif Jun 28, 2025 am 12:14 AM

        Pour implémenter la conception de thème WordPress réactive, utilisez d'abord des balises META HTML5 et Mobile-First, ajoutez des paramètres de la fenêtre dans Enditer.php pour vous assurer que le terminal mobile est affiché correctement et organiser la mise en page avec des balises de structure HTML5; Deuxièmement, utilisez la requête multimédia CSS pour réaliser l'adaptation de style sous différentes largeurs d'écran, les styles d'écriture en fonction du principe mobile d'abord, et les points d'arrêt couramment utilisés incluent 480px, 768px et 1024px; Troisièmement, traitez élastiquement les images et les dispositions, définissez la largeur maximale: 100% pour l'image et utilisez la disposition Flexbox ou Grid au lieu de la largeur fixe; Enfin, testez complètement les outils de développeur de navigateur et les appareils réels, optimiser les performances de chargement et assurer la réponse

        Comment intégrer les API tierces avec WordPress Comment intégrer les API tierces avec WordPress Jun 29, 2025 am 12:03 AM

        TOINTEGRATETHIRD-PARTYAPISINTOWORDPRESS, SuivreSestesteps: 1.SelectasuitableAPiANDObtainCredentialSlikePikeySoroAuthTokensByregisterring et greepingthemSecure.2.choosebetweenpluginsforsimplicity orfistomcodeusingfunctionslise wp_reMote_get () pour le flexibilité.

        See all articles