Apró kódrészletek, amelyek kiterjesztik a WordPress funkcionalitását. Így lehetne jellemezni a töredékeket egy mondatban. A modulok is ezt a szerepet töltik be? Persze a természetükben nagyon hasonlóak, de két kulcsfontosságú tényező határozza meg a töredékek egyediségét: nem igényelnek telepítést, és minimális mennyiségük miatt nem terhelik a szervert.
Tartalom
Hogyan dolgozzunk a WordPress kódrészletekkel?
A töredékek tárolásának legáltalánosabb helye az aktív témában található functions.php fájl, és a wp-config.php fájlban is ugyanilyen hasznos lehet globális használatra. Csak nyisson meg egy szövegszerkesztőt, és adja hozzá a megfelelő kódot ezekhez a fájlokhoz. A töredékek manuális beszúrásának bizonyos hátránya, hogy kapcsolódnak az aktuálisan aktivált témához, kivéve a fent említett kivételt a wp-config.php esetén.
A megoldást a Code Snippets modul jelenti, amely szisztematikusan és az adminisztrációs környezet kényelmében működik, a saját kódok kötelező kiegészítése, módosítása, törlése mellett XML fájlon keresztüli mentését is kínálja. Az egyes kódrészletek szükség szerint aktiválhatók és kikapcsolhatók, a kódrészletek többoldalas telepítéshez is használhatók, és ennek a modulnak a szlovák fordítása mindenképpen bónusz lesz az Ön számára.
WordPress kódrészletek a gyakorlatban
A WordPress növekvő népszerűségével az érdekes kivonatok száma is növekszik. Az alábbi válogatás számos hasznos megoldásra mutat példát, a cikk végén található néhány hivatkozás más forrásokra.
Ez a részlet eltávolítja a WP verzió címkéjét az oldal fejlécéből
function remove_wp_version() { return ''; } add_filter('the_generator', 'remove_wp_version');
A fejlécbe beillesztjük a Google Apis jQuery-jét
if( !is_admin() ){ wp_deregister_script('jquery'); wp_register_script('jquery', ("http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"), false, ''); wp_enqueue_script('jquery'); }
vagy a Google Fonts szlovák ékezeteket támogató betűtípusa
function load_fonts() { wp_register_style ('googleFonts', 'http://fonts.googleapis.com/css?family=News+Cycle&subset=latin,latin-ext'); wp_enqueue_style( 'googleFonts'); } add_action('wp_print_styles', 'load_fonts');
Az adminisztrátorok kivételével minden felhasználó számára kikapcsoljuk az adminisztrációs sáv megjelenítését
if (!current_user_can('administrator')): show_admin_bar(false); endif;
A felhasználó adatait a profiljában szerkesztjük
function new_contactmethods( $contactmethods ) { $contactmethods['twitter'] = 'Twitter'; // pridame Twitter $contactmethods['facebook'] = 'Facebook'; // pridame Facebook unset($contactmethods['yim']); // odoberieme Yahoo IM unset($contactmethods['aim']); // odoberieme AIM unset($contactmethods['jabber']); // odoberieme Jabber return $contactmethods; } add_filter('user_contactmethods','new_contactmethods',10,1);
Eltávolítjuk az előre beállított WordPress widgeteket
function unregister_default_widgets() { unregister_widget('WP_Widget_Pages'); unregister_widget('WP_Widget_Calendar'); unregister_widget('WP_Widget_Archives'); unregister_widget('WP_Widget_Links'); unregister_widget('WP_Widget_Meta'); unregister_widget('WP_Widget_Search'); unregister_widget('WP_Widget_Text'); unregister_widget('WP_Widget_Categories'); unregister_widget('WP_Widget_Recent_Posts'); unregister_widget('WP_Widget_Recent_Comments'); unregister_widget('WP_Widget_RSS'); unregister_widget('WP_Widget_Tag_Cloud'); unregister_widget('WP_Nav_Menu_Widget'); unregister_widget('Twenty_Eleven_Ephemera_Widget'); } add_action('widgets_init', 'unregister_default_widgets', 11);
Letiltjuk a vizuális szerkesztő használatát
add_filter('user_can_richedit' , create_function('' , 'return false;') , 50);
A hozzászólások listájából magunk választjuk meg a magunk hosszát
custom_excerpt_length($length) { return 100; } add_filter('excerpt_length', 'custom_excerpt_length');
A felhasználó bejelentkezése után módosítjuk az átirányítást
add_action('login_form', 'redirect_after_login'); function redirect_after_login() { global $redirect_to; if (!isset($_GET['redirect_to'])) { $redirect_to = get_option('siteurl'); // presmerujeme na homepage } }
A szerzőnek 7 napot adunk a már megjelent cikk szerkesztésére
function stop_post_editing_filter( $capauser, $capask, $param){ global $wpdb; $post = get_post( $param[2] ); if( $post->post_status == 'publish' ){ // obmedzenie bude platit pre rolu Autor if( $capauser['author'] == 1 ){ if( ( $param[0] == "edit_post") || ( $param[0] == "delete_post" ) ) { $post_time_unix = strtotime( str_replace('-', ':', $post->post_date ) ); $current_time_unix = time(); $diff = $current_time_unix - $post_time_unix; $hours_after_publication = floor( $diff / 60 / 60 ); // po 168 hodinach od publikovania bude automaticky vypnuta moznost dalsej upravy prispevku if( $hours_after_publication >= 168 ){ foreach( (array) $capask as $capasuppr) { if ( array_key_exists($capasuppr, $capauser) ) { $capauser[$capasuppr] = 0; } } } } } } return $capauser; } add_filter('user_has_cap', 'stop_post_editing_filter', 100, 3 );
A bejegyzés automatikus mentésének intervallumát 10 percre – 60 másodpercre x 10-re állítjuk (a wp-config.php fájlban)
define('AUTOSAVE_INTERVAL', 600);
Verziók közzétételének letiltása (a wp-config.php fájlban)
define('WP_POST_REVISIONS', false);
Vagy 5-re állítjuk a felülvizsgálat utáni korlátot
define('WP_POST_REVISIONS', 5)
5 naponta automatikusan kiürítjük a Lomtárat (a wp-config.php fájlban)
define('EMPTY_TRASH_DAYS', 5 );
Beszúrunk egy hivatkozást a bejegyzés szerkesztéséhez (pl. single.php vagy page.php fájlokban)
<?php edit_post_link ('Upraviť príspevok'); ?>
A WordPress-részletek leghíresebb forrásai
Vissza, vissza, vissza!
Murpy törvénye egyértelmű: minél nagyobb a hiba a kódban, annál váratlanabb lesz. Az esetleges bonyodalmak elkerülése érdekében ne felejtsen el biztonsági másolatot készíteni a szerkesztett fájlról és adatbázisról.
Létrehozta saját kivonatait, vagy felfedezett néhány érdekességet az internet barangolása közben? Írj nekünk róla kommentben.
Segített Önnek ez a cikk? Kérem, egy megosztással támogasson. 👍