WordPress bemutató: Hogyan hozzunk létre egy ajánlást beépülő modult

Tehát itt vagyunk a WordPress második heti bemutatójára. A múltban megtanultuk, hogyan lehet létrehozni egy végtelen gördülő WP-helyet és az oldalsó flip-plugint. Ma kicsit többet megtudhatunk az egyéni üzenettípusokról és az adatok betöltéséről.


Ez a szolgáltatás nagyon fontos az Ön webhelyén, mivel lehetővé teszi, hogy mutassa meg az embereknek az ajánlásaikat. A beszámolók nagyszerű társadalmi igazolást nyújtanak a félelmetedről. És ennek eléréséhez nincs szüksége összetett pluginekre vagy sok kódra, mivel néhány fájlkal látva szexi prezentációt hozhat létre az ajánlásokhoz.

Akkor kezdjük el!

Postai irányítószám & Telepítés

Ha sietsz ellenőrizni ezt, akkor töltse le és telepítse.

Akkor hozzá kell adnia néhány adatot, és néhány új beszámoló hozzáadásával a vadonatúj ajánlások segítségével láthatja az irányítópulton:

list-ajánlások

Ezután használhatja az alapvető rövid kódot, hogy betöltse:

[ajánlások rand = 0 max = 5]

Amikor hozzáadta ezt a kódot, az oldalain hasonlót fog látni:

fő-ajánlások

Most meglátjuk, hogyan lehet ezt létrehozni és feltárni (további funkciók hozzáadásával és a megjelenés megváltoztatásával).

Az alapok

Mint korábban már említettük, hozzá kell adnia a fejléc metaadatait, létre kell hoznia a plugin fájlt és fel kell hívnia a szkripteket. Röviden: új mappát hoz létre a wp-content / plugins alatt a plugin nevével, majd létrehoz egy mappával megegyező nevű fájlt, amely a fő plugin fájl lesz.

Miután elvégezte a másolást és beillesztést az alábbiak szerint:

<?php
/ *
Bővítmény neve: ajánlások
Leírás: Vevői beszámolók megjelenítése.
Verzió: 1.0
Szerző: Web Revenue Blog
Engedély: GPL2
* /

// szkriptek és stílusok elvarázsolása
function plugin_scripts () {
wp_enqueue_script ( ‘jQuery’);
wp_enqueue_script (‘flexslider’, plugins_url (‘js / jquery.flexslider-min.js’, __FILE__), tömb (‘jquery’), ‘2.2’, hamis);
wp_enqueue_script (‘ajánlások’, plugins_url (‘js / testimonials.js’, __FILE__), tömb (‘jquery’), ‘1.0’, hamis);
wp_enqueue_style (‘flexsliderCSS’, plugins_url (‘css / flexslider.css’, __FILE__), hamis, ‘2.2’, ‘all’);
wp_enqueue_style (‘testimonialsCSS’, plugins_url (‘css / testimonials.css’, __FILE__), false, ‘1.0’, ‘all’);
}
ADD_ACTION ("wp_enqueue_scripts","plugin_scripts");

Itt van, amit csinálunk:

  • Mondja el a WP-nek, mi a plugin neve, szerző, mit csinál
  • Funkció létrehozása, amelybe szokásos szkripteket (mint például a jQuery) és egyéni szkripteket (mint például a flexslider) és stíluslapokat beszúrunk
  • Mondja a WP-nek, hogy töltse be a szkriptek funkciót az alapértelmezett szkripthívásban, így azok valóban betöltésre kerülnek az oldalakon

Ez mind nagyon jó, de ne felejtsük el, hogy a / js és / css mappákba való fájlokat valóban létrehozzuk. Csak letöltheti azokat a demo-tartalomba, így nem kell sokat ásnia a flexslider fájlok megtalálásához.

Most már minden alapvető dolog van a helyén, hogy elindíthatjuk a vicces részt.

Az egyedi üzenet típusa

Alapértelmezés szerint a WordPressnek két általános postai típusa van: oldalak és hozzászólások. De nagyon sok belső üzenettípus (például mellékletek) is van, tehát a „post type” meghatározása: Minden típusú adat, amelyet tárolni kell.

Mivel a bővítményünk új funkcionalitást fog létrehozni, a WP-nek nincs beépített helye annak tárolására, ezért létre kell hoznunk. Ne félj a szöcskétől, ez nagyon egyszerű, használhatja ezt a kódot:

// a fekete mágia a postai típus létrehozásához
create_post_type () függvény {
register_post_type (
„ajánlások”, // új üzenet típusa
sor(
‘címkék’ => sor(
‘név’ => __ („Ajánlások”),
‘szinguláris_név’ => __ (‘Testimonial’)
),
‘nyilvános’ => igaz, / * Az üzenet típusa nyilvános használatra készült. Ide tartozik a kezelőfelület és a wp-admin. * /
‘támogatja’ => array ( ‘cím’, ‘szerkesztő’, ‘áttekintő’, ‘Custom_Fields’),
‘hierarchikus’ => hamis
)
);
}

Itt csak a register_post_type () függvényt használjuk, hogy elmondjam a WP-nek: “Hé, haver, ezt a fajta adatot kell tárolnunk, kérjük, készen álljon arra, hogy megkapja”.

Azt is elmondjuk neki, hogy az ilyen jellegű adatokat „ajánlásoknak” hívják, nyilvános hozzáférésnek rendelkezésre kell állniuk (tehát valójában egy új menüpontot hoz létre ehhez az irányítópulton), a mezõket, amelyekre szükségünk van, és ha azok hierarchikusak vagy sem (például olyan oldalak, amelyeknek szülő és gyermek oldalai vannak).

Ezután minden alkalommal meg kell hívnunk, amikor betöltjük a WordPress programot. Ez a horog meg fogja csinálni:

add_action (‘init’, ‘create_post_type’);

Az egyedi mezők

Most az egyedi postai típusunknak van címe (személy neve), tartalma (személyi beszámoló), egy kép (kiemelt kép), de hiányzik egy link, mivel ha a személy elég kedves rólad beszélni, akkor legalább hivatkoznia kell a helyük, igaz?

Ezt megtehetjük a szokásos egyéni mezőkkel, de sokkal jobb, ha van egy „zárt” mező, ahol a felhasználónak nem kell beírnia a mező nevét, és ahol hozzá lehet adni néhány érvényesítési szabályt.

Mindenekelőtt létre kell hoznunk egy új metaboxot, amely azok a szép panelek, amelyek a szerkesztés utáni területen vannak, mindegyik kis panel egy metabox. Ez a funkció létrehozza és meghívja:

// hozzáadva az URL meta box mezőt
add_custom_metabox () függvény {
add_meta_box (‘custom-metabox’, __ (‘Link’), ‘url_custom_metabox’, ‘ajánlások’, ‘oldal’, ‘alacsony’);
}
add_action (‘admin_init’, ‘add_custom_metabox’);

Az add_meta_box () függvény a következő paramétereket igényli:

  1. ID – az egyedi azonosító. Használhat itt bármi különlegeset, például „egyszarvú étkezési szivárvány” vagy „bizonysági link”. Bármi, ami belsőleg használható
  2. Cím – Mit jelenít meg a felhasználó? Fontos itt az __ () függvény használata, ez az a funkció, amely lehetővé teszi az idegen nyelvű felhasználók számára, hogy lefordítsák plugin-ját .po fájlokkal (plugin-fájlok szerkesztése nélkül)
  3. Visszahívás – Az a funkció, amellyel megvan a metabox tényleges tartalma
  4. Post Type – A mi esetünkben azt akarjuk, hogy csak a beszámolók számára legyen látható
  5. Kontextus – Hol jelenik meg az oldal
  6. Prioritás – ha az azonos pozícióban lévő többi elem előtt vagy utánuk kellene lennie

Most létre kell hoznunk az url_custom_metabox () függvényt, mivel ezt neveztük el.

// HTML az adminisztrációs területhez
funkció url_custom_metabox () {
globális $ post;
$ urllink = get_post_meta ($ post->Azonosító, ‘urllink’, igaz);

// érvényesítése!
if (! preg_match ( "/ Http (s): ///", $ urllink) && $ urllink! = "") {
$ hibák = "Ez az URL érvénytelen";
$ urllink = "http: //";
}

// output invlid url üzenetet, és adja hozzá a http: // -et a beviteli mezőhöz
if (isset ($ hibák)) {echo $ hibák; }
?>

URL:

<?php
}

Rendben, most lefordítva ezt egyszerű angolra:

  • A $ post globális változó neve, tehát tudjuk, melyik az aktuális elem POSTID-je
  • Betölti az URL aktuális értékét
  • Megerősítjük, ha a felhasználó által beillesztett érték érvényes. Ha van legalább egy „http” vagy „https” előfordulás, akkor az érték rendben van, különben érvényes, és az alapértelmezett értéket kell használnunk
  • Akkor megmutatjuk a hibákat, ha vannak ilyenek
  • Most elindítjuk a tényleges HTML-t, hozzáadva az alapértelmezett értéket a beviteli mezőhöz, ahogyan a PHP-ben megvan

Ez után ténylegesen meg kell mentenünk azt, amit a felhasználó küld. A „save_post” kampót fogjuk használni, tehát minden alkalommal, amikor a WordPress elmenti egy üzenetét, ezt a funkciót hívja:

// az egyedi mezőadatokat menti
save_custom_url ($ post_id) funkció {
globális $ post;

if (isset ($ _ POST [‘siteurl’]))) {
update_post_meta ($ post->ID, ‘urllink’, $ _POST [‘siteurl’]);
}
}
add_action (‘save_post’, ‘save_custom_url’);

Itt csak ellenőrizni kell, hogy vannak-e a „belső link” elnevezésű postai adatok, ami a mezőnév. Ha van belső link, mentsük el.

Miután minden a helyén van, így néz ki az új ajánlóoldal:

új ajánlólevél

Az egyedi adatok betöltése

Most ténylegesen be kell töltenünk elemeinket, és a get_posts () függvényt fogjuk használni, főleg azért, mert csak egyszerű adatokkal rendelkezünk, tehát nincs szükségünk megfelelő WP hurokra (ami sok DB hívást eredményezne, és tényleg nem nem kell).

Tehát először hozzunk létre egy funkciót webhelyünk linkjének lekérésére, ha van ilyen.

// egy bejegyzés visszatérő URL-je
get_url ($ post) függvény {
$ urllink = get_post_meta ($ post->Azonosító, ‘urllink’, igaz);

return $ urllink;
}

Most elindíthatjuk a rövid kód funkciót. A rövid kód adatok alapértelmezésének és érvényesítésének egyszerű módja a hurok attribútumainak létrehozása tömbként, így új elemeket adhatunk hozzá, amikor szükségünk van rájuk, például:

// a rövid kód regisztrálása az ajánlások bemutatására
function load_testimonials ($ a) {

$ args = tömb (
"POST_TYPE" => "beszámolók"
);

if (isset ($ a [‘rand’]) && $ a [‘rand’] == igaz) {
$ args [‘orderby’] = ‘rand’;
}
if (isset ($ a [‘max’])) {
$ args [‘posts_per_page’] = (int) $ a [‘max’];
}
// az összes beszámoló beszerzése
$ posts = get_posts ($ args);

// HTML KIMENET
}
add_shortcode ("beszámolók","load_testimonials");

Mint láthatja, a shortcode attribútumok betöltődtek és átadódnak az $ args tömbnek, amikor érvényesítik őket, a WordPress számára szükséges formátumban, így betölteni tudjuk őket.

Most hozzá kell adnunk néhány HTML kódot, követve a flexslider alapértelmezett struktúráját. Így fog kinézni:

visszhang ”;
visszhang ”

    foreach ($ hozzászólás $ postként) {
    // hüvelykujj beolvasása
    $ url_thumb = wp_get_attachment_thumb_url (get_post_thumbnail_id ($ post->ID));
    $ link = get_url ($ post);
    visszhang ”


  • if (! üres ($ url_thumb)) {echo ‘„ }
    visszhang ”

    ”. $ Bejegyzést->postai cím.’


    if (! üres ($ post->post_content)) {echo ‘

    ”. $ Bejegyzést->POST_CONTENT.
    „ }
    if (! üres ($ link)) {echo ‘Látogasson el a webhelyre

    „ }
    visszhang ”


  • }

    visszhang ”


visszhang ”;

Várj, de miért hoznánk létre HTML kódot a PHP függvényben? Ennek oka az, hogy feltételesen csak akkor tölthetjük be a tartalmat, ha a felhasználó hozzáadott tartalmat, így nem lesz üres HTML-címkéje, csak arra vár, hogy elrontja az elrendezését.

Mi lesz az oldalsávval??

A legtöbb ember csak azt akarja, hogy az ajánlások az oldalsávon jelenjenek meg, és ez a plugin nem fog igazán jól működni, mivel a szöveges kütyü nem dolgozza fel a rövid kódot. Ehhez egyszerű megoldás van, csak adja hozzá ezt a kódjához:

add_filter (‘widget_text’, ‘do_shortcode’);

Mi a következő lépés?

Szóval, élvezte ezt az oktatóprogramot? Mit adna hozzá egy opcióként az ajánlási rövid kódhoz? Van ötlete a jövőbeli hozzászólásokhoz? Tudassa velünk a megjegyzés szakasz segítségével!

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map