en ny klasse ramme dig

, en begynder nu klasse ramme,,,,, andel,,,,,,,, 8,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss.,, nu er standarden for god kode, den er fleksibel, dimensionerbare og kan forlænges.wordpress udviklere har brug for en ramme, som grundlag for deres kode, noget, der let kan blive overført til andre projekter for at redde opfinde hjulet to gange om ugen.det handler om at arbejde smartere, ikke mere!,,, er der intet værre end at aktivere et stik af, at finde, at den dræber din hjemmeside, fordi to stik af forfattere har en global funktion kaldes initialise()!alle har brug for et mål, kode, du skal ikke begynde at skrive noget (bog, stik af, tema eller forelæsning!)uden et klart defineret mål, hvor du vil hen med det. for denne forelæsning, vi skal bruge en grundlæggende oop klasse til at gøre følgende i et stik af.,, få links til barnet sider af den nuværende side, redde html snor i folkesundhedsprogrammet hukommelse for at redde af html mere end hvis vi er nødt til at vise sammenhængen to gange, fastlægges i en shortcode at redde rode rundt med emnet i kildekoden, trin 1 begynde at skabe den klasse, lad os begynde med at skabe en tom klasse, med intet andet end en konstruktør funktion og instantiating den til en global variabel (dette er virkelig cool, jeg forklarer senere.), <?php klasse oop_class {/* * * klasse konstruktøren * /funktion __construct() {}} //deltage.$oop_class = nye oop_class();?>,, trin 2, begynder at uddelegere funktioner, så begynder vi at delegere funktioner fra entreprenøren, definere nogle stik af veje og oprette adskilte funktioner at tilføje foranstaltninger til i wordpress, alle kaldte automatisk fra klassen konstruktøren. <?php klasse oop_class {/* * * klasse konstruktøren * /funktion __construct() {$- > plugin_defines(). $- > setup_actions();} /* * * definerer anvendes overalt i wordpress efter stik af er blevet indledt.* /funktion plugin_defines() {definere ('my_plugin_path, trailingslashit (wp_plugin_dir. "/". str_replace (basename (__file__), "", plugin_basename (__file__)))); at definere (' my_plugin_url, trailingslashit (wp_plugin_url. "/". str_replace (basename (__file__), "", plugin_basename (__file__))))) /* * * fælde de foranstaltninger, skulle de stik af i wordpress på passende steder * /funktion setup_actions() {}} //deltage.$oop_class = nye oop_class();?>,, trin 3 bygge nogle aktioner, det ser godt ud indtil videre, det er alle her, men det er virkelig ikke meget lige nu.lad os tage den nødvendige funktionalitet.,,, før de stik af enqueues fra template_redirect, //gøre noget på template_redirect, måske enqueue nogle manuskripter, men ikke i administrationen?hvis (!is_admin()) ($- > plugin_enqueues();}, og plugin_enqueues funktion: /* * *, der anvendes til at enqueue styles og manuskripter er nødvendige for stik af.* /funktion plugin_enqueues() (//enqueue jquery wp_enqueue_script ('jquery); //vores lokalitet manuskript wp_enqueue_script (' plugin_init, my_plugin_url. "js /lokalitet. js, system ('jquery')); //nogle grundlæggende måde. wp_enqueue_style ('plugin_style, my_plugin_url. "css /pluginstyles. css)}, fælde en klasse variable før konstruktøren (for at holde det pænt). //links til barnet sider.falske af misligholdelse.var $child_page_links = falske, definere den funktion at hente barnet side forbindelser og fastsætte html til formålet., * * * sæt barnet side forbindelser variabel i denne klasse.* /funktion set_child_page_links() (global $post; //få barnet sider af den nuværende side $børn = get_pages (array ('child_of = > $post - > id)); hvis (!tom ($børn): $ud = < div klasse = "child_page_wrapper" > '; //loop gennem barn sider, skaber ca. html med billede, sammenhængen og titlen på barnets side.for hvert ($børn som $barn) {$img = get_the_post_thumbnail ($barn - > id, virksomhed beskrevet) $afsnit = $barn - > post_title. $url = get_permalink ($barn - > id); $. = < div klasse = "child_page" > "$. = < en href =".esc_attr ($url). "> ".$img. "< span > ".esc_html ($afsnit).< /span > < /a > "$. = < /div >"} $. = < /div > '; andre: //, vi har ingen børn, vi er nødt til at være i stand til at klare det.$ud = falske endif. $- > child_page_links = $;}, og løb fra template_redirect funktion, //kun på en side.hvis (is_page()) ($- > set_child_page_links();}, løntrin 4 fælde den shortcode og model et!,,, det er her, det begynder at blive fed, som vores shortcode ikke vil have nogen muligheder, vi kan bruge det, der kaldes en "ambitiøs", som blot vender tilbage til klassen variabel., * * * frem for barnets side forbindelser * /funktion return_child_pages() {tilbage $- > child_page_links;), og denne funktion kan være koblet til de shortcode api - som så:, add_shortcode ('child_pages, system ($, return_child_pages "), også fordi vi har instantierede alt dette på template_redirect, er der ikke behov for at genskabe de forbindelser, vi kan bare spytte dem ud nogen steder, som denne:, <?php globale $oop_class; hvis ($oop_class - > child_page_links) (echo $oop_class - > child_page_links;}?>,, løntrin 5 ret den op, og javascript snippet.(dette er js /init.js i vores stik af mappe).dette fremhæver forbindelsen med den og anmoder om brugerens tilladelse til fortsat at barnet side. jquery (dokument). klar (funktion ($) {$(". child_page"). klik (function() (hvis (bekræfte ("er du sikker på, du vil gå til barnet?")){tilbage.} andre {tilbage falske}}). den (function() {$(dette). css ('baggrund, farve,&#efefef)}, function() {$(det). removeattr (»art«))))) og sidst, men ikke mindst, nogle grundlæggende css former for vores stik af (/css /pluginstyles.css).,. child_page_wrapper. child_page {flyde: venstre; bredde: 33%). child_page_wrapper. child_page en (display: blok.}. child_page_wrapper. child_page levetid (display: blok; tekst tilpasse: center;}. child_page_wrapper. child_page img {angive: blok; margen: 0 auto.}, pakker, denne klasse kan anvendes i næsten enhver situation, og er velegnet (men ikke begrænset til, til anvendelse i wordpress system.det kan anvendes, når et tema, og derefter en anden klasse fælde, for en integreret funktion (dvs. vi kan næsten kopi /pasta de enkelte funktioner fra projekt til projekt med lethed) og derefter igen til en hurtig skik, stik af for det cool funktionalitet, din klient behov, der er for meget i den foreliggende plugins, hvis skrevet til. være uafhængige "dele" af sted, så de klasser, let kunne ophæves til din næste projekt, at avancerede funktioner hurtigt og nemt for dig.men vi har ikke rørt på potentialet i klasser og genstande, det er en god start for at forstå den fleksibilitet og extendability af ups. også tage os i agt, at opbevaring af genstande, som det tager op i folkesundhedsprogrammet folkesundhedsprogrammet hukommelse, så brug thoughfully!!, forkortet, akronym. hjælp (grænse nederst: 1px stipledea7797; markør: hjælp;}

Child Pages
Child Pages
JavaScript Confirm



Previous:
Next Page: