PHP kód vo WordPress – osvedčené postupy. Ako napísať doplnok WordPress Príklady písania kódu vo wp

Dobrý deň, milí čitatelia blogu. Dnešnú publikáciu som sa rozhodol venovať problematike písania článkov v HTML editor wordpress().

Faktom je, že niekedy nie je možné použiť vizuálny editor v admin paneli (najčastejšie je to kvôli problémom s hostingom) a bez neho bude pre začínajúcich blogerov dosť ťažké písať správne a krásne navrhnuté články, pretože jednoduchý editor, ktorý funguje pre každého bez výnimky, vyžaduje minimálne .

Keď som prvýkrát začal blogovať a spoznávať motor, jednoducho som nemohol používať vizuálny editor. Nepomohli s nimi ani ďalšie doplnky rôzne verzie, ani iné „tance s tamburínou“. Preto som, chtiac-nechtiac, musel zvládnuť existujúci základný editor, našťastie som v tom čase už ovládal hypertextový značkovací jazyk.

Používanie iba editora HTML vo WordPress

Nešlo však ani o HTML, ale o pohodlie pri vykonávaní každodenných a často sa vyskytujúcich akcií. Áno, predvolený editor WordPress vám umožňuje písať tučné (značka STRONG) a kurzívu (EM), vkladať odkazy, úvodzovky, obrázky, číslované a odrážkové zoznamy, zvýrazniť rôzne kódy a .

Ale toto mi nestačilo, lebo. v texte článkov som aktívne používal interné nadpisy rôznych úrovní (od H2 po H5), zvýrazňoval kód (PHP, CSS a pod.) špeciálnymi značkami a robil oveľa viac.

Všetko, čo nebolo súčasťou štandardnej sady nástrojov pre základný editor WordPress, sa teda muselo zadávať ručne z klávesnice, čo vôbec neuľahčovalo prácu pri vytváraní príspevkov a bolo to veľmi otravné.

Tento problém bol však úspešne vyriešený vďaka úžasnému doplnku Post Editor Buttons WP, pomocou ktorého môžete na panel nástrojov editora HTML pridať toľko ďalších tlačidiel, koľko chcete, naprogramovaním pre určité akcie.

Dnes sa pozrieme na písanie príspevkov vo WP v každom detaile od začiatku do konca, bez toho, aby sme vynechali nuansy a tie techniky, ktoré podľa môjho názoru pomohli blogovej stránke (práve to čítate, pokiaľ, samozrejme, tento článok nebol ukradnuté a nezverejnené na inej stránke) dosahujú úroveň niekoľkých tisíc unikátnych návštevníkov.

To znamená, že táto publikácia bude podrobnou prílohou k článku (toto nie je pôvodný názov, ale prevzatý z retweetu čitateľa, ale je to podľa mňa ešte úspešnejšie ako moje pôvodné meno).

V tom článku som načrtol nuansy, ktoré, ako sa mi zdá, ovplyvnili prílev návštevnosti (návštevníkov) z vyhľadávačov a v tomto príspevku sa pokúsim preniknúť do detailov, ktoré sú často veľmi dôležité a na prvý pohľad nie sú zrejmé.

Navyše si myslím, že začínajúcim blogerom alebo tým, ktorí ešte len uvažujú o vytvorení a údržbe vlastného projektu, nebude bez záujmu dozvedieť sa, ako je všetko vo WordPresse jednoduché, ak viete, čo a kde robiť, aby ste požadovaný výsledok. No úvod sa oddialil, je čas prejsť priamo k prezentácii materiálu.

Pre tých, ktorí ešte nemajú vlastný blog na WP, ale chcú sa stať blogerom, alebo pre tých, ktorí chcú prejsť z iného blogovacieho nástroja alebo bezplatnej platformy na WordPress, poskytnem odkazy na materiály na ňom inštalácia a počiatočné nastavenie:

Začíname písať článok v HTML editore WordPress

Ak teda chcete napísať nový článok, budete musieť prejsť na panel správcu (http://sait.ru/wp-admin/) a vybrať z ľavého menu (ak používate štandardný dizajn panela správcu WP) „ Pridať nový“ v oblasti „Príspevky“.

V dôsledku toho sa otvorí štandardná stránka na pridanie článku (príspevku), v ktorej bude pole na zadanie jeho názvu a veľké pole na zadanie textu príspevku.

Pri zadávaní textu nadpisu do poľa na to určeného neexistujú žiadne triky, ale je veľmi dôležité, nie ako ho zadáte, ale čo potrebujete použiť Kľúčové slová v ňom. Ako dobre si vyberiete názov príspevku (), ako vysoko váš príspevok stúpne vo výsledkoch vyhľadávania pre určité dopyty.

Ale v rovnakom čase názov článku vo WordPresse musí dobre korelovať s jeho textom (relevantné k textu príspevku). Okrem toho sa zobrazí vo výsledkoch vyhľadávania a ďalší osud vašej publikácie bude závisieť od toho, aká bude atraktívna (ak sa na ňu neklikne, zhoršia sa faktory správania a opustí Top).

Zvyčajne finálnu verziu nadpisu tvorím až po napísaní samotného článku. Niekedy skopírujem všetky medzinadpisy do samostatných textový súbor a držiac ich všetkých pred očami, tvorím všeobecnú, snažiac sa brať do úvahy všetko, čo v nej bolo spomenuté.

Pravdepodobne preto sú moje tituly veľmi dlhé, ale ako ukazuje prax, nie je na tom nič zlé. Vyhľadávače odvádzajú skvelú prácu s mojimi názvami a výsledky vyhľadávania ukazujú tú časť TITLE, v ktorej sa vyskytujú slová z vyhľadávacieho dopytu.

Prečo je názov taký dôležitý pre propagáciu stránky v vyhľadávače? Áno, pretože pre nich je to hlavné kritérium na určenie relevantnosti (stupeň korešpondencie - a iné zložité slová) vášho článku pre jeden alebo druhý Vyhľadávací dopyt.

Aj keď nie, naozaj nie. Nie názov príspevku, ale názov stránky TITLE je pre vyhľadávače najdôležitejším kritériom pri určovaní pozície pre konkrétny vyhľadávací dopyt (pozri podrobne).

A čo s tým má potom názov príspevku vo WP? A to aj napriek tomu, že správny NÁZOV by mal byť tvorený z nadpisu článku plus nadpisu celého blogu a v tomto poradí. Mimochodom, správnu formáciu TITLE môžete nastaviť vo WordPress. Doplnok je jednoducho úžasný a zároveň vám umožňuje vyriešiť veľa problémov s internou optimalizáciou.

Upozorňujem na rozdiel medzi HTML logickým výberovým tagom „STRONG“ a iným výberovým tagom tučným „B“, ako aj medzi „EM“ a „I“. Prvá z týchto značiek ( SILNÉ a EM) by mal slúžiť nielen na to, aby upriamil pozornosť čitateľov na dôležité body v texte.

Vyhľadávacie nástroje budú zvažovať s väčšou váhou slová a frázy zvýraznené týmito značkami s diakritikou (STRONG a EM) v porovnaní s bežnými, nevybranými slovami textu. Teraz však musíte byť s tým veľmi opatrní, aby ste nezašli príliš ďaleko a nie.

Výber optimálnej štruktúry pre nadpisy úrovne H1-H6

Teraz pre značky nadpisov H1-H6, ktoré sa dajú použiť aj v článkoch na blogu na zvýraznenie správne slová a frázy.

Tieto interné podnadpisy, podobne ako TITLE, by mali obsahovať kľúčové slová a frázy, podľa ktorých chcete získať hodnotenie vo vyhľadávačoch. Vyhľadávanie ich bude brať do úvahy s väčšou váhou ako bežné. Ale opäť, v žiadnom prípade by ste nemali spamovať kľúče, pretože za to môžete trpieť moderné podmienky povýšenie.

Okrem tých, ktoré poskytujú interné podpoložky (zvyčajne od H2, H3). dodatočná príležitosťštruktúrovanie textu, čo zlepšuje ich vnímanie čitateľmi.
Existuje však ďalší problém internej optimalizácie webových stránok, ktorý súvisí s úrovňami nadpisov (H1 až H6) používanými na stránkach blogu WordPress.

Hlavným spôsobom distribúcie úrovní nadpisov na webovej stránke je, že nadpis celého článku by mal byť zabalený do značky H1 (najviac vysoký stupeň) A mala by byť jedna na stránku, ale všetky interné podnadpisy v texte musia začínať H2.

Mimochodom, chcem vám poradiť veľmi pohodlný spôsob, ako vo WordPresse vizuálne vidieť, kde a na akej úrovni sa na konkrétnej stránke používajú nadpisy. Toto je doplnok pre FireFox() s názvom .

Ak teda vyberiete z ponuky tohto pluginu (jeho ponuka je pridaná do hornej časti prehliadača) položky „Outlines“ – „Osry nadpisu“, potom všetky nájdete na otvorenom priečinku tento moment v prehliadači budú webové stránky zakrúžkované viacfarebnými obdĺžnikmi, vedľa ktorých bude podpísaná ich úroveň H1 -H6.

Ako je z obrázku vyššie vidieť, nadpis článku som nastavil nie na H1, ale na H2, pričom H1 slúži na to, aby som v ňom uzavrel popis celého projektu, t.j. nie na konkrétny článok, ale na celý blog.

Tento Maul sa v jednom zo svojich článkov zmienil o tom, že nadpis úrovne H1 by mal byť rovnaký pre všetky webové stránky na webe, ale svoju myšlienku v skutočnosti neobhajoval. Ja však používam presne jeho schému. Pre interné podnadpisy používam značky H3 a H4 (niekedy H5).

Ešte jedna nuansa. Na hlavných názvoch príspevkov mám odkazy, ktoré vedú na webové stránky s plné verzie, ale už na týchto stránkach s plnými textami príspevkov prestávajú byť nadpisy článkov odkazmi. Niekde som čítal, že takto by to bolo lepšie.

Teraz sa ešte musíme trochu porozprávať o tom, ako môžete zmeniť značky nadpisov HTML vo WordPress, napríklad pre články, alebo pridať, ako som to urobil ja, jednu spoločnú úroveň H1 pre všetky.

Ak to chcete urobiť, musíte sa pripojiť k hostiteľskému serveru, na ktorom sa nachádza váš blog, pomocou protokolu FTP, napríklad . Všetky súbory, ktoré môžeme potrebovať, sa nachádzajú v priečinku s témou WordPress (šablónou), ktorú používate a ktorú nájdete na tejto ceste:

/wp-content/themes/Názov témy/

Aby ste jasnejšie pochopili štruktúru a účel súborov (šablón) témy WordPress, odporúčame vám prečítať si článok na samom začiatku tejto publikácie (v zozname).

Pozrime sa, kde môžete zmeniť úroveň hlavných názvov článkov umiestnených na hlavnej stránke (zodpovedá za jej vzhľad). súbor INDEX) a na stránkach s úplnými verziami článkov (JEDINÝ súbor).

Najprv otvorme INDEX na úpravu. Mám v ňom názvy článkov WordPress uzavreté v HTML značke H2 (druhá úroveň) a okrem toho sú to odkazy, pretože sú uzavreté v značke odkazu A:

" rel="záložka" title="Trvalý odkaz!}">

V príspevkoch (za ich vzhľad je zodpovedný SINGLE súbor) už nebudú hlavnými nadpismi odkazy, aj keď majú tiež úroveň H2:

Ak nie ste spokojní s druhou úrovňou, jednoducho zmeňte značky H2 v týchto súboroch (INDEX a SINGLE) na značky H1 a uložte vykonané zmeny (hoci to nemožno urobiť pre hlavnú, pretože ich bude viac H1 na stránke, čo nie je dobré).

To isté môžete urobiť pre všetky stránky WordPress blogu H1 veľmi jednoducho. Ak to chcete urobiť, budete musieť otvoriť HEADER na úpravu z priečinka s témou, ktorú používate, nájsť riadok, kde je zobrazený popis vášho blogu, a potom ho uzavrieť do otváracích a zatváracích značiek H1 a potom uložiť zmeny vyrobené.

Vráťme sa však k nášmu WordPress HTML editoru a pozrime sa, aké funkcie nám poskytuje, čo nám v ňom chýba a tiež pouvažujme nad možnosťou rozšírenia jeho možností. Tu je snímka obrazovky môjho panela nástrojov správcu s predvolenými tlačidlami zvýraznenými červenou farbou:

Upozorňujeme, že tlačidlá označené „b“ a „i“ v skutočnosti slúžia na vloženie štítkov STRONG a EM.

Všetky tieto dodatočné tlačidlá však možno do WordPress pridať samostatne pomocou skvelého doplnku. Tlačidlá editora príspevkov, o inštalácii a práci, s ktorou vám poviem v druhom článku tejto série. Zostaňte preto v kontakte, prihláste sa na odber noviniek a nenechajte si ujsť to najzaujímavejšie.

Veľa šťastia! Uvidíme sa čoskoro na stránkach blogu

Možno vás bude zaujímať

Po aktualizácii chýba ľavé menu v správcovi WordPress Prázdna stránka pri prezeraní veľkých príspevkov (článkov) vo WordPress Kde stiahnuť WordPress - iba z oficiálnej stránky wordpress.org Ako automaticky pridať atribút Alt do značiek Img vášho blogu WordPress (kde neexistujú) Ako zakázať komentáre vo WordPress pre jednotlivé články alebo celý blog, ako aj ich odstrániť alebo naopak zahrnúť do šablóny Ako vytvoriť zoznam statických stránok vo WordPress pomocou wp_list_pages (Zlepšenie zárobkov na večné odkazy a články)
Podrobná inštalácia WordPressu a obrázkov, prihlásenie do administračného panela WP a zmena hesla Emotikony vo WordPress - aké kódy emotikonov vložiť, ako aj doplnok Qip Smiles (krásne emotikony na komentáre)
Zníženie spotreby pamäte vo WordPresse pri vytváraní stránok - plugin WPLANG Lite na nahradenie lokalizačného súboru
Ako vstúpiť do administračného panela WordPress, ako aj zmeniť prihlasovacie meno a heslo správcu, ktoré ste dostali pri inštalácii motora
Nastavenia blogu WordPress, ktoré by ste mali urobiť hneď po inštalácii

Dovolím si predpokladať, že sa vo vašom živote vyskytli prípady, keď ste chceli niečo doplniť (opraviť) v téme vašej WP stránky, alebo vo funkcionalite nejakého pluginu. Navyše vývojári túto funkciu nezahrnuli do štandardných ovládacích prvkov. A vaša duša nepozná žiadne obmedzenia a vyžaduje let fantázie 🙂 Ako ste pochopili, z každej situácie existuje východisko, v tomto prípade budeme musieť opraviť kód pluginu, tému...

Hlavným problémom pri úprave kódu je, že zmeny, ktoré vykonáte, žiaľ, netrvajú dlho a pravdepodobne budú pri ďalšej aktualizácii zrušené. Ak riešením, ktoré vidíte, je držať sa ďalej od aktualizácií, dovolím si vás odradiť od tohto nebezpečného hanebného rozhodnutia, pretože aktualizácie obsahujú dôležité zmeny z hľadiska bezpečnosti a opráv chýb a často aj nové funkcie.

Preto je vhodnejšie používať metódy, ktoré obstoja v našom dynamicky sa meniacom svete a zároveň ušetria váš drahocenný čas.

Varovania!

Na internete často nájdete tipy, ktoré navrhujú vykonať zmeny v súbore. funkcie.php- ak existuje nejaká možnosť, ako sa bez neho zaobísť - je lepšie sa tohto súboru nedotýkať. V nižšie uvedených metódach uvidíte, ako to implementovať. A v každom prípade musíte vytvoriť podradenú tému a ponechať nadradenú tému nedotknutú.

Pri pridávaní prefixu funkcie vždy použite vlastný kód v tvare: _predpona(na názov zmenenej funkcie). Táto akcia vás ochráni pred konfliktmi s inými funkciami témy alebo doplnku.

Ako teda pridáte kód na stránku WP?

1) Vlastný doplnok

Môžete teda vkladať útržky kódu a pri aktualizácii sa nevymažú a môžete ich aj upravovať, v budúcnosti aktivovať alebo naopak – v prípade potreby deaktivovať.

Postup je jednoduchý: najprv musíte vytvoriť adresár pre váš plugin a vhodne ho pomenovať, napríklad moy-plugin (použite iba pomlčku, nie koncovú lomku)

Ďalej vytvoríme hlavný súbor doplnku. Ako viete, mal by obsahovať názov, popis a základné informácie, ako aj kód, ktorý pomôže chrániť doplnok pred votrelcami. A tento súbor nazývame, povedzme my-plugin.php. Prípona .php povie WP, v akom jazyku je daný súbor.

Vyššie popísaným spôsobom môžete vytvoriť súbor v ľubovoľnom textovom editore, napríklad v programe Poznámkový blok, ktorý je už starostlivo nainštalovaný v operačnom systéme Windows (TextEdit na Macu). Je lepšie nepoužívať editor Microsoft Word, pretože formátuje text a v tejto situácii ho absolútne nepotrebujeme.

Takže tu je kód na pridanie:

A pod týmto kódom vykonajte zmeny, ktoré vaša kreatívna duša vyžaduje. Na koniec nemusíte pridávať uzatváracie značky PHP. V tomto prípade sa názov, popis a adresa URL zobrazia na paneli správcu. A, samozrejme, môžete nahradiť informácie „ClubWP“ svojimi vlastnými informáciami.

Potom ostáva už len vytvorené zabaliť do zip archívu a poslať na ftp vašej stránky. V budúcnosti týmto spôsobom budete môcť vykonávať akékoľvek zmeny v doplnku.

Jednoduchým spôsobom si vytvoríte jednoduchý plugin pre vaše potreby.

2) Doplnok Code Snippets Plugin

Ak je pre vás vyššie opísaná metóda náročná alebo ste veľmi praktický človek a ste zvyknutí na rýchlejšie dosahovanie výsledkov, úryvky kódu boli vytvorené špeciálne pre vás. Rovnako ako funkcia opísaná vyššie, doplnok pridá váš kód s možnosťou jeho ďalšej úpravy bez použitia vašej témy.

Po inštalácii doplnku sa na paneli správcu zobrazí nové okno „Úryvky“, do ktorého môžete pridávať nové úryvky. Do ktorého môžete zadať kód a informácie o jeho účele.

Môžete teda: povoliť alebo zakázať vlastný kód vo forme doplnkov. Veľmi pohodlné a praktické, pretože. niekedy sú možné konflikty s témami a doplnkami a vy to môžete ľahko pochopiť a vygenerovaný kód deaktivovať.

3) Úprava súboru Functions.php podradenej témy

Ak vám použitie pluginov nevyhovuje a potrebujete urobiť zmenu priamo v téme vašej stránky, potom je táto metóda určená práve vám. Pripomínam vám, že to môžete urobiť iba s detskými témami.

Ak chcete použiť túto metódu, ponúkam svoju šablónu funkcie.php detská téma. Rozbaľte a upravte súbor style.css(import názvu šablóny a adresy URL)

P.S. Pokúste sa čo najlepšie uľahčiť si život v budúcnosti, pokiaľ ide o ťažkú ​​časť opravy chýb a úpravu vlastného kódu podľa potreby.

Čitateľnosť kódu je veľmi bolestivá téma a treba jej venovať náležitú pozornosť. V tomto článku sa dozviete o 16 trikoch, ktoré vám pomôžu napredovať v tejto téme.

1. Komentáre a dokumentácia

IDE sú vo svete vývojárov čoraz populárnejšie poskytujú praktické nástroje na komentovanie a dokumentovanie kódu.

Tu je príklad:

Tu je ďalší príklad volania vlastnej metódy:

V tomto príklade je štýl komentárov založený na PHPDoc a IDE, ktoré používam, je Aptana.

2. Odsadenie

Predpokladám, že už viete, aké dôležité je odsadenie vo vašom kóde. Vo všeobecnosti existuje niekoľko štýlov formátovania kódu.

Funkcia foo() ( if ($možno) ( do_it_teraz(); znovu(); ) else ( abort_mission(); ) finalize(); )

Funkcia foo() ( if ($možno) ( do_it_teraz(); znovu(); ) else ( abort_mission(); ) finalize(); )

Funkcia foo() ( if ($možno) ( do_it_teraz(); znovu(); ) else ( abort_mission(); ) finalize(); )

Osobne najčastejšie používam štýl číslo 2, ale niekedy idem na číslo 1. Ale všetko je to samozrejme vec vkusu. S najväčšou pravdepodobnosťou neexistuje žiadny „najlepší“ štýl, ktorý by vyhovoval úplne každému. Tieto pravidlá musia v prvom rade dodržiavať tí, ktorí pracujú v tíme alebo sa podieľajú na písaní open source projektov.

Existujú aj štýly, ktoré kombinujú niektoré vlastnosti. Napríklad štandardy kódovania PEAR, kde zložená zátvorka "(" zostáva na rovnakom riadku v podmienených príkazoch, ale je zabalená do funkcií.

Štýl HRUŠKA:

Funkcia foo() ( // na novom riadku if ($možno) ( // na rovnakom riadku do_it_now(); again(); ) else ( abort_mission(); ) finalize(); )

Všimnite si tiež, že tento štýl používa 4 medzery namiesto tabulátorov.

Môžete sa dozvedieť viac o rôznych štýloch.

3. Vyhnite sa zbytočným komentárom

Áno, komentovanie kódu je dobré; netreba to však preháňať. Tu je príklad:

// získanie kódu krajiny $country_code = get_country_code($_SERVER["REMOTE_ADDR"]); // ak je krajina USA if ($country_code == "US") ( // zobrazenie tvaru echo form_input_state(); )

Ak je práca kódu zrejmá, pravdepodobne by ste nemali písať zbytočné komentáre.

Ak ešte nie sú k dispozícii, môžete ich trochu skrátiť:

// zobrazenie formulára, ak je krajina US $country_code = get_country_code($_SERVER["REMOTE_ADDR"]); if ($country_code == "US") ( echo form_input_state(); )

4. Zoskupovanie kódov

Niektoré úlohy si najčastejšie vyžadujú napísanie niekoľkých riadkov kódu. Preto je najlepšie kombinovať takéto úlohy do samostatných blokov oddelených medzerami.

Tu je jednoduchý príklad:

// získanie zoznamu fór $forums = array(); $r = mysql_query("VYBRAŤ ID, názov, popis FROM fór"); while ($d = mysql_fetch_assoc($r)) ( $forums = $d; ) // načítanie šablóny load_template("header"); load_template("zoznam_forem",$forum); load_template("päta");

Ak pridáte komentár pred začiatkom každého bloku, ďalej to zlepší čitateľnosť vášho kódu.

5. Schéma pomenovania

Niekedy aj v jazyku PHP nájdete nezrovnalosti v pomenovaní funkcií. A tu je množstvo príkladov:

  • strpos() vs str_split()
  • imagetypes() vs image_type_to_extension()

Existuje niekoľko populárnych štýlov:

  • camelCase: Prvé písmeno každého nového slova je veľké.
  • podčiarkovníky: podčiarknutie medzi slovami: mysql_real_escape_string().

Ak zmiešate tieto techniky, skôr či neskôr sa môžete dostať do nepríjemnej situácie. Ak pracujete na projekte, ktorý používa jednu z týchto techník, potom by ste mali nasledovať. Stále to môže závisieť od programovacieho jazyka. Napríklad väčšina vývojárov Java používa camelCase, zatiaľ čo vývojári PHP uprednostňujú podčiarkovníky.

Ale ani tu to nebolo bez hybridu. Niektorí vývojári používajú podčiarkovníky pri pomenovaní tried a metód (mimo tried) a v iných prípadoch používajú camelCase:

Trieda Foo_Bar ( verejná funkcia someDummyMethod() ( ) ) funkcia procedural_function_name() ( )

Ešte raz poviem, že neexistuje lepší štýl. Len sa treba niečoho držať.

6. DRY princíp

SUCHÝ (neopakujte sa) Tiež známy ako DIE: Duplikácia je zlo.

Hlavnou úlohou každého systému, či už ide o webovú aplikáciu alebo niečo iné, je automatizácia opakujúcich sa úloh. Táto zásada by sa mala dodržiavať vždy a všade, najmä ak ste vývojár. Ten istý kód by sa nemal opakovať znova a znova.

Napríklad väčšina webových aplikácií pozostáva z jednej alebo viacerých stránok. Je jasné, že tieto stránky budú obsahovať rovnaké prvky. Hlavička, päta - najvýraznejšie príklady. Boli by ste prekvapení, koľko ľudí stále duplikuje tieto prvky na každej stránke.

$this->load->view("includes/header"); $this->load->view($main_content); $this->load->view("includes/footer");

7. Vyhnite sa hlbokému hniezdeniu

Čitateľnosť kódu je drasticky znížená, ak máte hlboké hniezdenie.

Funkcia do_stuff() ( // ... if (is_writable($folder)) ( if ($fp = fopen($file_path,"w")) ( if ($stuff = get_some_stuff()) ( if (fwrite($ fp,$stuff)) ( // ... ) else ( return false; ) ) else ( return false; ) ) else ( return false; ) ) else ( return false; ) )

Ak chcete situáciu napraviť, mali by ste prehodnotiť, ako váš kód funguje, a optimalizovať ho:

Funkcia do_stuff() ( // ... if (!is_writable($folder)) ( return false; ) if (!$fp = fopen($file_path,"w")) ( return false; ) if (!$stuff = get_some_stuff()) ( return false; ) if (fwrite($fp,$stuff)) ( // ... ) else ( return false; ) )

8. Obmedzenie dĺžky vedenia

Každý vie, že proces čítania sa stáva oveľa príjemnejším, keď je text rozdelený do stĺpcov. Toto je hlavný dôvod, prečo naše noviny vyzerajú takto:

Podobnú techniku ​​možno použiť aj na náš kód:

// zlý $my_email->set_from(" [chránený e-mailom]")->add_to(" [chránený e-mailom]")->set_subject("Methods Chained")->set_body("Niektorá dlhá správa")->send(); // ok $my_email ->set_from(" [chránený e-mailom]") ->add_to(" [chránený e-mailom]") ->set_subject("Methods Chained") ->set_body("Nejaká dlhá správa") ->send(); // zlý $query = "VYBRAŤ id, užívateľské meno, meno, priezvisko, stav FROM užívateľov LEFT JOIN user_posts POUŽITÍM (users.id, user_posts.user_id) WHERE post_id = "123""; // zlý $query = "SELECT id, username, first_name, last_name, status FROM users LEFT JOIN user_posts USING(users.id, user_posts.user_id) WHERE post_id = "123"";

Väčšina vývojárov sa drží limitu 80 a 120 znakov.

9. Organizovanie súborov a priečinkov

Technicky môžete celý kód aplikácie vložiť do jedného súboru :) Ale čo urobíte, keď budete potrebovať niečo zmeniť alebo pridať.

Pamätám si svoje prvé projekty, kde som pripájal súbory. Moja organizácia však veľmi pokrivkávala. Vytvoril som priečinok „inc“, do ktorého som umiestnil niekoľko súborov: db.php a functions.php. V procese písania žiadosti bol tento priečinok nafúknutý a nafúknutý a nakoniec bolo ťažké pochopiť, čo kde je.

Na vyriešenie tohto problému je lepšie použiť rôzne druhy rámcov, alebo sa aspoň držať ich štruktúry. Takto vyzerá projekt na CodeIgniter:

10. Názvy premenných

Vo všeobecnosti by mali byť názvy premenných plne zmysluplné – to je ideálne. Výnimku možno urobiť pre dočasné premenné.

Pozrime sa na niekoľko príkladov:

// $i pre cykly for ($i = 0; $i< 100; $i++) { // $j для вложенных циклов for ($j = 0; $j < 100; $j++) { } } // $ret для возвращаемых переменных function foo() { $ret["bar"] = get_bar(); $ret["stuff"] = get_stuff(); return $ret; } // $k и $v для foreach foreach ($some_array as $k =>$v) ( ) // $q, $r a $d pre mysql $q = "SELECT * FROM table"; $r = mysql_query($q); while ($d = mysql_fetch_assocr($r)) ( ) // $fp pre prácu so súbormi $fp = fopen("file.txt","w");

11 - Kľúčové slová v SQL píšte veľkými písmenami

Väčšina webových aplikácií spolupracuje s databázami. Ak si píšete SQL dotazy sami, potom je potrebné ich aj zodpovedajúcim spôsobom naformátovať ... Tu nie je nič zložité. Stačí napísať kľúčové slová veľkými písmenami.

12. Oddeľte kód a údaje

Toto je ďalší princíp, ktorý vám pomôže písať čistejšie programy. Spočíva v tom, že na jednom mieste pripravíte dáta (povedzme modely) a na inom s nimi interagujete.

Keď PHP prvýkrát začalo, bolo to skôr ako systém šablón. Projekty v tomto jazyku obsahovali zmiešaný kód HTML a PHP. Teraz sa všetko zmenilo a každý by mal prejsť na novú úroveň písania aplikácií.

Môžete si vypracovať pre seba nejaký špeciálny štýl, alebo môžete použiť doteraz najpopulárnejšie prostriedky.

Populárne rámce PHP:

Systémy šablón:

Populárny CMS

13. Špeciálna syntax pre šablóny

Ak nechcete používať šablónovací systém, potom si s najväčšou pravdepodobnosťou budete musieť vyvinúť vlastný štýl vkladania PHP kódu do HTML.

A tu je príklad:

Ahoj, užívateľské meno; ?>
|

Moja nástenka

titul; ?>

Fóra ako $forum): ?>

id, $forum->title) ?> (vlákna->pocet(); ?>vlákna)

popis; ?>

Táto technika vám umožní vyhnúť sa nadbytočným zátvorkám. Takýto kód tiež dobre zapadá do kontextu HTML.

14. Procedurálne a objektovo orientované prístupy

Objektovo orientované programovanie vám pomôže držať sa viac-menej jasnej štruktúry, ale to neznamená, že by ste sa mali odkláňať od procedurálnych princípov písania aplikácií.

Objekty sú skvelé na reprezentáciu údajov. Príklad:

Class User ( public $username; public $first_name; public $last_name; public $email; public function __construct() ( // ... ) public function create() ( // ... ) public function save() ( / / ... ) public function delete() ( // ... ) )

Procedurálne metódy majú svoje špecifické využitie.

Funkcia capitalize($string) ( $ret = strtoupper($string); $ret .= strtolower(substr($string,1)); return $ret; )

15. Prečítajte si otvorený zdrojový kód

Projekty Open Source zvyčajne píše veľké množstvo vývojárov. Z tohto hľadiska vám štúdium písaného kódu v podobných projektoch môže pomôcť získať skúsenosti. Tak na to nestrácajte čas.

16. Refaktoring

Refaktoring je zmena kódu bez straty funkčnosti. Dá sa použiť aj na zlepšenie čitateľnosti.Neexistuje priestor na opravu chýb alebo pridávanie funkcií. Stačí trochu zmeniť štruktúru kódu.

Dúfam, že tento článok bol pre vás užitočný! Uniká mi niečo? Podeľte sa o svoje skúsenosti!

Jedného dňa ste sa rozhodli vytvoriť si vlastnú webovú stránku alebo blog a ako systém správy ste si vybrali WordPress... Postupom času sa vaša stránka stáva čoraz čitateľnejšou a potom ste si uvedomili, že pre ešte väčšiu popularitu je potrebné pridať nejaké funkcie na stránku alebo len automatizovať nejakú tú akciu.

Idete do „skladu“ pluginov pre wordpress a zistíte, že plugin, ktorý potrebujete, tam nie je. Čo robiť? Ako byť? Ak sa aspoň trochu orientuješ v základoch programovania v php, layoute, tak to nebude pre teba ťažké Napíšte si vlastný plugin pre WordPress.

A teraz poďme do „kuchyne“ pripraviť náš plugin.

P.s. Ak sa nevyznáte v php a rozložení... nehnevajte sa, požiadajte niekoho, aby vám napísal potrebnú funkcionalitu 🙂

Než začnete písať plugin, musíte si prečítať dokumentáciu WordPress, ktorá popisuje základné princípy písania pluginov a niektoré príklady kódu.

Nebudem duplikovať tieto informácie, ale okamžite prejdem priamo k písaniu kódu.

Poďme si napísať jednoduchý plugin, ktorý vám umožní ukladať a zobrazovať recenzie o vašej stránke. Samozrejme, že už také pluginy existujú, ale napríklad to postačí.

Prvá vec, ktorú urobíme, je prísť s jedinečným názvom pre náš doplnok – “ AdvUserReviews«.

Ďalej vytvorte nový adresár s názvom „advuserreviews“ v adresári „/wp-content/plugins/“ vašej stránky. A v ňom vytvoríme súbor „advuserreviews.php“. Toto bude hlavný súbor, ktorý bude zodpovedný za všeobecnú inicializáciu. (Pre súbory používajte radšej kódovanie UTF-8).

Na samom začiatku súboru musíte zadať základné informácie o doplnku

Ak teraz prejdete na ovládací panel, môžete vidieť, že systém našiel nový doplnok a ponúka jeho aktiváciu. Na to je však ešte priskoro.

Náš nový plugin napíšeme v štýle OOP a všetko spracovanie dát bude v jednom súbore. Vytvorme hlavný rámec súboru.

// Zastavenie priameho volania if(preg_match("#" . basename(__FILE__) . "#", $_SERVER["PHP_SELF"])) ( die("Nemôžete volať túto stránku priamo."); ) ak (!class_exists("AdvUserReviews")) ( class AdvUserReviews ( // Verejné ukladanie interných údajov $data = array(); // Konštruktor objektu // Inicializácia funkcie hlavných premenných AdvUserReviews() ( ) ) ) global $price; $cena = new AdvUserReviews();

Teraz pridajte nasledujúci kód do konštruktora objektu:

Funkcia AdvUserReviews() ( global $wpdb; // Deklarujte konštantu inicializácie nášho pluginu DEFINE("AdvUserReviews", true); // Názov súboru nášho pluginu $this->plugin_name = plugin_basename(__FILE__); // URL pre náš plugin $ this->plugin_url = trailingslashit(WP_PLUGIN_URL."/".dirname(plugin_basename(__FILE__))); // Tabuľka na ukladanie našich recenzií // premenná $wpdb musí byť deklarovaná globálne $this->tbl_adv_reviews = $wpdb->prefix "adv_reviews"; // Funkcia, ktorá sa vykoná pri aktivácii doplnku register_activation_hook($this->názov_pluginu, array(&$this, "activate")); // Funkcia, ktorá sa vykoná, keď je doplnok deaktivovaný register_deactivation_hook($this ->plugin_name, array (&$this, "deactivate")); // Funkcia, ktorá sa vykoná po odinštalovaní doplnku register_uninstall_hook($this->plugin_name, array(&$this, "uninstall")); )

V konštruktore objektov používame 3 „háky“ alebo „háky“ (čo je to?): register_activation_hook, register_deactivation_hook A register_uninstall_hook- to sú funkcie, ktoré sa vykonávajú pri aktivácii, deaktivácii a odstránení pluginu.

Teraz poďme implementovať tieto funkcie priamo.

/** * Aktivácia doplnku */ function activate() ( global $wpdb; require_once(ABSPATH . "wp-admin/upgrade-functions.php"); $table = $this->tbl_adv_reviews; // Určenie verzie mysql, ak ( version_compare(mysql_get_server_info(), "4.1.0", ">=")) ( if (! empty($wpdb->charset)) $charset_collate = "PREDVOLENÁ MADA ZNAKOV $wpdb->charset"; if (! empty( $wpdb->collate)) $charset_collate .= " COLLATE $wpdb->collate"; ) // Štruktúra našej kontrolnej tabuľky $sql_table_adv_reviews = " CREATE TABLE `.$wpdb->prefix."adv_reviews` (`ID` INT(10) UNSIGNED NULL AUTO_INCREMENT, `review_title` VARCHAR(255) NOT NULL DEFAULT "0", `review_text` TEXT NOT NULL, `review_date` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, `LLNU`review_CHAR_name`us,0`review_user_name`0 VARCHAR(200) NULL, PRIMARY KEY (`ID`))".$charset_collate.";"; // Skontrolujte, či tabuľka existuje, ak ($wpdb->get_var("zobraziť tabuľky ako "".$table."" " ) != $table) ( dbDelta($sql_table_adv_reviews); ) ) /** * Deact vyvolanie pluginu */ function deactivate() ( return true; ) /** * Odstráňte doplnok */ function uninstall() ( global $wpdb; $wpdb->query("DROP TABLE IF EXISTS ($wpdb->prefix)adv_reviews"); )

Variabilné $wpdb je zodpovedný za dotazy do databázy. Funkcia dbDelta analyzuje aktuálnu štruktúru tabuľky, porovná ju s požadovanou štruktúrou tabuľky a podľa potreby tabuľku buď pridá alebo upraví.

Podľa toho sa pri aktivácii doplnku vytvorí tabuľková štruktúra na ukladanie recenzií. Keď je doplnok deaktivovaný, nevykoná sa žiadna akcia, ale keď ho vymažeme, vymažeme našu tabuľku. Podrobnejšie akcie možno pochopiť zo zdrojového kódu.

Základná štruktúra nového pluginu je hotová. Teraz musíme začať písať funkčnú časť. Aby sme to dosiahli, musíme do konštruktora triedy pridať nasledujúce riadky kódu:

// Ak sme v admin. interface if (is_admin()) ( // Pridať štýly a skripty add_action("wp_print_scripts", array(&$this, "admin_load_scripts")); add_action("wp_print_styles", array(&$this, "admin_load_styles")); // Pridať ponuku pre doplnok add_action("admin_menu", array(&$this, "admin_generate_menu")); ) else ( // Pridať štýly a skripty add_action("wp_print_scripts", array(&$this, "site_load_scripts" )) ; add_action("wp_print_styles", array(&$this, "site_load_styles")); add_shortcode("show_reviews", array (&$this, "site_show_reviews")); )

Pozrime sa bližšie na túto časť kódu. Začnime s administračným panelom.
Funkcia " is_admin» skontroluje, v akom režime práve pracujeme – na stránke alebo v ovládacom paneli.
Ďalej sa používa niekoľko háčikov pre funkcie:

  • wp_print_scripts- Pridajte požadované súbory javascript
  • wp_print_styles- Pridajte potrebné štýly
  • admin_menu- Pridajte novú ponuku do ovládacieho panela

Každý háčik zodpovedá metóde implementovanej v našej triede. v ktorých sa vykonávajú potrebné operácie.
Zvážte kód na prepojenie štýlov a skriptov

/** * Načítajte potrebné skripty pre stránku správy * na paneli admin */ funkcia admin_load_scripts() ( // Registrácia skriptov wp_register_script("advReviewsAdminJs", $this->plugin_url . "js/admin-scripts.js") ; wp_register_script( "jquery", $this->plugin_url . "js/jquery-1.4.2.min.js"); // Pridanie skriptov na stránku wp_enqueue_script("advReviewsAdminJs"); wp_enqueue_script("jquery"); ) /** * Načítavanie požadovaných štýlov pre stránku správcu * na paneli správcu */ funkcia admin_load_styles() ( // Registrácia štýlov wp_register_style("advReviewsAdminCss", $this->plugin_url . "css/admin-style.css") ; // Pridať štýly wp_enqueue_style( "advReviewsAdminCss"); )

Používajú sa tu nasledujúce funkcie.

Každá akcia závisí od odovzdaného parametra „action“, respektíve „edit“ – úprava recenzie, „submit“ – uloženie upravenej recenzie a „delete“ – vymazanie recenzie.

Údaje sa vymieňajú so zobrazovanými stránkami prostredníctvom vlastnosti "data" objektu. Zdrojový kód týchto stránok bude zverejnený v archíve s týmto modulom na konci článku. Tu ich nebudem vkladať, keďže téma sa už ukázala ako dosť veľká.

Týmto sa ukončí administračný panel a prejde sa k zobrazovaniu a pridávaniu spätnej väzby od používateľov.

Aby sme wordpressu povedali, kedy máme zavolať náš plugin, musíme zaregistrovať „shortcode“, čo sme urobili v konštruktore našej triedy. Viac o tom.

Add_shortcode("show_reviews", pole (&$this, "site_show_reviews"));

Teraz môžete tento kód umiestniť na ktorúkoľvek stránku webu a prinúti sa vykonať funkciu, ktorú sme zadali (zadanú ako druhý parameter). Nižšie je uvedený zdrojový kód tejto funkcie.

/** * Zoznam recenzií stránok */ public function site_show_reviews($atts, $content=null) (globálne $wpdb; if (isset($_POST["action")]) && $_POST["action"] == " add-review") ( $this->add_user_review(); ) // Vybrať všetky recenzie z databázy $this->data["reviews"] = $wpdb->get_results("SELECT * FROM `" . $this- >tbl_adv_reviews . "`", ARRAY_A); ## Zapnúť ukladanie do vyrovnávacej pamäte výstupu ob_start (); include_once("site_reviews.php"); ## Získať údaje $output = ob_get_contents (); ## Vypnúť ukladanie do vyrovnávacej pamäte ob_end_clean (); return $output ; ) súkromná funkcia add_user_review() ( globálne $wpdb; $inputData = array("review_title" => strip_tags($_POST["review_title"]), "review_text" => strip_tags($_POST["review_text"]) , " review_user_name" => strip_tags($_POST["review_user_name"]), "review_user_email" => strip_tags($_POST["review_user_email"]),); // Pridať novú recenziu na stránku $wpdb->insert( $this-> tbl_adv_reviews, $inputData); )

V zásade tu nie je nič zložité - na výber údajov sa vykoná dotaz SQL, ale ak sa odovzdá parameter „akcia“, najskôr sa pridá nová recenzia. Ale mali by ste venovať pozornosť výstupnej vyrovnávacej pamäti. Je to potrebné na získanie údajov vloženej stránky.

To je vlastne všetko. Teraz môžete vidieť, čo máme. A stiahnuť plugin a zdrojové kódy môžete tu.

Samozrejme, toto je len príklad vytvorenia pluginu, ale bude fungovať aj ako jednoduchá hosťovská izba, ak sa mierne upraví, napríklad pridá ochranu pred robotmi a stránkovanie. Šťastné kódovanie :)

Webový formulár:

Ovládací panel pluginu:

Skontrolovať úpravu:

Tiež by vás mohlo zaujímať:


Dobrý deň, milí čitatelia! Už som spomenul, že je dôležité mať po ruke dobrú zbierku užitočných útržkov kódu (vložiek). Boli však zvážené. Dnešný príspevok bude venovaný úryvkom kódu, ktoré možno použiť na rozšírenie alebo zlepšenie práce webu na . Zbierka pozostáva z 10 útržkov kódu. Začíname:

Stránkovanie bez doplnku

Dynamický text autorských práv

Tento úryvok vám umožňuje vytvoriť jednoduchý text chránený autorskými právami v päte. Dátum sa nastaví automaticky, funkcia sa použije dátum().
Stačí skopírovať úryvok do svojho footer.php:

< b>(c)
| < a href= "" >
|

Informácie o používateľovi

WordPress umožňuje používateľom pridávať informácie o sebe do svojho profilu vo WP Admin. Ak chcete zobraziť informácie o používateľovi, môžete použiť tento úryvok:

Aby tlačidlo fungovalo, musíte sa pripojiť k , pridajte nasledujúci riadok do súboru hlavička.php:

< script type= "text/javascript" src= "https://apis.google.com/js/plusone.js">

PHP kód v texte

Niekedy pri písaní článku potrebujete vložiť kód, ale ak ho len vložíte, nezobrazí sa. Aby sme tomu zabránili, používame nasledujúci fragment, ktorý musí byť pridaný do súboru funkcie.php témy:

Nezabudnite odstrániť medzery v štítkoch!
A funguje to nasledovne, na mieste, kde potrebujete vložiť PHP kód, vyberte ho takto:

[kód][/code]

Vylúčiť príspevky z domovskej stránky

Ak chcete vylúčiť všetky príspevky akejkoľvek kategórie z hlavnej stránky, môžete použiť tento úryvok a musíte ho pridať do súboru funkcie.php Vaša téma:

1
2
3
4
5
6
7
8
9

funkcia vylučCat($query ) (
if ( $query -> is_home ) (
$dotaz -> set ("mačka" , "-3,-5,-23" );
}
návrat $dotaz ;
}
add_filter("pre_get_posts" , "excludeCat" );
?>

Drobčeky bez pluginu

Na ochutnanie tu je úryvok kódu, pomocou ktorého môžete na blogu usporiadať takzvané „omrvinky“, ide o doplnkový navigačný prvok, keď sa cesta zobrazuje vo forme odkazov na stránky s vyšším hodnotením. stránku kategórie a hlavnú stránku. Niečo takéto (Domov->Kategória 1->Názov článku). Tento útržok kódu musí byť vložený do súboru funkcie.php Vaša téma:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33

funkcia the_breadcrumb() (
ozvena"

    " ;
    if (! is_home() ) (
    ozvena"
  • echo get_option("domov" );
    echo "">" ;
    echo "Domov";
    ozvena"
  • " ;
    if (is_category() || is_single() ) (
    ozvena"
  • " ;
    the_category("
  • " ) ;
    if (is_single() ) (
    ozvena"
  • " ;
    nadpis() ;
    ozvena"
  • " ;
    }
    ) elseif (is_page() ) (
    ozvena"
  • " ;
    echo the_title() ;
    ozvena"
  • " ;
    }
    }
    elseif (is_tag() ) ( single_tag_title() ; )
    elseif (is_day() ) ( echo "
  • Archivovať pre " ; the_time("F jS, Y" ) ; echo "
  • " ; }
    elseif (is_mesiac() ) ( echo "
  • Archivovať pre " ; the_time("F, Y" ) ; echo "
  • " ; }
    elseif (is_year() ) ( echo "
  • Archivovať pre " ; the_time("Y" ) ; echo "
  • " ; }
    elseif (is_author() ) ( echo "
  • Archív autorov "; ozvena"
  • " ; }
    elseif (isset ($_GET [ "stránkované" ] ) && ! prázdne ($_GET [ "stránkované" ] ) ) ( echo "
  • Archív" ; echo "
  • " ; }
    elseif (is_search() ) ( echo "
  • Výsledky vyhľadávania"; ozvena"
  • " ; }
    ozvena"
" ;
}
?>

Ak chcete použiť tieto „strúhanky“, pridajte do súborov nasledujúcu funkciu (archive.php, category.php, page.php, single.php, search.php):

Vzhľad "strúhanky" ponecháva veľa na želanie) Preto budete musieť pracovať na štýloch!

To je všetko =)

Ak chcete byť informovaní o najnovších článkoch a lekciách, prihláste sa na odber



Načítava...
Hore