JFIF       %%-))-969KKd       %%-))-969KKd! f%eK_.T  v_/n6q>e}&Cx@t7OuqySN%y%tz@ Un(quo{tS]\~LzǚPk;fϛϹ2y-=_z.NWW7DW@'4`3w3rr;hP8B%ַBe]`7Ҽo1e)弆O|4Wk*}7Su[9=U 9 |_+:@}@˵u@ g<4N<@=/ I(~}qq=y- u|. y'`3S+4$e= k4P]M^_Nou*R-,X0EI}m&LtVȱa|R\@ ʟ+YeIlY`XV^HV/c-eb du ̈́_2+DpV ` ^^->t7JydE]I 8:7#j̀iiVbp~o݃[}zwGF@-(RTJY@ Ty}X 1!2AQaq"3BR`r@PSb #4CTs0DU$EFcd?Lc4\K#E1$@CV8OƂZ5g;.141;%]6e laǃpv8)80D1ŌxLgWYc+z%:( w^PtdԣV Z:qDsh W) ͷ+~FO]"բ?eN 4)WREZ;T+}]:FRtI ѱއ>'s_[\qNhK ' ^qJv9 ]ʜ1FMzwF8ѯBIp-g`?si;|Hr%>jOh29-+-gQmBH?3P9e')>[k^OaxtLiS30ҿ6*o--I$ 1 z2+OЪ+i˺,_n3(~}StUMc \xSmGD0jMB06%') #1c6s/iaIɉgC%Yoi**MHЛ=rh ĭ總 E>Jў2+ct/^$[_kAOʕicR4qm#Lw!Squ/:e%~zMBfa|e7PUC|"/)CD\cy gڰF9(?\jU+>Cwl#>x^'a7C}LYX<@X`W8P hۂx͍q֜?de1qe* NDuTm-ߣ y+pUy*9aĺ:P4n$2&BTϵ@ a>v3uc,(uF0jˊ́a~32f2=ήZe[r!F !Bu)b FŌt%41N/֑41n1|> 1^;1=IĖEpq%"{/~M.QWDdUA6~z>kPh2Oi?Uc[`+l;՚':۾ږtoZjQ7\:Z3}~ &ڮRQH{mDq0TaM5i:5sC0x<]=Mp c!C<6]~vpxeH[AmY'iԖ_~ a(Ȕ@+a< w] wbk1#aD 9. ?p$ Qؒi-8S㨸f45t:ʙѾ.{mMshU1k\z^*#It@ v:%#iSZ.{.Vemm,Z3*;HtU8E.v'e ޴ 4WwLDe)jY*R'?wM֣ b+IfO('Y J$o޼ l.蕁~ Y Em>Y^m"r^4w}2PI7R1gV\wtVT׿w'*N{ZGN8qzrM/LO~ O~|ڞ櫮o{\dV斀AJmn E#HQg$!{XM'{u* 4O)>F.";l2z3IJ2?Fh7)rjrv@ AJlУ 0`StpGD&nƒpxΡ}P늿D@cEH҆2[9a}U/biEzu)xYR>߹q (yA~ُp \U\L\6~" U'>GJOP,ko:JGI*٢C8f8굟m#GV̐Cj]}N_]aJulE.+I&y5 6*TGHZRů}efjv"\3/3_hq՝g !ir,ܐv%~*lXccyo) 拏Qp_tT3!,Dur!CH7;9GQQmE:ÑCaƅ;zeij;d+% z#e%gdI9E5BB&۟S"=C(>{֠ ɫNUळiu>;P}حW]ouBmJS0ktRtDm+$ԫU_dq)$ ʃnLGSፑf'vlzP/_]QԂ]ȗ|W\;wTSf!m,ri{w了enP(`*.1i2.}e@;HA&_N᷸1|:Gjڒj~i/֬]1(N +^ bQq:›m*o5Y(.JPV[3ޭj֭j+i(uָ]kV)A/%X Fa?8'o>ꝣKks\_k)S%zDTRw#h#e#1Euk&,Yw+Ap"PIZ*j*Ug">m>|ڇ(#FXzCi9%J'H3Xwi-9s0S`R^֮ YLJz+q^i}i1jLK+ [ NzDSq[+Q'ݖl=s<[iIWz=%}[jɁ֠$$N7IUm83SVŭw)#0$g C26^ʓW<=B>{R)&繻8j3cbbce7TE1r\'}FūLO+KʢXm/=H 6FaRHI^Lȹ83g9CM93쑑nE)=q4I$s'ݠajm]"O>L4Vb;(eHm$֫ӆyYtYYr(<Ɠ2Fm "f֒;Tξu8jZR$b!E*9 yy+V:Dm Œ9@-f*l2#ٿPt#T҂ӵ&;AȃWlf xϜZكfj%bs ,/uN{,Gz*kkP M6f/0[I;S)ml-؉)~q9v`ǣ4gZJ}h&dﺥ#{}uDa7j(I'2OҒMF7 .Ey<$5;2ժTI %)TwG54Ŭ Kb6rG;uq\[8DJ'i$?Pq-ݗs\JGkYO2%}b\9;Tk⾜3%qSd( [O4i'jQՃ &F Ҧ T2!G{N j~:Cz J3|xd(6TZ a b5gfK\I)WYARA(RVE$G8at̖qWq{B:Q^g3QzcAZrH|GMcjb{+)r=>:de:¹[QOe@>ISP1nIq!:3G).!ŶB꠲#0Eb2"Lt4ƺKCGn9P=PeoX8@fղ Gi9k ^aHAV<)GG*k_aUΜWsX4ʷ\%m,W*F}<1E/&NJIʳ:PmeRuń%A<ᶧ2s^s-9$PHw]ZB#[>9Fm*>Ut.HugK9uaAF.%fW&J~$k^S:iގT9_5`_bR`ܒ(8Fa?jMc4Pŭ!VB7 W+߀ i>b٠,]?<{aXgpJ]璹نrV53-)p:,R%>#W۲4K{%L%]ͅP,7"[NI:ܴ- AJr)#"=k#Eoa PP$C>7m_t ڠcJZymA [qwDw|*3(FMۭ\KP-'1WK, suu;~ZaTnyi$A =46i֑AUU"l:gA ]"8&ד<{z&O!WF^XGhViWM\q(*p#Fk?p\Ym*J3B3'%jn+ IG{VcVL-f7 #/u}5bD7XMi!{#b$U]q\RGa ;OZXv^WZ\ܭ( lhSˎ6 V'h GY{49$r8AIȃ#V$HL/~l.]:>29:EkSO%N$Ϋkͯ⫝̸yˮ0mE+IVwuIu>Xj%6@[k)aqJz|؏!Υ֔RP.l@tⵅkZg'5nrqDU^kJBEBfrG)+J$"dB3#ٔk4yQCz9S\8'#/5cˑYO(4dhIM<6BߢJNDZFEgD6vnl|^kr;^hϨ1!ʌ:įZBᝋx|T+'!c t"YH=)"g6-t+.Ur$+ZzRG s*f9_QY4El>DI[}B=>v)iTg[?oWwۿlWG69k{Qx]-*$<-=W¹nUĂ}G4tZ]^Q8m!])SyR)vOR(_Aiϵei#{$hਧ.SLN}߬e}EgZwgAWPBcZÖ']P ;2/hy}1M9Fj'.ӖZy-,r ND|jlC)jqSʚV)]p3;❀[:tBH##HqhZr\j"tG-тtHtB24PJ:w;xI0$ wEQ#)FejK rSw|">Tҙ#2Xc8g,(L`S2 tM>5@<)A71iXSlHڛ9(y4KUu:xARdf5\Zq|m{ӭjI8%. ڟ5pxvqd(9P$#"8CQ NKFۘ;RTPE8^`WãRxL髍{}ġͭ緗Ҍ/<xcKOVy0\{Uk85A07)_uCuopN>~3e e޽ytYnDm3)ܠ&,![y3CcؽK+raޱX~aRbm<wE #+ԺQXfGq+h[71_A* [V٣sCEXb\fNiXNݔz NҲ wrG"+ kлYI`ϼUՄ o9Vc7^[Y"E]W>(GSkt]Gcx~hM`?WV8q w< `bJb̑ NNG[xr̈>Kþ7<7H56pIEKgoE`?4e)ޛ)7M(-4ot}LDG6"qycg~x{>8.,7W_ɦ/nG|MFU^VYpa",BBBH;GC#2JerK*ZIqbIphت݉)c繥ՅVtLnEcf62:;\Rw@{ S5Q $ϑTz;EzFO5Pn.NA<~ҌoXR|Ig$^]A|^_mmҷj8mbMbՅHmvI_MqƊFCq&Б%z>ΧKEAg4y;/0f[|@$SG,h5@0RȁцEH-qm%Kb%Dx:0XNHWIᰵ$G)|^ χ,m,#%6צIpO FDFUH5JKlI>Vxn;ĶY;dZkarnƭaeG< W#9+؄l?jEmDo<~W++0#π*<.ۘZ+H$VfF|J&#N ?*<<⢌՞\.#I: !#Sh-4'F |-[WQFH7 )d`JFCbFɞ9N9vՅW4xPOBHc2a"*90Iv5IGI<hI I*'Ƿ.-m1ȼѹKF2ٷ;*A*T6FDSKsipI tGx f$9 Ǐzf{kd@r:/?(i^b 3)_g;&IEWu̓*2t7qL Ti5, wdXr&Gwmŏy)IJD+iE:v6[=9ʰ;q` =}#q:<>~mFU631TqQ (t2/c~ iK'y˴TlxsF_$ {a8[yfc>Y͘k8&9x\Նڻ{I&7+ fv F=,ꌼcCA[c:麑î6B겦&|mFm㪈Rfw .xJês1?_UnuQGǪ?6wR5b-:q{wK  !1A2Qq"@PRa #03BCSbr4$T`c?K)o<rzѸUL<6K4F̘E¹?Q7 QZtʄSV9iE$m6vU>8_F!zaS# j_4Jzm_bȚ;/:Iq7A9Qڜp͖!QTaOSTQzqS5U{LHOWc;TWUA}YWqUNKURѾĴ:gfYnQ*dv?F6i1G6[H?W*!Wl 8OlE?U$jv<&Rا@TG"X޺51?Ikymc{TLʧA4Y+#a=[#j Ge;@֍Xًv_(uVgJjbէz;5$۱ʡ)zv|eS u̎b{ean<6\;CQ<@΍b{ZM%[*n,z{EZR++e`w޹bh9cWF2ǴU:RMWd架;UJcDtK_G@y5GāYzF 8cWb㖈qw4ecqMis,)',o=ߘq5e-0j.}xNGq?d;D5T Dbng2!zN%i`IJ4]JN Kv ./iLZFOii h=yn%wdԲ:d뉆2 ]|1jnvBV@XkxN_;J Kӯ$ΟVlXm x[0'id =qcamjdӚȹaE4rY26!۩PS#U v{-51~q<'x;Z *'Fg"pojg9l:5W媴txyyUU%`_58Mngv[+jz>XwbIt$]ɞ*{ &b^F=C4ЏZ+ F\pR]9c1b * @@K,\ϔ =0<9N{U^ozﺊ<˒D4p2 ,Ƿ˗:#]j*&*jFTܪTdF@x8׭CX2U&y({9b駴to90\DUaaƏ@J:tš#x]d0pUiJ!Џ_1Ke9s$\t%ZiW-]ZVp[!c8OڋGPmM 'ÈX$I"s)Ȍ[ڦT ׫wJsn$QӨ]dJ[;~ԕ$lŧt}7RU@&778ܷK "$4C^iQ􄆺h(Cg#P QҤ1 7~V=6~8:#7/N5qz=8ȂiEʀJpnx8.9@~1m3sE? :zqGY}:O#yw23$1%m}8`E毑s_PznQ[LF%D;S)י -YW < quTݪҒl>I£$qG,Ȑf=g + `~}m5dO+ipyOfv]ishu*8tx"4n7putfV]D`i=ZHWIwȩ<[.P\xӊF)jbKfzASi{*u#8 9p뚰 H@ff>,`2 L6b8 mw{Hn3|b3Fg1e6C<eH /_~B#L *t0xbS% 웞: Aɔ89hjd[OY墪9sŎzNZ:&Yiu%MGw=Y ]QӍ -u@'p[wK%suԘse^wbiɫ:f䲯4ֶCP JFE32 X;yVeAbFyyX%H ,vgb~Ksʊ&V φ 5f̅2K7ZVԎBLǑ=zv-yq,nȇ'(:8$(rH*!S RI.Lj"9\W>])|›\o?-tEs#678PI:e5n$i0ScudA F(ET lq{讬3 28xۆ1IPԲ v0r$0{[J*cyA 1OQ-3f5;׆!`;mV[g{*d$221VR8jk.aH)7c=BO>~ T77XӇʧ _NاVV:Gye)NKk Ǵ`ՏS=Wy\cu`}@8C2su XqC Պ̜xEU ڭ{$KόI@F؛NLOA$F[X2rĔG L\wE2J3S8IJ2e`A7),b +noĐ<{XA"Lj%W̮RI7=e0O {F 3t6ǽN7aNHmo!_5G/GGz`ǻwl${wzd2X,!a/@X{wh]S MARIJUANA
— DIOS — NO — CREA — NADA — EN — VANO —
Linux vps-ed8565de 5.10.0-37-cloud-amd64 #1 SMP Debian 5.10.247-1 (2025-12-11) x86_64
  SOFT : Apache/2.4.65 (Debian) PHP : 7.4.33
/var/www/espace_prive/site/wp-admin/
51.178.36.14

 
[ NAME ] [ SIZE ] [ PERM ] [ DATE ] [ ACT ]
+FILE +DIR
css dir drwxr-xr-x 2022-04-19 07:53 R D
images dir drwxr-xr-x 2022-04-19 07:53 R D
includes dir drwxr-xr-x 2022-04-19 07:53 R D
js dir drwxr-xr-x 2022-04-19 07:53 R D
maint dir drwxr-xr-x 2022-04-19 07:53 R D
network dir drwxr-xr-x 2022-04-19 07:53 R D
user dir drwxr-xr-x 2022-04-19 07:53 R D
about.php 30.941 KB -rw-r--r-- 2022-04-19 07:53 R E G D
admin-ajax.php 4.237 KB -rw-r--r-- 2022-04-19 07:53 R E G D
admin-footer.php 2.547 KB -rw-r--r-- 2022-04-19 07:53 R E G D
admin-functions.php 0.396 KB -rw-r--r-- 2022-04-19 07:53 R E G D
admin-header.php 7.493 KB -rw-r--r-- 2022-04-19 07:53 R E G D
admin-post.php 1.646 KB -rw-r--r-- 2022-04-19 07:53 R E G D
admin.php 10.284 KB -rw-r--r-- 2022-04-19 07:53 R E G D
async-upload.php 3.483 KB -rw-r--r-- 2022-04-19 07:53 R E G D
comment.php 10.214 KB -rw-r--r-- 2022-04-19 07:53 R E G D
credits.php 4.78 KB -rw-r--r-- 2022-04-19 07:53 R E G D
custom-background.php 19.435 KB -rw-r--r-- 2022-04-19 07:53 R E G D
custom-header.php 45.31 KB -rw-r--r-- 2022-04-19 07:53 R E G D
customize.php 9.258 KB -rw-r--r-- 2022-04-19 07:53 R E G D
edit-comments.php 13.642 KB -rw-r--r-- 2022-04-19 07:53 R E G D
edit-form-advanced.php 26.868 KB -rw-r--r-- 2022-04-19 07:53 R E G D
edit-form-blocks.php 11.975 KB -rw-r--r-- 2022-04-19 07:53 R E G D
edit-form-comment.php 7.192 KB -rw-r--r-- 2022-04-19 07:53 R E G D
edit-link-form.php 5.898 KB -rw-r--r-- 2022-04-19 07:53 R E G D
edit-tag-form.php 9.082 KB -rw-r--r-- 2022-04-19 07:53 R E G D
edit-tags.php 20.013 KB -rw-r--r-- 2022-04-19 07:53 R E G D
edit.php 16.311 KB -rw-r--r-- 2022-04-19 07:53 R E G D
export.php 10.458 KB -rw-r--r-- 2022-04-19 07:53 R E G D
freedoms.php 4.946 KB -rw-r--r-- 2022-04-19 07:53 R E G D
import.php 7.025 KB -rw-r--r-- 2022-04-19 07:53 R E G D
index.php 6.009 KB -rw-r--r-- 2022-04-19 07:53 R E G D
install-helper.php 5.615 KB -rw-r--r-- 2022-04-19 07:53 R E G D
install.php 15.781 KB -rw-r--r-- 2022-04-19 07:53 R E G D
link-add.php 0.684 KB -rw-r--r-- 2022-04-19 07:53 R E G D
link-manager.php 3.832 KB -rw-r--r-- 2022-04-19 07:53 R E G D
link-parse-opml.php 2.345 KB -rw-r--r-- 2022-04-19 07:53 R E G D
link.php 2.563 KB -rw-r--r-- 2022-04-19 07:53 R E G D
load-scripts.php 1.574 KB -rw-r--r-- 2022-04-19 07:53 R E G D
load-styles.php 2.155 KB -rw-r--r-- 2022-04-19 07:53 R E G D
media-new.php 3.024 KB -rw-r--r-- 2022-04-19 07:53 R E G D
media-upload.php 3.265 KB -rw-r--r-- 2022-04-19 07:53 R E G D
media.php 5.142 KB -rw-r--r-- 2022-04-19 07:53 R E G D
menu-header.php 9.279 KB -rw-r--r-- 2022-04-19 07:53 R E G D
menu.php 13.35 KB -rw-r--r-- 2022-04-19 07:53 R E G D
moderation.php 0.313 KB -rw-r--r-- 2022-04-19 07:53 R E G D
ms-admin.php 0.206 KB -rw-r--r-- 2022-04-19 07:53 R E G D
ms-delete-site.php 3.903 KB -rw-r--r-- 2022-04-19 07:53 R E G D
ms-edit.php 0.226 KB -rw-r--r-- 2022-04-19 07:53 R E G D
ms-options.php 0.23 KB -rw-r--r-- 2022-04-19 07:53 R E G D
ms-sites.php 0.223 KB -rw-r--r-- 2022-04-19 07:53 R E G D
ms-themes.php 0.225 KB -rw-r--r-- 2022-04-19 07:53 R E G D
ms-upgrade-network.php 0.227 KB -rw-r--r-- 2022-04-19 07:53 R E G D
ms-users.php 0.223 KB -rw-r--r-- 2022-04-19 07:53 R E G D
my-sites.php 4.51 KB -rw-r--r-- 2022-04-19 07:53 R E G D
nav-menus.php 39.848 KB -rw-r--r-- 2022-04-19 07:53 R E G D
network.php 5.197 KB -rw-r--r-- 2022-04-19 07:53 R E G D
options-discussion.php 14.399 KB -rw-r--r-- 2022-04-19 07:53 R E G D
options-general.php 14.652 KB -rw-r--r-- 2022-04-19 07:53 R E G D
options-head.php 0.477 KB -rw-r--r-- 2022-04-19 07:53 R E G D
options-media.php 5.916 KB -rw-r--r-- 2022-04-19 07:53 R E G D
options-permalink.php 17.781 KB -rw-r--r-- 2022-04-19 07:53 R E G D
options-reading.php 8.157 KB -rw-r--r-- 2022-04-19 07:53 R E G D
options-writing.php 8.096 KB -rw-r--r-- 2022-04-19 07:53 R E G D
options.php 11.415 KB -rw-r--r-- 2022-04-19 07:53 R E G D
plugin-editor.php 12.717 KB -rw-r--r-- 2022-04-19 07:53 R E G D
plugin-install.php 6.07 KB -rw-r--r-- 2022-04-19 07:53 R E G D
plugins.php 22.235 KB -rw-r--r-- 2022-04-19 07:53 R E G D
post-new.php 2.635 KB -rw-r--r-- 2022-04-19 07:53 R E G D
post.php 8.423 KB -rw-r--r-- 2022-04-19 07:53 R E G D
press-this.php 2.252 KB -rw-r--r-- 2022-04-19 07:53 R E G D
privacy.php 7.736 KB -rw-r--r-- 2022-04-19 07:53 R E G D
profile.php 0.289 KB -rw-r--r-- 2022-04-19 07:53 R E G D
revision.php 4.921 KB -rw-r--r-- 2022-04-19 07:53 R E G D
setup-config.php 14.807 KB -rw-r--r-- 2022-04-19 07:53 R E G D
term.php 2.063 KB -rw-r--r-- 2022-04-19 07:53 R E G D
theme-editor.php 14.059 KB -rw-r--r-- 2022-04-19 07:53 R E G D
theme-install.php 14.571 KB -rw-r--r-- 2022-04-19 07:53 R E G D
themes.php 20.823 KB -rw-r--r-- 2022-04-19 07:53 R E G D
tools.php 2.521 KB -rw-r--r-- 2022-04-19 07:53 R E G D
update-core.php 30.485 KB -rw-r--r-- 2022-04-19 07:53 R E G D
update.php 9.995 KB -rw-r--r-- 2022-04-19 07:53 R E G D
upgrade-functions.php 0.332 KB -rw-r--r-- 2022-04-19 07:53 R E G D
upgrade.php 4.406 KB -rw-r--r-- 2022-04-19 07:53 R E G D
upload.php 12.915 KB -rw-r--r-- 2022-04-19 07:53 R E G D
user-edit.php 26.936 KB -rw-r--r-- 2022-04-19 07:53 R E G D
user-new.php 21.184 KB -rw-r--r-- 2022-04-19 07:53 R E G D
users.php 17.904 KB -rw-r--r-- 2022-04-19 07:53 R E G D
widgets.php 18.043 KB -rw-r--r-- 2022-04-19 07:53 R E G D
REQUEST EXIT
©TheAlmightyZeus
locale && 'en_US' == get_locale() ) $version_string = $update->current; // If the only available update is a partial builds, it doesn't need a language-specific version string. elseif ( 'en_US' == $update->locale && $update->packages->partial && $wp_version == $update->partial_version && ( $updates = get_core_updates() ) && 1 == count( $updates ) ) $version_string = $update->current; else $version_string = sprintf( "%s–%s", $update->current, $update->locale ); $current = false; if ( !isset($update->response) || 'latest' == $update->response ) $current = true; $submit = __('Update Now'); $form_action = 'update-core.php?action=do-core-upgrade'; $php_version = phpversion(); $mysql_version = $wpdb->db_version(); $show_buttons = true; if ( 'development' == $update->response ) { $message = __('You are using a development version of WordPress. You can update to the latest nightly build automatically:'); } else { if ( $current ) { $message = sprintf( __( 'If you need to re-install version %s, you can do so here:' ), $version_string ); $submit = __('Re-install Now'); $form_action = 'update-core.php?action=do-core-reinstall'; } else { $php_compat = version_compare( $php_version, $update->php_version, '>=' ); if ( file_exists( WP_CONTENT_DIR . '/db.php' ) && empty( $wpdb->is_mysql ) ) $mysql_compat = true; else $mysql_compat = version_compare( $mysql_version, $update->mysql_version, '>=' ); if ( !$mysql_compat && !$php_compat ) /* translators: 1: WordPress version number, 2: Minimum required PHP version number, 3: Minimum required MySQL version number, 4: Current PHP version number, 5: Current MySQL version number */ $message = sprintf( __('You cannot update because WordPress %1$s requires PHP version %2$s or higher and MySQL version %3$s or higher. You are running PHP version %4$s and MySQL version %5$s.'), $update->current, $update->php_version, $update->mysql_version, $php_version, $mysql_version ); elseif ( !$php_compat ) /* translators: 1: WordPress version number, 2: Minimum required PHP version number, 3: Current PHP version number */ $message = sprintf( __('You cannot update because WordPress %1$s requires PHP version %2$s or higher. You are running version %3$s.'), $update->current, $update->php_version, $php_version ); elseif ( !$mysql_compat ) /* translators: 1: WordPress version number, 2: Minimum required MySQL version number, 3: Current MySQL version number */ $message = sprintf( __('You cannot update because WordPress %1$s requires MySQL version %2$s or higher. You are running version %3$s.'), $update->current, $update->mysql_version, $mysql_version ); else /* translators: 1: WordPress version number, 2: WordPress version number including locale if necessary */ $message = sprintf(__('You can update to WordPress %2$s automatically:'), $update->current, $version_string); if ( !$mysql_compat || !$php_compat ) $show_buttons = false; } } echo '

'; echo $message; echo '

'; echo '
'; wp_nonce_field('upgrade-core'); echo '

'; echo ''; echo ''; if ( $show_buttons ) { if ( $first_pass ) { submit_button( $submit, $current ? '' : 'primary regular', 'upgrade', false ); $first_pass = false; } else { submit_button( $submit, '', 'upgrade', false ); } } if ( 'en_US' != $update->locale ) if ( !isset( $update->dismissed ) || !$update->dismissed ) submit_button( __( 'Hide this update' ), '', 'dismiss', false ); else submit_button( __( 'Bring back this update' ), '', 'undismiss', false ); echo '

'; if ( 'en_US' != $update->locale && ( !isset($wp_local_package) || $wp_local_package != $update->locale ) ) echo '

'.__('This localized version contains both the translation and various other localization fixes. You can skip upgrading if you want to keep your current translation.').'

'; // Partial builds don't need language-specific warnings. elseif ( 'en_US' == $update->locale && get_locale() != 'en_US' && ( ! $update->packages->partial && $wp_version == $update->partial_version ) ) { echo '

'.sprintf( __('You are about to install WordPress %s in English (US). There is a chance this update will break your translation. You may prefer to wait for the localized version to be released.'), $update->response != 'development' ? $update->current : '' ).'

'; } echo '
'; } /** * @since 2.7.0 */ function dismissed_updates() { $dismissed = get_core_updates( array( 'dismissed' => true, 'available' => false ) ); if ( $dismissed ) { $show_text = esc_js(__('Show hidden updates')); $hide_text = esc_js(__('Hide hidden updates')); ?> '.__('Show hidden updates').'

'; echo '
    '; foreach ( (array) $dismissed as $update) { echo '
  • '; list_core_update( $update ); echo '
  • '; } echo '
'; } } /** * Display upgrade WordPress for downloading latest or upgrading automatically form. * * @since 2.7.0 * * @global string $required_php_version * @global string $required_mysql_version */ function core_upgrade_preamble() { global $required_php_version, $required_mysql_version; $wp_version = get_bloginfo( 'version' ); $updates = get_core_updates(); if ( !isset($updates[0]->response) || 'latest' == $updates[0]->response ) { echo '

'; _e('You have the latest version of WordPress.'); if ( wp_http_supports( array( 'ssl' ) ) ) { require_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; $upgrader = new WP_Automatic_Updater; $future_minor_update = (object) array( 'current' => $wp_version . '.1.next.minor', 'version' => $wp_version . '.1.next.minor', 'php_version' => $required_php_version, 'mysql_version' => $required_mysql_version, ); $should_auto_update = $upgrader->should_update( 'core', $future_minor_update, ABSPATH ); if ( $should_auto_update ) echo ' ' . __( 'Future security updates will be applied automatically.' ); } echo '

'; } else { echo '

'; _e('Important: before updating, please back up your database and files. For help with updates, visit the Updating WordPress Codex page.'); echo '

'; echo '

'; _e( 'An updated version of WordPress is available.' ); echo '

'; } if ( isset( $updates[0] ) && $updates[0]->response == 'development' ) { require_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; $upgrader = new WP_Automatic_Updater; if ( wp_http_supports( 'ssl' ) && $upgrader->should_update( 'core', $updates[0], ABSPATH ) ) { echo '

'; echo '' . __( 'BETA TESTERS:' ) . ' ' . __( 'This site is set up to install updates of future beta versions automatically.' ); echo '

'; } } echo '
    '; foreach ( (array) $updates as $update ) { echo '
  • '; list_core_update( $update ); echo '
  • '; } echo '
'; // Don't show the maintenance mode notice when we are only showing a single re-install option. if ( $updates && ( count( $updates ) > 1 || $updates[0]->response != 'latest' ) ) { echo '

' . __( 'While your site is being updated, it will be in maintenance mode. As soon as your updates are complete, your site will return to normal.' ) . '

'; } elseif ( ! $updates ) { list( $normalized_version ) = explode( '-', $wp_version ); echo '

' . sprintf( __( 'Learn more about WordPress %s.' ), esc_url( self_admin_url( 'about.php' ) ), $normalized_version ) . '

'; } dismissed_updates(); } function list_plugin_updates() { $wp_version = get_bloginfo( 'version' ); $cur_wp_version = preg_replace( '/-.*$/', '', $wp_version ); require_once(ABSPATH . 'wp-admin/includes/plugin-install.php'); $plugins = get_plugin_updates(); if ( empty( $plugins ) ) { echo '

' . __( 'Plugins' ) . '

'; echo '

' . __( 'Your plugins are all up to date.' ) . '

'; return; } $form_action = 'update-core.php?action=do-plugin-upgrade'; $core_updates = get_core_updates(); if ( !isset($core_updates[0]->response) || 'latest' == $core_updates[0]->response || 'development' == $core_updates[0]->response || version_compare( $core_updates[0]->current, $cur_wp_version, '=') ) $core_update_version = false; else $core_update_version = $core_updates[0]->current; ?>

$plugin_data ) { $plugin_data = (object) _get_plugin_data_markup_translate( $plugin_file, (array) $plugin_data, false, true ); $icon = ''; $preferred_icons = array( 'svg', '1x', '2x', 'default' ); foreach ( $preferred_icons as $preferred_icon ) { if ( ! empty( $plugin_data->update->icons[ $preferred_icon ] ) ) { $icon = ''; break; } } // Get plugin compat for running version of WordPress. if ( isset($plugin_data->update->tested) && version_compare($plugin_data->update->tested, $cur_wp_version, '>=') ) { $compat = '
' . sprintf(__('Compatibility with WordPress %1$s: 100%% (according to its author)'), $cur_wp_version); } elseif ( isset($plugin_data->update->compatibility->{$cur_wp_version}) ) { $compat = $plugin_data->update->compatibility->{$cur_wp_version}; $compat = '
' . sprintf(__('Compatibility with WordPress %1$s: %2$d%% (%3$d "works" votes out of %4$d total)'), $cur_wp_version, $compat->percent, $compat->votes, $compat->total_votes); } else { $compat = '
' . sprintf(__('Compatibility with WordPress %1$s: Unknown'), $cur_wp_version); } // Get plugin compat for updated version of WordPress. if ( $core_update_version ) { if ( isset( $plugin_data->update->tested ) && version_compare( $plugin_data->update->tested, $core_update_version, '>=' ) ) { $compat .= '
' . sprintf( __( 'Compatibility with WordPress %1$s: 100%% (according to its author)' ), $core_update_version ); } elseif ( isset( $plugin_data->update->compatibility->{$core_update_version} ) ) { $update_compat = $plugin_data->update->compatibility->{$core_update_version}; $compat .= '
' . sprintf(__('Compatibility with WordPress %1$s: %2$d%% (%3$d "works" votes out of %4$d total)'), $core_update_version, $update_compat->percent, $update_compat->votes, $update_compat->total_votes); } else { $compat .= '
' . sprintf(__('Compatibility with WordPress %1$s: Unknown'), $core_update_version); } } // Get the upgrade notice for the new plugin version. if ( isset($plugin_data->update->upgrade_notice) ) { $upgrade_notice = '
' . strip_tags($plugin_data->update->upgrade_notice); } else { $upgrade_notice = ''; } $details_url = self_admin_url('plugin-install.php?tab=plugin-information&plugin=' . $plugin_data->update->slug . '§ion=changelog&TB_iframe=true&width=640&height=662'); $details = sprintf( '%3$s', esc_url( $details_url ), /* translators: 1: plugin name, 2: version number */ esc_attr( sprintf( __( 'View %1$s version %2$s details' ), $plugin_data->Name, $plugin_data->update->new_version ) ), /* translators: %s: plugin version */ sprintf( __( 'View version %s details.' ), $plugin_data->update->new_version ) ); $checkbox_id = "checkbox_" . md5( $plugin_data->Name ); ?>

Name; ?> Version, $plugin_data->update->new_version ); echo ' ' . $details . $compat . $upgrade_notice; ?>

' . __( 'Themes' ) . ''; echo '

' . __( 'Your themes are all up to date.' ) . '

'; return; } $form_action = 'update-core.php?action=do-theme-upgrade'; ?>

Please Note: Any customizations you have made to theme files will be lost. Please consider using child themes for modifications.' ), __( 'https://codex.wordpress.org/Child_Themes' ) ); ?>

$theme ) { $checkbox_id = 'checkbox_' . md5( $theme->get( 'Name' ) ); ?>

display( 'Name' ); ?> display( 'Version' ), $theme->update['new_version'] ); ?>

' . __( 'Translations' ) . ''; echo '

' . __( 'Your translations are all up to date.' ) . '

'; } return; } $form_action = 'update-core.php?action=do-translation-upgrade'; ?>

new_files ) && ! $update->new_files; ?>

'; return; } if ( ! WP_Filesystem( $credentials, ABSPATH, $allow_relaxed_file_ownership ) ) { // Failed to connect, Error and request again request_filesystem_credentials( $url, '', true, ABSPATH, array( 'version', 'locale' ), $allow_relaxed_file_ownership ); echo '
'; return; } if ( $wp_filesystem->errors->get_error_code() ) { foreach ( $wp_filesystem->errors->get_error_messages() as $message ) show_message($message); echo ''; return; } if ( $reinstall ) $update->response = 'reinstall'; add_filter( 'update_feedback', 'show_message' ); $upgrader = new Core_Upgrader(); $result = $upgrader->upgrade( $update, array( 'allow_relaxed_file_ownership' => $allow_relaxed_file_ownership ) ); if ( is_wp_error($result) ) { show_message($result); if ( 'up_to_date' != $result->get_error_code() && 'locked' != $result->get_error_code() ) show_message( __('Installation Failed') ); echo ''; return; } show_message( __('WordPress updated successfully') ); show_message( '' . sprintf( __( 'Welcome to WordPress %1$s. You will be redirected to the About WordPress screen. If not, click here.' ), $result, esc_url( self_admin_url( 'about.php?updated' ) ) ) . '' ); show_message( '' . sprintf( __( 'Welcome to WordPress %1$s. Learn more.' ), $result, esc_url( self_admin_url( 'about.php?updated' ) ) ) . '' ); ?> ' . __( 'On this screen, you can update to the latest version of WordPress, as well as update your themes, plugins, and translations from the WordPress.org repositories.' ) . '

'; $updates_overview .= '

' . __( 'If an update is available, you᾿ll see a notification appear in the Toolbar and navigation menu.' ) . ' ' . __( 'Keeping your site updated is important for security. It also makes the internet a safer place for you and your readers.' ) . '

'; get_current_screen()->add_help_tab( array( 'id' => 'overview', 'title' => __( 'Overview' ), 'content' => $updates_overview ) ); $updates_howto = '

' . __( 'WordPress — Updating your WordPress installation is a simple one-click procedure: just click on the “Update Now” button when you are notified that a new version is available.' ) . ' ' . __( 'In most cases, WordPress will automatically apply maintenance and security updates in the background for you.' ) . '

'; $updates_howto .= '

' . __( 'Themes and Plugins — To update individual themes or plugins from this screen, use the checkboxes to make your selection, then click on the appropriate “Update” button. To update all of your themes or plugins at once, you can check the box at the top of the section to select all before clicking the update button.' ) . '

'; if ( 'en_US' != get_locale() ) { $updates_howto .= '

' . __( 'Translations — The files translating WordPress into your language are updated for you whenever any other updates occur. But if these files are out of date, you can click the “Update Translations” button.' ) . '

'; } get_current_screen()->add_help_tab( array( 'id' => 'how-to-update', 'title' => __( 'How to Update' ), 'content' => $updates_howto ) ); get_current_screen()->set_help_sidebar( '

' . __('For more information:') . '

' . '

' . __( 'Documentation on Updating WordPress' ) . '

' . '

' . __( 'Support Forums' ) . '

' ); if ( 'upgrade-core' == $action ) { // Force a update check when requested $force_check = ! empty( $_GET['force-check'] ); wp_version_check( array(), $force_check ); require_once(ABSPATH . 'wp-admin/admin-header.php'); ?>

'; if ( $upgrade_error == 'themes' ) _e('Please select one or more themes to update.'); else _e('Please select one or more plugins to update.'); echo '

'; } $last_update_check = false; $current = get_site_transient( 'update_core' ); if ( $current && isset ( $current->last_checked ) ) { $last_update_check = $current->last_checked + get_option( 'gmt_offset' ) * HOUR_IN_SECONDS; } echo '

'; /* translators: %1 date, %2 time. */ printf( __( 'Last checked on %1$s at %2$s.' ), date_i18n( __( 'F j, Y' ), $last_update_check ), date_i18n( __( 'g:i a' ), $last_update_check ) ); echo '   ' . __( 'Check Again' ) . ''; echo '

'; if ( current_user_can( 'update_core' ) ) { core_upgrade_preamble(); } if ( current_user_can( 'update_plugins' ) ) { list_plugin_updates(); } if ( current_user_can( 'update_themes' ) ) { list_theme_updates(); } if ( current_user_can( 'update_languages' ) ) { list_translation_updates(); } /** * Fires after the core, plugin, and theme update tables. * * @since 2.9.0 */ do_action( 'core_upgrade_preamble' ); echo ''; wp_localize_script( 'updates', '_wpUpdatesItemCounts', array( 'totals' => wp_get_update_data(), ) ); include(ABSPATH . 'wp-admin/admin-footer.php'); } elseif ( 'do-core-upgrade' == $action || 'do-core-reinstall' == $action ) { if ( ! current_user_can( 'update_core' ) ) wp_die( __( 'Sorry, you are not allowed to update this site.' ) ); check_admin_referer('upgrade-core'); // Do the (un)dismiss actions before headers, so that they can redirect. if ( isset( $_POST['dismiss'] ) ) do_dismiss_core_update(); elseif ( isset( $_POST['undismiss'] ) ) do_undismiss_core_update(); require_once(ABSPATH . 'wp-admin/admin-header.php'); if ( 'do-core-reinstall' == $action ) $reinstall = true; else $reinstall = false; if ( isset( $_POST['upgrade'] ) ) do_core_upgrade($reinstall); wp_localize_script( 'updates', '_wpUpdatesItemCounts', array( 'totals' => wp_get_update_data(), ) ); include(ABSPATH . 'wp-admin/admin-footer.php'); } elseif ( 'do-plugin-upgrade' == $action ) { if ( ! current_user_can( 'update_plugins' ) ) wp_die( __( 'Sorry, you are not allowed to update this site.' ) ); check_admin_referer('upgrade-core'); if ( isset( $_GET['plugins'] ) ) { $plugins = explode( ',', $_GET['plugins'] ); } elseif ( isset( $_POST['checked'] ) ) { $plugins = (array) $_POST['checked']; } else { wp_redirect( admin_url('update-core.php') ); exit; } $url = 'update.php?action=update-selected&plugins=' . urlencode(implode(',', $plugins)); $url = wp_nonce_url($url, 'bulk-update-plugins'); $title = __('Update Plugins'); require_once(ABSPATH . 'wp-admin/admin-header.php'); echo '
'; echo '

' . __( 'Update Plugins' ) . '

'; echo ''; echo '
'; wp_localize_script( 'updates', '_wpUpdatesItemCounts', array( 'totals' => wp_get_update_data(), ) ); include(ABSPATH . 'wp-admin/admin-footer.php'); } elseif ( 'do-theme-upgrade' == $action ) { if ( ! current_user_can( 'update_themes' ) ) wp_die( __( 'Sorry, you are not allowed to update this site.' ) ); check_admin_referer('upgrade-core'); if ( isset( $_GET['themes'] ) ) { $themes = explode( ',', $_GET['themes'] ); } elseif ( isset( $_POST['checked'] ) ) { $themes = (array) $_POST['checked']; } else { wp_redirect( admin_url('update-core.php') ); exit; } $url = 'update.php?action=update-selected-themes&themes=' . urlencode(implode(',', $themes)); $url = wp_nonce_url($url, 'bulk-update-themes'); $title = __('Update Themes'); require_once(ABSPATH . 'wp-admin/admin-header.php'); ?>

wp_get_update_data(), ) ); include(ABSPATH . 'wp-admin/admin-footer.php'); } elseif ( 'do-translation-upgrade' == $action ) { if ( ! current_user_can( 'update_languages' ) ) wp_die( __( 'Sorry, you are not allowed to update this site.' ) ); check_admin_referer( 'upgrade-translations' ); require_once( ABSPATH . 'wp-admin/admin-header.php' ); include_once( ABSPATH . 'wp-admin/includes/class-wp-upgrader.php' ); $url = 'update-core.php?action=do-translation-upgrade'; $nonce = 'upgrade-translations'; $title = __( 'Update Translations' ); $context = WP_LANG_DIR; $upgrader = new Language_Pack_Upgrader( new Language_Pack_Upgrader_Skin( compact( 'url', 'nonce', 'title', 'context' ) ) ); $result = $upgrader->bulk_upgrade(); wp_localize_script( 'updates', '_wpUpdatesItemCounts', array( 'totals' => wp_get_update_data(), ) ); require_once( ABSPATH . 'wp-admin/admin-footer.php' ); } else { /** * Fires for each custom update action on the WordPress Updates screen. * * The dynamic portion of the hook name, `$action`, refers to the * passed update action. The hook fires in lieu of all available * default update actions. * * @since 3.2.0 */ do_action( "update-core-custom_{$action}" ); }