{"id":229500,"date":"2022-11-17T11:18:00","date_gmt":"2022-11-17T08:18:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=229500"},"modified":"2022-11-09T08:12:45","modified_gmt":"2022-11-09T05:12:45","slug":"wordpressi-mallid-algajatele-puit","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/et\/wordpressi-mallid-algajatele-puit\/","title":{"rendered":"WordPressi mallid algajatele: puit"},"content":{"rendered":"\n<p>Alates WordPressi mallidest r\u00e4\u00e4kimisest olen k\u00e4sitlenud m\u00f5ningaid erinevaid saadaolevaid mootoreid:<\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/viniwrubleski\/jade-php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Jade-PHP<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/cjonasw\/wordpress-starter-theme-mustache\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Vuntsid<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/zach-adams\/sprig-foundation\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Oks<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/jenssegers\/blade\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Tera<\/a><\/li>\n<\/ul>\n<p>Kui vaatate Moustache&#8217;i, siis v\u00f5ite olla huvitatud juhtraudadest ja kui vaatate Blade&#8217;i, siis soovitan tungivalt vaadata <a href=\"https:\/\/roots.io\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Sage&#8217;i<\/a> <a href=\"https:\/\/roots.io\/sage\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Rootsi<\/a> meeskonnast .<a href=\"https:\/\/roots.io\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external\"><\/a><\/p>\n<p>Kuid selle viimase postituse jaoks j\u00e4tkan Timberiga, mida ma eile tutvustasin. Ma ei ole niiv\u00f5rd selles, mida kasutatakse (kuna neil k\u00f5igil on oma kompromissid), kui see on j\u00e4rjepidev.<\/p>\n<h2>WordPressi mall: puidu kasutamine<\/h2>\n<p>Seda arvestades saate <a href=\"https:\/\/www.upstatement.com\/timber\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Timberit<\/a> oma projektides kasutada j\u00e4rgmiselt.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-165381-61e77ec006741.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-165381-61e77ec006741.png\" alt=\"WordPressi mallid algajatele: puit\" ><\/a><\/p>\n<p>Alustamiseks peate olema kursis rakendusega Composer ja teil peab olema kohalik arenduskeskkond. Kui teil pole kumbagi neist v\u00f5i vajate abi, siis aitan teid:<\/p>\n<ol>\n<li><a href=\"https:\/\/tommcfarlin.com\/laravel-valet-for-wordpress\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Laraveli kasutamine WordPressi arendamiseks<\/a><\/li>\n<li><a href=\"https:\/\/tommcfarlin.com\/tag\/configuring-composer-for-wordpress\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Helilooja konfigureerimine WordPressi jaoks<\/a><\/li>\n<\/ol>\n<p>Kui olete k\u00f5igis nendes juhendites kirjeldatud sammud l\u00e4binud, peaksite olema valmis. Nii et siin on see, mida me tegema hakkame.<\/p>\n<h3>1 Seadistage puidu jaoks kohalik paigaldus<\/h3>\n<p>Kasutan selleks Valetit, mis t\u00e4hendab, et selle kataloogi on installitud kataloog, mille kataloogi on <a href=\"https:\/\/wordpress.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">WordPressi<\/a> uusim versioon (4.8.3).<\/p>\n<p>See t\u00e4hendab, et mul on andmebaas juba kasutamiseks valmis:<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-165381-61e77ec4380aa.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-165381-61e77ec4380aa.png\" alt=\"WordPressi mallid algajatele: puit\" ><\/a><\/p>\n<p>Ja ma annan v\u00e4lja j\u00e4rgmised k\u00e4sud Laraveli seadistamiseks ja turvaliseks installimiseks (et j\u00e4ljendada lavastuskeskkonda):<\/p>\n<pre><code>$ valet link\n$ valet secure<\/code><\/pre>\n<p>Et saaksin saidile brauseris juurde p\u00e4\u00e4seda.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-165381-61e77ec7806b6.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-165381-61e77ec7806b6.png\" alt=\"WordPressi mallid algajatele: puit\" ><\/a><\/p>\n<p>Neile, kes on uudishimulikud, kasutan:<\/p>\n<ul>\n<li><a href=\"https:\/\/wordpress.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">WordPress<\/a> 4.8.3<\/li>\n<li><a href=\"https:\/\/wordpress.org\/themes\/twentyfifteen\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">kaksk\u00fcmmend viisteist<\/a><\/li>\n<li>Puhastage p\u00fcsilingid<\/li>\n<\/ul>\n<p>Ja muid pluginaid pole. See on lihtsalt vaniljeinstallatsioon peale selle, mida \u00fclal n\u00e4ete.<\/p>\n<p>Sel hetkel olen valmis Timberi installima.<\/p>\n<h3>2 Puidu paigaldamine<\/h3>\n<p>Eeldades, et j\u00e4rgisite \u00fclaltoodud Valeti ja helilooja juhendeid, peaksite olema valmis. Nii et navigeerige terminali kasutades oma WordPressi installikataloogi.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-165381-61e77ecb7040b.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-165381-61e77ecb7040b.png\" alt=\"WordPressi mallid algajatele: puit\" ><\/a><\/p>\n<p>Seej\u00e4rel andke j\u00e4rgmine k\u00e4sk:<\/p>\n<pre><code>$ composer require timber\/timber<\/code><\/pre>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-165381-61e77ece8223b.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-165381-61e77ece8223b.png\" alt=\"WordPressi mallid algajatele: puit\" ><\/a><\/p>\n<p>See installib Timberi, kuid peate siiski v\u00e4rskendama oma teema faili functions.php, et see kasutaks \u00f5igesti Composeri automaatlaadurit.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-165381-61e77ed28264d.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-165381-61e77ed28264d.png\" alt=\"WordPressi mallid algajatele: puit\" ><\/a><\/p>\n<p>Eeldades, et k\u00f5ik on l\u00e4inud \u00f5igesti, peaksite saama oma saiti v\u00e4rskendada, navigeerida postitustele, lehtedele jne ning miski ei tohiks olla korrast \u00e4ra.<\/p>\n<h3>3 Puidu l\u00e4htestamine<\/h3>\n<p>L\u00f5puks on aeg kasutada Timberit, et asendada suur osa sellest, mida oleme harjunud WordPressi malli kontekstis n\u00e4gema.<\/p>\n<p><strong>Otsustan seda teha saidil content-page.php<\/strong>, et seda oleks lihtne j\u00e4lgida. Pange t\u00e4hele, et koodisegment, mida ma muudan, <a href=\"https:\/\/gist.github.com\/tommcfarlin\/2c02b22272f645076f7f735bd61a4034#file-04-content-page-php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">n\u00e4eb algselt v\u00e4lja j\u00e4rgmine:<\/a><\/p>\n<pre><code>&lt;article id=\"post-&lt;?php the_ID(); ?&gt;\" &lt;?php post_class(); ?&gt;&gt;\n    &lt;?php\n        \/\/ Post thumbnail.\n        twentyfifteen_post_thumbnail();\n    ?&gt;\n\n    &lt;header class=\"entry-header\"&gt;\n        &lt;?php the_title( '&lt;h1 class=\"entry-title\"&gt;', '&lt;\/h1&gt;' ); ?&gt;\n    &lt;\/header&gt;&lt;!-- .entry-header --&gt;\n\n    &lt;div class=\"entry-content\"&gt;\n        &lt;?php the_content(); ?&gt;\n        &lt;?php\n            wp_link_pages( array(\n                'before'      =&gt; '&lt;div class=\"page-links\"&gt;&lt;span class=\"page-links-title\"&gt;'. __( 'Pages:', 'twentyfifteen' ). '&lt;\/span&gt;',\n                'after'       =&gt; '&lt;\/div&gt;',\n                'link_before' =&gt; '&lt;span&gt;',\n                'link_after'  =&gt; '&lt;\/span&gt;',\n                'pagelink'    =&gt; '&lt;span class=\"screen-reader-text\"&gt;'. __( 'Page', 'twentyfifteen' ). ' &lt;\/span&gt;%',\n                'separator'   =&gt; '&lt;span class=\"screen-reader-text\"&gt;, &lt;\/span&gt;',) );\n        ?&gt;\n    &lt;\/div&gt;&lt;!-- .entry-content --&gt;\n\n    &lt;?php edit_post_link( __( 'Edit', 'twentyfifteen' ), '&lt;footer class=\"entry-footer\"&gt;&lt;span class=\"edit-link\"&gt;', '&lt;\/span&gt;&lt;\/footer&gt;&lt;!-- .entry-footer --&gt;' ); ?&gt;\n\n&lt;\/article&gt;&lt;!-- #post-## --&gt;<\/code><\/pre>\n<p>Selles postituses ei hakka ma \u00fclalolevat t\u00e4ielikult uuesti looma, vaid alustan sellega, mida on vaja mallimootori kasutamise alustamiseks PHP sihtasutuse kontekstis.<\/p>\n<p>Esiteks peate looma malli, mida saab standardse WordPressi installi n\u00e4idislehele rakendada. Helistasin oma <a href=\"https:\/\/gist.github.com\/tommcfarlin\/2c02b22272f645076f7f735bd61a4034#file-05-template-timber-page-php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">mallile template-timber-page.php<\/a> ja see n\u00e4eb v\u00e4lja selline:<\/p>\n<pre><code>&lt;?php\n\n\/**\n * Template Name: Timber Template\n * Description: Replaces the standard page with a Timber template.\n *\/\n\n$timber  = new TimberTimber();\n$context = Timber::get_context();\n$post    = new TimberPost();\n\n$context['post'] = $post;\nTimber::render(\n  array( 'content-'. $post-&gt;post_name. '.twig', 'page.twig' ),\n  $context\n);\n<\/code><\/pre>\n<p>\u00dclaltoodud koodis toimub j\u00e4rgmine:<\/p>\n<ol>\n<li>\u00a0Instantseerin Puitobjekti.<\/li>\n<li>Siis saan puidu konteksti. Kontekst sisaldab palju teavet, mis on mallis (v\u00f5i saidil) kasulik, olenevalt sellest, kus te oma malli kasutate.<\/li>\n<li>P\u00e4rast seda haaran TimberPosti, mis on sisuliselt WordPressi postituse laiendus. Sellel on WP_Posti andmed, kuid see muudab need meie mallidele k\u00e4ttesaadavaks.<\/li>\n<li>J\u00e4rgmiseks m\u00e4\u00e4rasin massiivi <strong>$context<\/strong> <strong>postitusindeksi<\/strong> viitega Timber Postile (mida olen nimetanud <strong>$post<\/strong> ).<\/li>\n<li>L\u00f5puks k\u00e4sin Timberil etteantud konteksti kasutades renderdada leht nimega <strong>content-sample-page.twig .<\/strong><\/li>\n<\/ol>\n<p>Siin on oluline luua tegelik oksafail (mis on Timberi mallifaili laiend). Seega l\u00f5in <strong>sisu-n\u00e4idis-leht.twig<\/strong> ja see n\u00e4eb v\u00e4lja <a href=\"https:\/\/gist.github.com\/tommcfarlin\/2c02b22272f645076f7f735bd61a4034#file-06-cotent-sample-page-twig\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">selline:<\/a><\/p>\n<pre><code>{% block content %}\n  &lt;article id=\"post-{{post.ID}}\" class=\"{{body_class}}\"&gt;\n\n    &lt;header class=\"entry-header\"&gt;\n      &lt;h1 class=\"article-h1\"&gt;{{post.title}}&lt;\/h1&gt;\n    &lt;\/header&gt;&lt;!-- .entry-header --&gt;\n\n    &lt;div class=\"entry-content\"&gt;\n        {{post.content}}\n    &lt;\/div&gt;&lt;!-- .entry-content --&gt;\n\n  &lt;\/article&gt;&lt;!-- #post-## --&gt;\n{% endblock %}\n<\/code><\/pre>\n<p>P\u00e4rast Timber-objekti instantseerimist ja seej\u00e4rel \u00fclaltoodud koodi asendamist m\u00e4rkate, et kood loeb veidi teistmoodi (kuigi seda pole \u00fcldse raske j\u00e4lgida).<\/p>\n<h3>4 Malli rakendamine<\/h3>\n<p>Malli rakendamiseks liikuge WordPressis lehele <strong>Lehed<\/strong>. Otsige \u00fcles <strong>n\u00e4idisleht<\/strong>, seej\u00e4rel valige malli rippmen\u00fc\u00fcst see, mille me just l\u00f5ime, kasutades \u00fclaltoodud pealkirja:<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-165381-61e77ed87f4dc.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-165381-61e77ed87f4dc.png\" alt=\"WordPressi mallid algajatele: puit\" ><\/a><\/p>\n<p>Kui see on tehtud, saate postitust vaadata. M\u00e4rkate, et see n\u00e4eb pisut alasti v\u00e4lja v\u00f5rreldes sellega, mida oleme harjunud n\u00e4gema:<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-165381-61e77eddccec8.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-165381-61e77eddccec8.png\" alt=\"WordPressi mallid algajatele: puit\" ><\/a><\/p>\n<p>Kuid saate \u00fcldise ettekujutuse, kuidas me saame kasutada konteksti, et p\u00e4\u00e4seda juurde paljudele samadele atribuutidele, mida oleme harjunud WordPressis n\u00e4gema, ilma et peaksime koodi risustama m\u00e4rgistuse ja PHP-ga ja mis iganes muuga, mida me kasutame. kasutamiseks.<\/p>\n<h2>Rohkem ressursse<\/h2>\n<p>Ma tean, et see on valdavalt mallide kiirkursus ja see ei h\u00f5lma nii palju kui v\u00f5imalik. Kuna see postitus l\u00e4heneb 1000 s\u00f5nale, pean ma kuhugi piiri t\u00f5mbama, seega otsustan selle siin teha.<\/p>\n<p>See aga ei t\u00e4henda, et ma oleksin selle arutamise l\u00f5petanud. Kavatsen tulevastes pottides naasta keerukamate teemade juurde, mis on seotud mallide loomisega.<\/p>\n<p>Kui olete aga huvitatud, soovitan tungivalt j\u00e4rgida nii Timberi <a href=\"https:\/\/timber.github.io\/docs\/getting-started\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Getting tartedi<\/a> juhendit kui ka <a href=\"https:\/\/github.com\/timber\/timber\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">GitHubi<\/a> projekti .<\/p>\n<p>See annab teile v\u00e4hemalt l\u00e4htepunkti, millest alates saate veelgi rohkem edasi liikuda, et luua puhtam ja loogilisemalt eraldiseisev kood, kui oleme harjunud WordPressis n\u00e4gema.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Mootori (nt Timber) kasutamine v\u00f5ib aidata WordPressi mallides probleeme eraldada. Siin on n\u00e4ide, kuidas alustada.<\/p>\n","protected":false},"author":1,"featured_media":165382,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[894,842,926,863],"tags":[1165],"class_list":["post-229500","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-kood","category-opetused","category-teemasid","category-wordpress-4","tag-affiai-et"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts\/229500","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/comments?post=229500"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts\/229500\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/media\/165382"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/media?parent=229500"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/categories?post=229500"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/tags?post=229500"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}