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

目錄
先決條件
利用現(xiàn)有資源
項(xiàng)目階段:
階段1:設(shè)置WordPress和Gatsby
安裝必需插件
蓋茨比站點(diǎn)初始化
階段2:遷移WordPress內(nèi)容
內(nèi)容準(zhǔn)備
模板創(chuàng)建
createPages API實(shí)現(xiàn)
第三階段:實(shí)施導(dǎo)航
WordPress中的菜單創(chuàng)建
GraphQl查詢
組件創(chuàng)建
集成菜單
第4階段:顯示博客文章
全局變量
博客模板
發(fā)布輸入組件
圖像組件
分頁部分
第5階段:樣式和部署
造型
部署
首頁 web前端 css教程 使用WordPress數(shù)據(jù)創(chuàng)建蓋茨比網(wǎng)站

使用WordPress數(shù)據(jù)創(chuàng)建蓋茨比網(wǎng)站

Apr 04, 2025 am 10:30 AM

使用WordPress數(shù)據(jù)創(chuàng)建蓋茨比網(wǎng)站

本教程建立在上一篇文章的基礎(chǔ)上,提供了整合蓋茨比和WordPress的詳細(xì)演練。蓋茨比(Gatsby)的速度和安全利益吸引了WordPress用戶,提供了一種利用這些優(yōu)勢的方法,同時保留熟悉的WordPress內(nèi)容管理經(jīng)驗(yàn)。

本指南側(cè)重于實(shí)際實(shí)施,從各種資源中汲取利用并應(yīng)對潛在的挑戰(zhàn)。請注意,WPGRAPHQL和GATSBY CLI是積極開發(fā)的,這意味著版本的兼容性至關(guān)重要。該項(xiàng)目利用WPGRAPHQL 0.8.3, gatsby-source-wpgraphql 2.5.1和GATSBY CLI 2.12.21。始終請參閱官方文檔以獲取最新更新。

有幾個出色的蓋茨比起步劑,包括亞歷山大·斯帕拉托(Alexandra Spalato)的gatsby-wordpress-theme-blog ,扎克·戈登(Zac Gordon)和穆罕默德·穆辛(Muhammad Muhsin)的twenty-nineteen-gatsby-theme 。

先決條件

跟隨,您需要:

  • 基本的反應(yīng)和JavaScript知識。許多在線資源提供介紹性指南。
  • 掌握了蓋茨比動態(tài)頁面創(chuàng)建機(jī)制。全面的教程很容易獲得。
  • 一個工作的WordPress安裝。有很多指南可以協(xié)助設(shè)置。

利用現(xiàn)有資源

該項(xiàng)目受益于先前的蓋茨比經(jīng)驗(yàn)和可重復(fù)使用的組件(版式,布局等)。包括關(guān)鍵資源:

  • 亨里克·沃思(Henrik Wirth)的綜合蓋茨比WordPress入門指南。
  • 杰森·倫斯托夫(Jason Lenstorf)的jamstack遷移教程。
  • 穆罕默德·穆辛(Muhammad Muhsin)的指南關(guān)于載入二十個主題的指南。

該教程反映了Henrik Wirth的結(jié)構(gòu),省略了諸如圖像處理和ACF柔性內(nèi)容之類的高級功能。

項(xiàng)目階段:

  1. WordPress和Gatsby設(shè)置
  2. 內(nèi)容遷移
  3. 導(dǎo)航實(shí)施
  4. 博客文章顯示
  5. 樣式和部署

階段1:設(shè)置WordPress和Gatsby

首先建立一個WordPress站點(diǎn)(現(xiàn)有或新的,甚至是本地安裝)開始。該項(xiàng)目使用二十個主題。

安裝必需插件

安裝WPGRAPHQL(對于GraphQL API)和WPGRAPHIQL(可選,但有助于測試查詢)。這些插件可能在WordPress插件目錄中不可用;直接從github下載并手動安裝。 WPGRAPHIQL在WordPress儀表板中提供了方便的測試接口。

蓋茨比站點(diǎn)初始化

使用默認(rèn)啟動器創(chuàng)建本地蓋茨比網(wǎng)站:

蓋茨比新的wordpress-gatsby https://github.com/gatsbyjs/gatsby-starter-default

啟動開發(fā)服務(wù)器( gatsby develop ),然后訪問localhost:8000的入門頁面。

安裝并配置gatsby-source-graphql插件插件:

紗線添加gatsby-source-graphql?;騨pm安裝-Save gatsby-source-raphql

配置gatsby-config.js

 Module.exports = {
  插件:[
    {
      決心:“蓋茨比 - 蘇格拉夫Ql”,
      選項(xiàng): {
        鍵入:“ wpgraphql”,
        fieldname:“ wpcontent”,
        URL:“ https://tinjurewp.com/wp-gatsby/graphql”,//或使用環(huán)境變量
      },,
    },,
  ],,
};

考慮使用dotenv模塊進(jìn)行環(huán)境變量來管理敏感數(shù)據(jù)。

重新啟動服務(wù)器后,可以通過https://localhost:8000/__graphql/訪問WPGRAPHQL API。

階段2:遷移WordPress內(nèi)容

Gatsby通過使用GraphQl查詢數(shù)據(jù)在構(gòu)建過程中創(chuàng)建頁面。這涉及使用Gatsby的onCreateNodecreatePages API。

內(nèi)容準(zhǔn)備

將帖子和頁面添加到您的WordPress網(wǎng)站。從Gatsby pages文件夾中刪除index.jspage-2.js以避免沖突。

模板創(chuàng)建

為帖子( /src/templates/post/index.js )創(chuàng)建模板和頁面( /src/templates/page/index.js ):

 // src/templates/post/index.js(示例)
從“反應(yīng)”中導(dǎo)入反應(yīng);
從“ ../../../components/layout”導(dǎo)入布局;
從“ ../.././components/seo”導(dǎo)入SEO;

const post =({pageContext})=> {
  const post = pageContext.post;
  返回 (
    <layout>
      <seo title="{post.title}"></seo>
      <h1>{post.title}</h1>
      <div dangerouslysetinnerhtml="{{" __html: post.content></div>
    </layout>
  );
};

導(dǎo)出默認(rèn)帖子;

createPages API實(shí)現(xiàn)

使用Gatsby的createPages API從WordPress數(shù)據(jù)中生成頁面。這涉及GraphQl查詢和數(shù)據(jù)映射。 (請參閱鏈接的GitHub存儲庫中的完整代碼)。

第三階段:實(shí)施導(dǎo)航

WordPress的導(dǎo)航管理允許創(chuàng)建菜單。本節(jié)重點(diǎn)是將主要菜單移植到Gatsby。

WordPress中的菜單創(chuàng)建

在WordPress中創(chuàng)建一個名為“主”的菜單,將鏈接添加到主頁,示例頁面和其他相關(guān)內(nèi)容。

GraphQl查詢

查詢菜單項(xiàng)使用GraphiQl:

查詢myquery {
  menuitems(其中:{位置:primary}){
    節(jié)點(diǎn){
      標(biāo)簽
      URL
      標(biāo)題
      目標(biāo)
    }
  }
}

組件創(chuàng)建

創(chuàng)建菜單項(xiàng)( MenuItem.js )和菜單本身( Menu.js )的組件,處理從絕對路徑到相對路徑的URL轉(zhuǎn)換。 (請參閱鏈接的GitHub存儲庫中的完整代碼)。

集成菜單

Menu組件添加到Layout組件中。實(shí)施一個UniversalLink組件來處理內(nèi)部和外部鏈接。

第4階段:顯示博客文章

該階段著重于創(chuàng)建博客文章模板和分頁的組件。

全局變量

創(chuàng)建一個globals.js文件以管理blogURI之類的設(shè)置。

博客模板

創(chuàng)建一個博客模板( /src/templates/post/blog.js )以顯示帖子,利用PostEntryPagination組件。

發(fā)布輸入組件

創(chuàng)建一個PostEntry部件以顯示單個帖子,包括特色圖像和摘錄。

圖像組件

創(chuàng)建一個Image組件來處理特色圖像,包括后備圖像。

分頁部分

創(chuàng)建一個Pagination組件,用于通過分頁的帖子導(dǎo)航。

重構(gòu)createPagescreatePosts

rebactor createPages.jscreatePosts.js使用GraphQl片段來改善代碼組織和可維護(hù)性。 (請參閱鏈接的GitHub存儲庫中的完整代碼)。

第5階段:樣式和部署

本節(jié)涵蓋了樣式和部署策略。

造型

使用SASS或其他首選方法進(jìn)行樣式??紤]使用@wordpress/block-library合并WordPress塊樣式。

部署

利用NetLify或其他平臺進(jìn)行連續(xù)部署。考慮使用jamstack部署插件進(jìn)行由WordPress更改觸發(fā)的自動部署。

該綜合指南為整合蓋茨比和WordPress提供了堅(jiān)實(shí)的基礎(chǔ)。請記住,請咨詢鏈接的GitHub存儲庫以獲取完整的代碼示例和更多詳細(xì)信息。該過程涉及多個步驟,需要對Gatsby和WordPress有很好的了解。但是,結(jié)果是一個快速,安全且可維護(hù)的網(wǎng)站。

以上是使用WordPress數(shù)據(jù)創(chuàng)建蓋茨比網(wǎng)站的詳細(xì)內(nèi)容。更多信息請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機(jī)

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強(qiáng)大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

如何僅在某些頁面上包括CSS? 如何僅在某些頁面上包括CSS? Jun 11, 2025 am 12:01 AM

選擇性包含CSS在特定頁面上的方法有三種:1.內(nèi)聯(lián)CSS,適用于不常訪問或需要獨(dú)特樣式的頁面;2.使用JavaScript條件加載外部CSS文件,適合需要靈活性的情況;3.服務(wù)器端包含,適用于使用服務(wù)器端語言的場景。這種方法可以優(yōu)化網(wǎng)站性能和可維護(hù)性,但需平衡模塊化與性能。

Flexbox與網(wǎng)格:了解CSS布局的關(guān)鍵差異 Flexbox與網(wǎng)格:了解CSS布局的關(guān)鍵差異 Jun 10, 2025 am 12:03 AM

flexboxisidealforone-dimensionAllayouts,while gridsuitStwo,complex layouts.useflexboxforaligningItemsinasingLeaxisAndGridForRidForPreciseconcontroloverroverroverroverroverroverroverrowsandsininintricatientricatedesigns。

使用HTML彈出案創(chuàng)建自動關(guān)閉通知 使用HTML彈出案創(chuàng)建自動關(guān)閉通知 Jun 10, 2025 am 09:45 AM

HTML彈出屬性將元素轉(zhuǎn)換為頂層元素,可以使用按鈕或JavaScript打開和關(guān)閉。可以將彈出案駁回多種方式,但是沒有選擇自動關(guān)閉它們。 preethi有一種技術(shù),你可以

什么是'渲染障礙CSS”? 什么是'渲染障礙CSS”? Jun 24, 2025 am 12:42 AM

CSS會阻塞頁面渲染是因?yàn)闉g覽器默認(rèn)將內(nèi)聯(lián)和外部CSS視為關(guān)鍵資源,尤其是使用引入的樣式表、頭部大量內(nèi)聯(lián)CSS以及未優(yōu)化的媒體查詢樣式。1.提取關(guān)鍵CSS并內(nèi)嵌至HTML;2.延遲加載非關(guān)鍵CSS通過JavaScript;3.使用media屬性優(yōu)化加載如打印樣式;4.壓縮合并CSS減少請求。建議使用工具提取關(guān)鍵CSS,結(jié)合rel="preload"異步加載,合理使用media延遲加載,避免過度拆分與復(fù)雜腳本控制。

如何在無花果中使用Lotties 如何在無花果中使用Lotties Jun 14, 2025 am 10:17 AM

在接下來的教程中,我將向您展示如何在無花果中創(chuàng)建Lottie動畫。我們將使用兩種彩色設(shè)計(jì)來超越如何在無花果上進(jìn)行動畫,然后向您展示如何從Figma到Lottie動畫。您只需要免費(fèi)無花果

打破邊界:用(s)CSS構(gòu)建湯姆拼圖 打破邊界:用(s)CSS構(gòu)建湯姆拼圖 Jun 13, 2025 am 11:33 AM

我們對其進(jìn)行了測試,事實(shí)證明,至少在低級邏輯和拼圖行為時,Sass可以替換JavaScript。除了地圖,混音,功能和大量數(shù)學(xué)外,我們都設(shè)法使我們的Tangram難題栩栩如生,沒有J

外部與內(nèi)部CSS:最好的方法是什么? 外部與內(nèi)部CSS:最好的方法是什么? Jun 20, 2025 am 12:45 AM

thebestapphachforcssdepprodsontheproject'sspefificneeds.forlargerprojects,externalcsSissBetterDuoSmaintoMaintainability andReusability; forsMallerProjectsorsingle-pageApplications,InternaltCsmightBemoresobleable.InternalCsmightBemorese.it.it'sclucialtobalancepopryseceneceenceprodrenceprodrenceNeed

我的CSS必須在較低的情況下嗎? 我的CSS必須在較低的情況下嗎? Jun 19, 2025 am 12:29 AM

否,CSSDOESNOTHAVETOBEINLOWERCASE.CHOMENDENS,使用flowercaseisrecommondendendending:1)一致性和可讀性,2)避免使用促進(jìn)性技術(shù),3)潛在的Performent FormanceBenefits,以及4)RightCollaboraboraboraboraboraboraboraboraboraboraboraboraboraboraboraboraborationWithInteams。

See all articles