亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

首頁 CMS教程 &#&按 首先查看Themosis,這是WordPress開發(fā)人員的框架

首先查看Themosis,這是WordPress開發(fā)人員的框架

Feb 19, 2025 am 11:13 AM

themisos:一種現(xiàn)代的WordPress開發(fā)方法

>我對WordPress糾結(jié)的代碼庫的鄙視是眾所周知的。我建議不要使用它,除非您在技術(shù)上熟練。但是,我的批評源于人們對改進(jìn)的渴望,希望將出現(xiàn)出色的替代方案,并提供更合乎邏輯,更有效的發(fā)展過程。 在我看來,任何簡化WordPress的嘗試都是積極的一步。

>

最近,一個(gè)名為Themosis的項(xiàng)目浮出水面,被稱為“ WordPress開發(fā)人員的框架”。本文探討了它的病,其用法,并檢查了其示例項(xiàng)目 - 書店應(yīng)用程序。

鍵突出顯示:

Themosis是一個(gè)新穎的項(xiàng)目,設(shè)計(jì)為WordPress開發(fā)人員的框架,旨在簡化開發(fā)并將結(jié)構(gòu)強(qiáng)加于WordPress的混亂插件體系結(jié)構(gòu)。
    與傳統(tǒng)框架不同,它是與WordPress集成以增強(qiáng)發(fā)展的API。它使開發(fā)人員能夠使用現(xiàn)代PHP功能(名稱空間,類,匿名功能)和作曲家構(gòu)建WordPress組件。
  • >
  • > themiss的安裝依賴于作曲家和WordPress命令行工具。 作曲家創(chuàng)建了一個(gè)Interisos項(xiàng)目,自動合并了最新的WordPress版本。 標(biāo)準(zhǔn)的WordPress安裝腳本完成了設(shè)置。
  • > themis病仍處于早期階段(待定版1.0版)。盡管年輕,但即使在WordPress核心的限制內(nèi),它也表現(xiàn)出了在PHP生態(tài)系統(tǒng)中促進(jìn)更好的設(shè)計(jì)實(shí)踐的前景。
  • 。
  • 理解themisosion

>“框架”一詞可能會誤導(dǎo)PHP開發(fā)人員。 WordPress已經(jīng)包含許多不必要的組件??蚣芡ǔW袷睾喖s的原則和脫鉤的組件,并構(gòu)建了復(fù)雜的應(yīng)用程序,而不是相反。First Look at Themosis, a Framework for WordPress Developers 從傳統(tǒng)意義上講,

主題不是一個(gè)框架。這是與WordPress集成以簡化開發(fā)的API,但不一定會降低其尺寸。 Themosis提供了使用現(xiàn)代PHP創(chuàng)建WordPress組件的API,包括名稱空間,類,匿名功能和作曲家支持。

>

從本質(zhì)上講,Themosis是一種由MVC驅(qū)動的,啟發(fā)的WordPress插件,用于構(gòu)建其他插件。它包括其自己的路由器(Laravel風(fēng)格的路線定義)和模板引擎(SCOUT),類似于Laravel和Phalcon,并增加了WordPress支持。 例如,模板循環(huán):

>利用WordPress API進(jìn)行數(shù)據(jù)檢索,并且

類是專門為WordPress內(nèi)容循環(huán)設(shè)計(jì)的。
@loop(array('post_type' => 'post', 'posts_per_page' => -1))

    <h1>{{ Loop::title() }}</h1>
    <div>
        {{ Loop::content() }}
    </div>

@endloop

安裝Loop

> themissis安裝涉及作曲家和WordPress命令行工具。 用作曲家自動創(chuàng)建一個(gè)Themosis項(xiàng)目,包括最新的WordPress版本;標(biāo)準(zhǔn)WordPress安裝腳本最終確定了設(shè)置。 請參閱官方安裝說明,或者首先對示例項(xiàng)目進(jìn)行實(shí)驗(yàn)(下面詳細(xì)介紹)。

>

>示例項(xiàng)目:書店應(yīng)用

>

Themosis提供了一個(gè)書店應(yīng)用程序示例。

測試書店應(yīng)用

進(jìn)行測試,您可以改進(jìn)宅基地。注冊一個(gè)新網(wǎng)站:

@loop(array('post_type' => 'post', 'posts_per_page' => -1))

    <h1>{{ Loop::title() }}</h1>
    <div>
        {{ Loop::content() }}
    </div>

@endloop

請記住將bookstore.local添加到主機(jī)的/etc/hosts文件中(按照宅基地改進(jìn)的說明)。

克隆存儲庫(

),然后訪問git clone http://ipnx.cn/link/7101e4daaff4511510bbd4e6a0862fb7 themosis_example>的安裝過程。 按照說明進(jìn)行操作。 此設(shè)置允許實(shí)驗(yàn)沒有風(fēng)險(xiǎn) - 簡單地重建VM以恢復(fù)任何更改。 http://bookstore.local:8000

First Look at Themosis, a Framework for WordPress Developers 雖然初始外觀不是開創(chuàng)性的(任何WordPress網(wǎng)站都可以采用類似的配置),但兩個(gè)關(guān)鍵觀察值脫穎而出:>

設(shè)置非??焖?,直接。

    的性能非???,考慮到themisos的額外層訪問WordPress API。
  1. 代碼考試

書店的代碼位于github上:。 由于themisis是一個(gè)插件,因此書店的代碼位于其插件目錄中:>

存在三個(gè)主要子文件夾:

(themosis驅(qū)動的wordpress邏輯),

(themosis源代碼 - 與其他框架相關(guān))和First Look at Themosis, a Framework for WordPress Developers (作曲家依賴關(guān)系)。

>

>代碼包含現(xiàn)代實(shí)踐(名稱空間,類,綜合文檔)時(shí),仍然存在較小的過時(shí)元素(例如,app,關(guān)閉PHP標(biāo)簽)。 src> Themosis代碼分布在兩個(gè)位置:路由和演示文稿位于主題中,而應(yīng)用程序邏輯則位于插件文件夾中。vendor

<?php defined('DS') or die('No direct script access.');

MVC結(jié)構(gòu)

盡管可以改進(jìn)兩個(gè)父文件夾的碎片,但MVC結(jié)構(gòu)的定義很好。

文件夾(類似于Laravel)使用可比的語法。控制器與視圖分開,并且控制器使用模型,將數(shù)據(jù)傳遞給視圖。 routes>的示例:home.controller.php

@loop(array('post_type' => 'post', 'posts_per_page' => -1))

    <h1>{{ Loop::title() }}</h1>
    <div>
        {{ Loop::content() }}
    </div>

@endloop
>視圖使用dot符號進(jìn)行遍歷(例如,

映射到pages.home>)。app/views/pages/home.scout.php>

參數(shù)路由

路由很簡單。 例如,搜索頁面直接使用WordPress的搜索功能:

- map: bookstore.local
      to: /home/vagrant/Code/themosis_example
這種方法抽象WordPress固有缺陷的搜索功能,促進(jìn)更容易的替換。

創(chuàng)建一個(gè)自定義頁面

>讓我們使用控制器和視圖創(chuàng)建一個(gè)自定義頁面。

    添加一條路由到
  1. routes.php
return View::make('pages.home')->with(array(

            'promo'     => Books::getPromoBook($this->page),
            'books'     => Books::getPopularBooks($this->bookId),
            'news'      => News::get(),
            'newspage'  => get_page_by_path('news')

        ));
    創(chuàng)建
  1. pages/test.scout.php
// Search page
Route::is('search', function(){
    return View::make('search', array('search' => $_GET['s']));
});
    添加一個(gè)控制器(
  1. ):controllers/Test_Controller.php
在大多數(shù)框架中,這將使“ Hello World”呈現(xiàn)“ Hello World”。但是,由于主題依賴于WordPress,我們必須將頁面添加到系統(tǒng)中。
Route::only('page', 'test', 'test@index');

/test

“ Hello World”消息在重新加載后呈現(xiàn)。

> First Look at Themosis, a Framework for WordPress Developers

要包括頁面內(nèi)容,我們需要訪問全局

變量并將其傳遞給視圖。 這突出了WordPress的全局變量依賴。First Look at Themosis, a Framework for WordPress Developers

修改控制器:

$post

和視圖:

@include('header')

Hello World

@include('footer')
>正確地渲染頁面。

<?php

class Test_Controller{

    public function index(){

        return View::make('pages.test');

    }

}

>有些復(fù)雜,但呈現(xiàn)WordPress內(nèi)容的強(qiáng)大包裝器提供了結(jié)構(gòu)和清晰度,改善了WordPress的剛性。

First Look at Themosis, a Framework for WordPress Developers

結(jié)論

> Themosis為WordPress插件開發(fā)提供了類似Laravel的體驗(yàn)。 它將急需的結(jié)構(gòu)和封裝引入WordPress的插件體系結(jié)構(gòu)。> >盡管仍處于早期階段(0.8版),但它是一個(gè)有前途的項(xiàng)目。 采用良好的設(shè)計(jì)實(shí)踐對PHP社區(qū)至關(guān)重要,即使在WordPress的核心局限性范圍內(nèi),Themisos也提供了有價(jià)值的貢獻(xiàn)。

> (由于長度約束而省略了常見問題部分,但可以輕松解釋并與其他文本相似。)

以上是首先查看Themosis,這是WordPress開發(fā)人員的框架的詳細(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)

熱門話題

Laravel 教程
1597
29
PHP教程
1488
72
如何診斷WordPress引起的高CPU使用 如何診斷WordPress引起的高CPU使用 Jul 06, 2025 am 12:08 AM

WordPress導(dǎo)致服務(wù)器CPU使用率飆升的主要原因包括插件問題、數(shù)據(jù)庫查詢效率低、主題代碼質(zhì)量差或流量激增。1.首先通過top、htop或控制面板工具確認(rèn)是否為WordPress引起的高負(fù)載;2.進(jìn)入故障排查模式逐步啟用插件排查性能瓶頸,使用QueryMonitor分析插件執(zhí)行情況并刪除或替換低效插件;3.安裝緩存插件、清理冗余數(shù)據(jù)、分析慢查詢?nèi)罩疽詢?yōu)化數(shù)據(jù)庫;4.檢查主題是否存在過度加載內(nèi)容、復(fù)雜查詢或缺乏緩存機(jī)制等問題,建議用標(biāo)準(zhǔn)主題測試對比并優(yōu)化代碼邏輯。按照上述步驟逐一排查可定位并解

如何在WordPress中縮小JavaScript文件 如何在WordPress中縮小JavaScript文件 Jul 07, 2025 am 01:11 AM

MinifyingJavaScript文件可通過刪除空白、注釋和無用代碼來提升WordPress網(wǎng)站加載速度。1.使用支持合并壓縮的緩存插件如W3TotalCache,在“Minify”選項(xiàng)中啟用并選擇壓縮模式;2.使用專用壓縮插件如FastVelocityMinify,提供更精細(xì)控制;3.手動壓縮JS文件并通過FTP上傳,適用于熟悉開發(fā)工具的用戶。注意部分主題或插件腳本可能與壓縮功能沖突,啟用后需徹底測試網(wǎng)站功能。

如何在沒有插件的情況下優(yōu)化WordPress 如何在沒有插件的情況下優(yōu)化WordPress Jul 05, 2025 am 12:01 AM

優(yōu)化WordPress站點(diǎn)不依賴插件的方法包括:1.使用輕量級主題,如Astra或GeneratePress,避免功能堆砌的主題;2.手動壓縮和合并CSS、JS文件,減少HTTP請求;3.上傳前優(yōu)化圖片,使用WebP格式并控制文件大??;4.配置.htaccess啟用瀏覽器緩存,并接入CDN提升靜態(tài)資源加載速度;5.限制文章修訂版本并定期清理數(shù)據(jù)庫冗余數(shù)據(jù)。

如何使用瞬態(tài)API進(jìn)行緩存 如何使用瞬態(tài)API進(jìn)行緩存 Jul 05, 2025 am 12:05 AM

TransientsAPI是WordPress中用于臨時(shí)存儲可自動過期數(shù)據(jù)的內(nèi)置工具,其核心函數(shù)為set_transient、get_transient和delete_transient。相比OptionsAPI,transients支持設(shè)置生存時(shí)間(TTL),適合緩存API請求結(jié)果、復(fù)雜計(jì)算數(shù)據(jù)等場景。使用時(shí)需注意key命名唯一性與命名空間、緩存“懶刪除”機(jī)制及對象緩存環(huán)境下可能不持久的問題。典型應(yīng)用場景包括減少外部請求頻率、控制代碼執(zhí)行節(jié)奏和提升頁面加載性能。

如何使用插件檢查插件 如何使用插件檢查插件 Jul 04, 2025 am 01:02 AM

PluginCheck是一個(gè)幫助WordPress用戶快速檢查插件兼容性和性能的工具,主要用來識別當(dāng)前安裝的插件是否存在與最新版本W(wǎng)ordPress不兼容、存在安全漏洞等問題。1.如何開始檢查?安裝激活后,在后臺點(diǎn)擊“RunaScan”按鈕即可自動掃描所有插件;2.報(bào)告包含插件名稱、檢測類型、問題描述及解決方案建議,便于優(yōu)先處理嚴(yán)重問題;3.建議在更新WordPress前、網(wǎng)站異常時(shí)或定期運(yùn)行檢查,提前發(fā)現(xiàn)隱患,避免未來出現(xiàn)重大問題。

如何以編程方式防止評論垃圾郵件 如何以編程方式防止評論垃圾郵件 Jul 08, 2025 am 12:04 AM

防止評論垃圾信息最有效的方式是通過程序化手段自動識別并攔截。1.使用驗(yàn)證碼機(jī)制(如GooglereCAPTCHA或hCaptcha)可有效區(qū)分人類與機(jī)器人,尤其適合公眾網(wǎng)站;2.設(shè)置隱藏字段(Honeypot技術(shù)),利用機(jī)器人自動填寫特性識別垃圾評論,不影響用戶體驗(yàn);3.檢查評論內(nèi)容關(guān)鍵詞黑名單,通過敏感詞匹配過濾垃圾信息,需注意避免誤判;4.判斷評論頻率與來源IP,限制單位時(shí)間內(nèi)的提交次數(shù)并建立黑名單;5.使用第三方反垃圾服務(wù)(如Akismet、Cloudflare)提升識別準(zhǔn)確性??筛鶕?jù)網(wǎng)站

如何爭取古騰堡大塊的資產(chǎn) 如何爭取古騰堡大塊的資產(chǎn) Jul 09, 2025 am 12:14 AM

在開發(fā)Gutenberg塊時(shí),正確enqueue資產(chǎn)的方法包括:1.使用register_block_type指定editor_script、editor_style和style的路徑;2.在functions.php或插件中通過wp_register_script和wp_register_style注冊資源,并設(shè)置正確的依賴和版本;3.配置構(gòu)建工具輸出合適的模塊格式,并確保路徑一致;4.通過add_theme_support或enqueue_block_assets控制前端樣式的加載邏輯,確保

如何向用戶添加自定義字段 如何向用戶添加自定義字段 Jul 06, 2025 am 12:18 AM

要添加自定義用戶字段需根據(jù)平臺選擇擴(kuò)展方式并注意數(shù)據(jù)驗(yàn)證與權(quán)限控制。常見做法包括:1.利用數(shù)據(jù)庫額外表或鍵值對結(jié)構(gòu)存儲信息;2.在前端加入輸入框并與后端集成;3.對敏感數(shù)據(jù)進(jìn)行格式校驗(yàn)和訪問權(quán)限限制;4.更新接口及模板以支持新字段展示與編輯,同時(shí)兼顧移動端適配和用戶體驗(yàn)。

See all articles