startup-photos

Kas ir functions.php un kā to izmantot WordPress?


functions.php vai tēmas funkciju fails ir svarīgs fails, ko izmanto WordPress tēmas. Tas darbojas līdzīgi nelielam spraudnim un tiek automātiski ielādēts gan administratora panelī, gan publiskajās vietnes lapās. Parasti to izmanto, lai pievienotu funkcijas, klases, darbības (actions) un filtrus, kas tiek piemēroti tēmai. Ar šo failu var paplašināt tēmas funkcionalitāti un veikt izmaiņas WordPress darbībā.

Kur atrodas functions.php un kā to izmantot

Fails functions.php atrodas jūsu tēmas mapē:

wp-content/themes/temas_nosaukums/functions.php

Šajā failā jūs varat izmantot WordPress iebūvētās funkcijas, pievienot savas PHP funkcijas un pieslēgties kodola darbībām un filtriem. Katra instalētā tēma parasti satur savu functions.php failu, bet darbā tiek izmantots tikai aktīvās tēmas fails. Ja jūsu tēmai šī faila nav, jūs vienkārši varat izveidot teksta failu ar nosaukumu functions.php un ievietot to tēmas direktorijā.

Dēla tēmām (child themes) arī var būt savi functions.php faili. Tos izmanto, lai papildinātu vai pārrakstītu vecākās tēmas funkcionalitāti. Tas ļauj droši pievienot izmaiņas, neiejaucoties galvenās tēmas sākotnējā kodā.

Ko var darīt ar functions.php (ar piemēriem)

Fails functions.php ļauj paplašināt tēmas funkcionalitāti un pieslēgt savas funkcijas, hookus un filtrus. Zemāk ir galvenās iespējas un piemēri to realizācijai:

Miniatūru (thumbnails) atbalsta ieslēgšana:

add_theme_support( 'post-thumbnails' );

Jaunu ierakstu formātu pievienošana:

add_theme_support( 'post-formats', array( 'aside', 'gallery', 'quote' ) );

Navigācijas izvēlņu izveide:

register_nav_menus( array(
    'main_menu' => 'Galvenā izvēlne',
    'footer_menu' => 'Kājene izvēlne',
) );

Savu skriptu un stilu pieslēgšana:

function my_theme_scripts() {
    wp_enqueue_style( 'main-style', get_stylesheet_uri() );
    wp_enqueue_script( 'custom-js', get_template_directory_uri() . '/js/custom.js', array('jquery'), null, true );
}
add_action( 'wp_enqueue_scripts', 'my_theme_scripts' );

Automātiska teksta pievienošana katra ieraksta beigās:

function add_custom_text($content) {
    if (is_single()) {
        $content .= '<wp-p>Paldies par lasīšanu! Abonējiet jaunumus.</wp-p>';
    }
    return $content;
}
add_filter('the_content', 'add_custom_text');

Savau logrīku (widget) izveide:

class Welcome_Widget extends WP_Widget {
    function __construct() {
        parent::__construct('welcome_widget', 'Sveiciena logrīks');
    }
    function widget($args, $instance) {
        echo $args['before_widget'] . '<wp-p>Laipni lūdzam mūsu vietnē!</wp-p>' . $args['after_widget'];
    }
}
add_action('widgets_init', function() {
    register_widget('Welcome_Widget');
});

Lietotāja ierakstu tipa (Custom Post Type) reģistrācija:

function create_portfolio_post_type() {
    register_post_type('portfolio',
        array(
            'labels' => array('name' => 'Portfolio'),
            'public' => true,
            'has_archive' => true,
            'supports' => array('title', 'editor', 'thumbnail')
        )
    );
}
add_action('init', 'create_portfolio_post_type');

Ko labāk ievietot functions.php, un ko — spraudnī

Functions.php ir ideāli piemērots:

  • funkcijām, kas cieši saistītas ar tēmu un tās vizuālo daļu;
  • stilu, skriptu, izvēlnes, miniatūru, ierakstu formātu, logrīku, shortcodes un hooku pievienošanai tēmai.

Spraudni labāk izmantot, ja:

  • funkcionalitāte jāuztur neatkarīgi no tēmas (piemēram, SEO, kešēšana, sociālo tīklu integrācijas, kontaktformu funkcijas);
  • vēlaties saglabāt funkcionalitāti, pat ja maināt tēmu;
  • funkcija ir sarežģīta vai paredzēta vairākām vietnēm (spraudnis ļauj atkārtoti izmantot kodu).

Padomi darbam ar functions.php

  • Izmantojiet dēla tēmu (child theme), lai veiktu izmaiņas, tādējādi galvenās tēmas atjauninājumi neizdzēsīs jūsu funkcijas.
  • Minimālējiet kodu functions.php — ja funkcionalitāte ir liela vai universāla, labāk izveidot spraudni.
  • Vienmēr testējiet pievienotās funkcijas lokālā vai testa vietnē, lai nesabojātu produktīvo vietni.
  • Izmantojiet hookus (actions un filters), lai nemainītu WordPress kodolu un saglabātu saderību ar nākamajiem atjauninājumiem.

Secinājums

Fails functions.php joprojām ir galvenais instruments PHP funkciju pievienošanai un tēmas funkcionalitātes paplašināšanai. Tas ļauj elastīgi pielāgot vietni, pieslēgt stilus un skriptus, pievienot logrīkus, shortcodes un lietotāja ierakstu tipus.


Mūsu specializācija — WordPress vietņu izstrāde un uzturēšana. Kontakti bezmaksas konsultācijai — [email protected], +371 29394520


0 atbildes

Atbildēt

Vai vēlaties pievienoties diskusijai?
Jūtieties brīvi sniegt savu ieguldījumu!

Atbildēt