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

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

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

Feb 19, 2025 am 11:13 AM

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

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

>

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

鍵突出顯示:

Themosis是一個(gè)新穎的項(xiàng)目,設(shè)計(jì)為WordPress開發(fā)人員的框架,旨在簡(jiǎn)化開發(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)目,自動(dòng)合併了最新的WordPress版本。 標(biāo)準(zhǔn)的WordPress安裝腳本完成了設(shè)置。
  • > themis病仍處?kù)对缙陔A段(待定版1.0版)。儘管年輕,但即使在WordPress核心的限制內(nèi),它也表現(xiàn)出了在PHP生態(tài)系統(tǒng)中促進(jìn)更好的設(shè)計(jì)實(shí)踐的前景。
  • 理解themisosion

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

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

>

從本質(zhì)上講,Themosis是一種由MVC驅(qū)動(dòng)的,啟發(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命令行工具。 用作曲家自動(dòng)創(chuàng)建一個(gè)Themosis項(xiàng)目,包括最新的WordPress版本;標(biāo)準(zhǔn)WordPress安裝腳本最終確定了設(shè)置。 請(qǐng)參閱官方安裝說(shuō)明,或者首先對(duì)示例項(xiàng)目進(jìn)行實(shí)驗(yàn)(下面詳細(xì)介紹)。

>

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

>

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

測(cè)試書店應(yīng)用

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

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

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

@endloop

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

克隆存儲(chǔ)庫(kù)(

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

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

設(shè)置非??焖伲苯?。

    的性能非??欤紤]到themisos的額外層訪問(wèn)WordPress API。
  1. 代碼考試

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

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

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

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

>

>代碼包含現(xiàn)代實(shí)踐(名稱空間,類,綜合文檔)時(shí),仍然存在較小的過(guò)時(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)使用可比的語(yǔ)法。控制器與視圖分開,並且控制器使用模型,將數(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符號(hào)進(jìn)行遍歷(例如,

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

參數(shù)路由

路由很簡(jiǎn)單。 例如,搜索頁(yè)面直接使用WordPress的搜索功能:

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

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

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

    添加一條路由到
  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,我們必須將頁(yè)面添加到系統(tǒng)中。
Route::only('page', 'test', 'test@index');

/test

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

> First Look at Themosis, a Framework for WordPress Developers

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

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

修改控制器:

$post

和視圖:

@include('header')

Hello World

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

<?php

class Test_Controller{

    public function index(){

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

    }

}

>有些複雜,但呈現(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)。 > >儘管仍處?kù)对缙陔A段(0.8版),但它是一個(gè)有前途的項(xiàng)目。 採(cǎi)用良好的設(shè)計(jì)實(shí)踐對(duì)PHP社區(qū)至關(guān)重要,即使在WordPress的核心局限性範(fàn)圍內(nèi),Themisos也提供了有價(jià)值的貢獻(xiàn)。

> (由於長(zhǎng)度約束而省略了常見(jiàn)問(wèn)題部分,但可以輕鬆解釋並與其他文本相似。)

以上是首先查看Themosis,這是WordPress開發(fā)人員的框架的詳細(xì)內(nèi)容。更多資訊請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

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

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

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

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

SublimeText3 Mac版

SublimeText3 Mac版

神級(jí)程式碼編輯軟體(SublimeText3)

熱門話題

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

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

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

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

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

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

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

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

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

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

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

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

如何爭(zhēng)取古騰堡大塊的資產(chǎn) 如何爭(zhēng)取古騰堡大塊的資產(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或插件中通過(guò)wp_register_script和wp_register_style註冊(cè)資源,並設(shè)置正確的依賴和版本;3.配置構(gòu)建工具輸出合適的模塊格式,並確保路徑一致;4.通過(guò)add_theme_support或enqueue_block_assets控制前端樣式的加載邏輯,確保

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

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

See all articles