English | العربية | বাংলা | Bosanski | Deutsch | Español | Français | हिन्दी | Italiano | 日本語 | 한국어 | मराठी | Português | Русский | Kiswahili | தமிழ் | తెలుగు | Türkçe | اردو | Tiếng Việt | 中文
# Onyo la Tafsiri
Hati hii imetafsiriwa kiotomatiki. Ikiwa kuna makosa ya tafsiri tafadhali fungua
pull request kwenye
mradi na ongeza faili iliyotafsiriwa kwenye docs/{ISO 639-1 Code}.md
.
MJML ni lugha ya alama iliyoundwa mahsusi ili kurahisisha mchakato wa kuandika barua pepe zinazojibika. Sintaksia yake ya kisemantiki inahakikisha urahisi na unyenyekevu, wakati maktaba yake kubwa ya vipengele vya kawaida inaharakisha maendeleo na kupunguza ugumu wa msimbo wa barua pepe yako. Injini ya MJML ya chanzo wazi huzalisha HTML ya ubora wa juu, inayojibika ambayo inazingatia mbinu bora. Ikiwa umewahi kukutana na changamoto za kufanya kazi na Outlook, kifurushi hiki kimeundwa kwa ajili yako.
Utekelezaji wetu wa MJML unatumika kama kifuniko kwa API rasmi ya MJML. Inaruhusu uundaji rahisi wa MJML kuwa HTML moja kwa moja ndani ya PHP, bila hitaji la NodeJS. Kifurushi hiki ni bora kwa programu za PHP ambazo zinataka kujumuisha MJML bila usumbufu wa kusakinisha NodeJS na MJML CLI.
// Bila Laravel(new MJML)->render( '<mjml><mj-body><mj-section><mj-column><mj-text>Hello World</mj-text></mj-column></mj-section></mj-body></mjml>'); // HTML iliyopunguzwa(new MJML)->minify()->render( '<mjml><mj-body><mj-section><mj-column><mj-text>Hello World</mj-text></mj-column></mj-section></mj-body></mjml>'); // Na LaravelMJML::render( '<mjml><mj-body><mj-section><mj-column><mj-text>Hello World</mj-text></mj-column></mj-section></mj-body></mjml>'); // Na Laravel na HTML iliyopunguzwaMJML::minify()->render( '<mjml><mj-body><mj-section><mj-column><mj-text>Hello World</mj-text></mj-column></mj-section></mj-body></mjml>');
Kwanza ongeza yafuatayo kwenye faili lako la composer.json
ili kuagiza kifurushi chetu kuvuta binaries sahihi kwa mfumo wako wa uendeshaji wakati kifurushi chetu kinapowekwa. Binaries zitapakuliwa baada ya kuendesha install
, update
, au dump-autoload
.
{ "post-autoload-dump": ["DefectiveCode\\MJML\\PullBinary::all"]}
Binary ya MJML itapatikana kutoka kwa CDN yetu na kuhifadhiwa kwenye folda ya "bin" ya kifurushi hiki wakati wa ufungaji au sasisho la composer. Hakikisha kuwa una binaries zinazohitajika kwa mazingira yako ya ndani na ya uzalishaji.
Kwa default, all
itavuta binaries zote tunazounga mkono. Tunapendekeza kupunguza hii kwa mifumo ya uendeshaji na usanifu unaohitaji ili kuokoa bandwidth na nyakati za ufungaji. Zifuatazo ni binaries zinazopatikana.
Mfumo wa Uendeshaji | Usanifu | Amri ya Sasisho la Composer |
---|---|---|
Zote | Zote | DefectiveCode\MJML\PullBinary::all |
Darwin (MacOS) | arm64 | DefectiveCode\MJML\PullBinary::darwin-arm64 |
Darwin (MacOS) | x64 | DefectiveCode\MJML\PullBinary::darwin-x64 |
Linux | arm64 | DefectiveCode\MJML\PullBinary::linux-arm64 |
Linux | x64 | DefectiveCode\MJML\PullBinary::linux-x64 |
Kisha, weka kifurushi cha PHP kwa kuendesha amri ifuatayo ya composer:
composer require defectivecode/mjml
Hiyo ndiyo yote! Ikiwa unatumia Laravel, kifurushi chetu kitawekwa kiotomatiki kwa kutumia ugunduzi wa kifurushi cha Laravel.
Tazama matumizi na Laravel hapa chini ikiwa unatumia Laravel.
Ili kutoa MJML, pitisha tu kamba yako ya MJML kwa njia ya render
:
use DefectiveCode\MJML; $html = (new MJML)->render( '<mjml><mj-body><mj-section><mj-column><mj-text>Hello World</mj-text></mj-column></mj-section></mj-body></mjml>');
Ili kuhakiki MJML, pitisha tu kamba yako ya MJML kwa njia ya isValid
:
use DefectiveCode\MJML; $isValid = (new MJML)->isValid( '<mjml><mj-body><mj-section><mj-column><mj-text>Hello World</mj-text></mj-column></mj-section></mj-body></mjml>');
# Matumizi (Na Laravel) ## Utoaji wa MJML Ili kutoa MJML, pokea tu kamba yako ya MJML kwa `render` kwenye MJML facade: ```phpuse DefectiveCode\MJML\Facades\MJML; $html = MJML::render( '<mjml><mj-body><mj-section><mj-column><mj-text>Hello World</mj-text></mj-column></mj-section></mj-body></mjml>');
Ili kuthibitisha MJML, pokea tu kamba yako ya MJML kwa njia ya isValid
kwenye MJML facade:
use DefectiveCode\MJML\Facades\MJML; $isValid = MJML::isValid( '<mjml><mj-body><mj-section><mj-column><mj-text>Hello World</mj-text></mj-column></mj-section></mj-body></mjml>');
Unaweza kuchapisha faili ya usanidi kwa kutumia amri ifuatayo:
php artisan vendor:publish --provider="DefectiveCode\MJML\MJMLServiceProvider"
Hii itaunda faili ya usanidi ya mjml.php
kwenye folda yako ya config
. Chaguzi zote zilizoorodheshwa kwenye faili ya usanidi
zinapitishwa kwa kitu cha config
unapotumia MJML facade.
# Usanidi Chaguzi zote za usanidi zinaweza kuwekwa kwa kupiga njia zifuatazo moja kwa moja kwenye kitu cha MJML. ```phpuse DefectiveCode\MJML; $html = (new MJML) ->setMinify(true) ->setBeautify(false) ->render( '<mjml><mj-body><mj-section><mj-column><mj-text>Hello World</mj-text></mj-column></mj-section></mj-body></mjml>' );
Kifurushi chetu kinafuata usanidi sawa na kifurushi rasmi cha MJML isipokuwa kwa yafuatayo:
preprocessors
- Chaguo hili halipatikani. Tafadhali fungua ombi la kuvuta ikiwa ungependa kuongeza chaguo hili.minifyOptions
- Tunatumia html-minifier-terser
wakati kifurushi rasmi kinatumia html-minifier
kwa minification. Tuliamua kubadilisha processor kwa sababu html-minifier
haidumishwi tena na ina masuala kadhaa ya usalama yanayohusiana nayo.Kifurushi chetu kinatumia fonti zifuatazo kwa chaguo-msingi:
Unaweza kubadilisha fonti kwa kutumia njia zifuatazo:
addFont(string $font, string $url)
- Ongeza fonti kwenye orodha ya fonti.removeFont(string$font)
- Ondoa fonti kutoka kwenye orodha ya fonti.setFonts(array $fonts)
- Weka orodha ya fonti. Unapaswa kutoa safu ya fonti katika
muundo huu: ['font-name' => 'font-url']
.Maoni yanahifadhiwa kwa chaguo-msingi. Ikiwa unataka kuondoa maoni, unaweza kutumia njia ya removeComments()
.
Unaweza pia kurudisha removeComments()
kwa kupiga njia ya keepComments()
.
Kwa chaguo-msingi, kifurushi chetu kitajumuisha vitambulisho vyovyote vya mj-include
. Unaweza kurekebisha tabia hii kwa kupiga njia ya ignoreIncludes(bool $ignore)
.
Kifurushi chetu kitapendezesha HTML kwa kutumia js-beautify
na chaguzi zifuatazo za chaguo-msingi:
Wakati
js-beautify
inatumia snake_case kutoa chaguzi, unapaswa kutumia camelCase wakati unatumia kifurushi chetu. Tulifanya chaguo hili ili kuweka kifurushi chetu kiwe thabiti na chaguzi zingine za usanidi. Kifurushi chetu kitabadilisha kiotomatiki chaguzi za camelCase kuwa snake_case.
Unaweza kubadilisha chaguzi zozote kati ya hizi kwa kutoa usanidi halali wa js-beautify
kwa kutumia njia zifuatazo:
setBeautifyOptions(array $options)
- Weka chaguzi za js-beautify
.addBeautifyOption(string $option, mixed $value)
- Ongeza chaguo la js-beautify
.removeBeautifyOption(string $option)
- Ondoa chaguo la js-beautify
.Kifurushi chetu kitaminify HTML kwa kutumia html-minifier-terser
na chaguzi zifuatazo za chaguo-msingi:
Unaweza kubadilisha chaguzi zozote kati ya hizi kwa kutoa usanidi halali wa html-minifier-terser
kwa kutumia njia zifuatazo:
setMinifyOptions(array $options)
- Weka chaguzi za html-minifier-terser
.addMinifyOption(string $option, mixed $value)
- Ongeza chaguo la html-minifier-terser
.removeMinifyOption(string $option)
- Ondoa chaguo la html-minifier-terser
.Kifurushi chetu kitathibitisha MJML kwa kutumia kiwango cha uthibitishaji soft
kwa chaguo-msingi. Unaweza kubadilisha hili kwa kutumia njia ya validationLevel(ValidationLevel $validationLevel)
. Viwango vifuatavyo vya uthibitishaji vinapatikana:
strict
- Hati yako inapitia uthibitishaji na haitolewi ikiwa ina kosa lolotesoft
- Hati yako inapitia uthibitishaji na inatolewa, hata kama ina makosaskip
- Hati yako inatolewa bila kupitia uthibitishaji.Kifurushi chetu kitatumia saraka ya .
kwa chaguo-msingi. Unaweza kubadilisha hili kwa kupiga njia ya filePath(string $path)
.
Hatupeani chaguzi zozote za juice kwa chaguo-msingi. Unaweza kuongeza chaguzi za juice kwa kutumia njia zifuatazo:
setJuiceOptions(array $options)
- Weka chaguzi za juice.addJuiceOption(string $option, mixed $value)
- Ongeza chaguo la juice.removeJuiceOption(string $option)
- Ondoa chaguo la juice.setJuicePreserveTags(array $tags)
- Weka vitambulisho vya kuhifadhi juice.addJuicePreserveTag(string $tag, mixed $value)
- Ongeza kitambulisho cha kuhifadhi juice.removeJuicePreserveTag(string $tag)
- Ondoa kitambulisho cha kuhifadhi juice.# Miongozo ya Usaidizi Asante kwa kuchagua kifurushi chetu cha chanzo huria! Tafadhali chukua muda kidogo kuangalia miongozo hii ya usaidizi. Itakusaidia kupata zaidi kutoka kwa mradi wetu. ## Usaidizi Unaotokana na Jamii Mradi wetu wa chanzo huria unachochewa na jamii yetu nzuri. Ikiwa una maswali au unahitaji msaada, StackOverflow na rasilimali zingine za mtandaoni ni chaguo bora. ## Hitilafu, na Kipaumbele cha Vipengele Ukweli wa kusimamia mradi wa chanzo huria unamaanisha hatuwezi kushughulikia kila hitilafu iliyoripotiwa au ombi la kipengele mara moja. Tunapa kipaumbele masuala kwa mpangilio ufuatao: ### 1. Hitilafu Zinazoathiri Bidhaa Zetu za Malipo Hitilafu zinazoathiri bidhaa zetu za malipo zitakuwa kipaumbele chetu cha juu kila wakati. Katika baadhi ya matukio, tunaweza kushughulikia tu hitilafu zinazotuathiri moja kwa moja. ### 2. Maombi ya Kuvuta ya Jamii Ikiwa umebaini hitilafu na una suluhisho, tafadhali wasilisha ombi la kuvuta. Baada ya masuala yanayoathiri bidhaa zetu, tunatoa kipaumbele cha juu kwa marekebisho haya yanayotokana na jamii. Baada ya kukaguliwa na kuidhinishwa, tutaunganisha suluhisho lako na kukupa sifa kwa mchango wako. ### 3. Msaada wa Kifedha Kwa masuala nje ya makundi yaliyotajwa, unaweza kuchagua kufadhili utatuzi wake. Kila suala lililofunguliwa linaunganishwa na fomu ya agizo ambapo unaweza kuchangia kifedha. Tunapa kipaumbele masuala haya kulingana na kiasi cha fedha kilichotolewa. ### Michango ya Jamii Chanzo huria kinastawi wakati jamii yake inafanya kazi. Hata kama hurekebishi hitilafu, fikiria kuchangia kupitia maboresho ya msimbo, masasisho ya nyaraka, mafunzo, au kwa kusaidia wengine katika njia za jamii. Tunahimiza sana kila mtu, kama jamii, kusaidia kazi ya chanzo huria. _Kurudia, DefectiveCode itapa kipaumbele hitilafu kulingana na jinsi zinavyoathiri bidhaa zetu za malipo, maombi ya kuvuta ya jamii, na msaada wa kifedha uliopokelewa kwa masuala._
# Leseni - Leseni ya MIT
Haki miliki © Defective Code, LLC. Haki zote zimehifadhiwa
Ruhusa inatolewa hapa, bila malipo, kwa mtu yeyote anayepata nakala ya programu hii na faili za nyaraka zinazohusiana (hapa "Programu"), kushughulikia Programu bila kizuizi, ikiwa ni pamoja na bila kikomo haki za kutumia, kunakili, kurekebisha, kuunganisha, kuchapisha, kusambaza, kutoa leseni ndogo, na/au kuuza nakala za Programu, na kuruhusu watu ambao Programu inatolewa kwao kufanya hivyo, kwa masharti yafuatayo:
Ilani ya haki miliki hapo juu na ruhusa hii itajumuishwa katika nakala zote au sehemu kubwa za Programu.
PROGRAMU INATOLEWA "KAMA ILIVYO", BILA DHAMANA YA AINA YOYOTE, IKIWA IMEELEZWA AU KUDOKEZWA, IKIWA NI PAMOJA NA BILA KIKOMO DHAMANA ZA KUUZIKA, USTAHIKI KWA KUSUDI FULANI NA KUTOKUKIUKA. KWA HALI YOYOTE WAANDISHI AU WENYE HAKI MILIKI HAWATAWAJIBIKA KWA DAI LOLOTE, UHARIBIFU AU DHIMA NYINGINE, IKIWA KATIKA MKATABA, KOSA AU VINGINEVYO, INAYOTOKEA KUTOKANA NA, KUTOKA KWA AU KATIKA UHUSIANO NA PROGRAMU AU MATUMIZI AU MAMBO MENGINE KATIKA PROGRAMU.