{"id":37040,"date":"2025-11-27T08:20:02","date_gmt":"2025-11-27T06:20:02","guid":{"rendered":"https:\/\/coma.lv\/2025\/11\/27\/kas-ir-functions-php-un-ka-to-izmantot-wordpress\/"},"modified":"2025-11-28T23:07:01","modified_gmt":"2025-11-28T21:07:01","slug":"kas-ir-functions-php-un-ka-to-izmantot-wordpress","status":"publish","type":"post","link":"https:\/\/coma.lv\/lv\/2025\/11\/27\/kas-ir-functions-php-un-ka-to-izmantot-wordpress\/","title":{"rendered":"Kas ir functions.php un k\u0101 to izmantot WordPress?"},"content":{"rendered":"<hr \/>\n\n<p style=\"text-align: left;\" data-start=\"209\" data-end=\"613\">functions.php vai t\u0113mas funkciju fails ir svar\u012bgs fails, ko izmanto WordPress t\u0113mas. Tas darbojas l\u012bdz\u012bgi nelielam spraudnim un tiek autom\u0101tiski iel\u0101d\u0113ts gan administratora panel\u012b, gan publiskaj\u0101s vietnes lap\u0101s. Parasti to izmanto, lai pievienotu funkcijas, klases, darb\u012bbas (actions) un filtrus, kas tiek piem\u0113roti t\u0113mai. Ar \u0161o failu var papla\u0161in\u0101t t\u0113mas funkcionalit\u0101ti un veikt izmai\u0146as WordPress darb\u012bb\u0101.<\/p>\n<h2 style=\"text-align: left;\">Kur atrodas functions.php un k\u0101 to izmantot<\/h2>\n<p style=\"text-align: left;\" data-start=\"669\" data-end=\"717\">Fails functions.php atrodas j\u016bsu t\u0113mas map\u0113:<\/p>\n<div class=\"contain-inline-size rounded-2xl relative bg-token-sidebar-surface-primary\" style=\"text-align: left;\">\n<div class=\"overflow-y-auto p-4\" dir=\"ltr\"><code class=\"whitespace-pre!\">wp-content\/themes\/temas_nosaukums\/functions.php<br \/>\n<\/code><\/div>\n<p>\u0160aj\u0101 fail\u0101 j\u016bs varat izmantot WordPress ieb\u016bv\u0113t\u0101s funkcijas, pievienot savas PHP funkcijas un piesl\u0113gties kodola darb\u012bb\u0101m un filtriem. Katra instal\u0113t\u0101 t\u0113ma parasti satur savu functions.php failu, bet darb\u0101 tiek izmantots tikai akt\u012bv\u0101s t\u0113mas fails. Ja j\u016bsu t\u0113mai \u0161\u012b faila nav, j\u016bs vienk\u0101r\u0161i varat izveidot teksta failu ar nosaukumu functions.php un ievietot to t\u0113mas direktorij\u0101.<\/p>\n<\/div>\n<p style=\"text-align: left;\" data-start=\"1208\" data-end=\"1416\">D\u0113la t\u0113m\u0101m (child themes) ar\u012b var b\u016bt savi functions.php faili. Tos izmanto, lai papildin\u0101tu vai p\u0101rrakst\u012btu vec\u0101k\u0101s t\u0113mas funkcionalit\u0101ti. Tas \u013cauj dro\u0161i pievienot izmai\u0146as, neiejaucoties galven\u0101s t\u0113mas s\u0101kotn\u0113j\u0101 kod\u0101.<\/p>\n<h2 style=\"text-align: left;\" data-start=\"1147\" data-end=\"1391\">Ko var dar\u012bt ar functions.php (ar piem\u0113riem)<\/h2>\n<p style=\"text-align: left;\" data-start=\"1393\" data-end=\"1828\">Fails functions.php \u013cauj papla\u0161in\u0101t t\u0113mas funkcionalit\u0101ti un piesl\u0113gt savas funkcijas, hookus un filtrus. Zem\u0101k ir galven\u0101s iesp\u0113jas un piem\u0113ri to realiz\u0101cijai:<\/p>\n<p style=\"text-align: left;\" data-start=\"1393\" data-end=\"1828\">Miniat\u016bru (thumbnails) atbalsta iesl\u0113g\u0161ana:<\/p>\n<pre class=\"brush: php; title: ; notranslate\" title=\"\">\r\nadd_theme_support( &#039;post-thumbnails&#039; );\r\n<\/pre>\n<p style=\"text-align: left;\" data-start=\"1393\" data-end=\"1828\">Jaunu ierakstu form\u0101tu pievieno\u0161ana:<\/p>\n<pre class=\"brush: php; title: ; notranslate\" title=\"\">\r\nadd_theme_support( &#039;post-formats&#039;, array( &#039;aside&#039;, &#039;gallery&#039;, &#039;quote&#039; ) );\r\n<\/pre>\n<p style=\"text-align: left;\" data-start=\"1393\" data-end=\"1828\">Navig\u0101cijas izv\u0113l\u0146u izveide:<\/p>\n<pre class=\"brush: php; title: ; notranslate\" title=\"\">\r\nregister_nav_menus( array(\r\n    &#039;main_menu&#039; =&gt; &#039;Galven\u0101 izv\u0113lne&#039;,\r\n    &#039;footer_menu&#039; =&gt; &#039;K\u0101jenes izv\u0113lne&#039;,\r\n) );\r\n<\/pre>\n<p style=\"text-align: left;\" data-start=\"1393\" data-end=\"1828\">Savu skriptu un stilu piesl\u0113g\u0161ana:<\/p>\n<pre class=\"brush: php; title: ; notranslate\" title=\"\">\r\nfunction my_theme_scripts() {\r\n    wp_enqueue_style( &#039;main-style&#039;, get_stylesheet_uri() );\r\n    wp_enqueue_script( &#039;custom-js&#039;, get_template_directory_uri() . &#039;\/js\/custom.js&#039;, array(&#039;jquery&#039;), null, true );\r\n}\r\nadd_action( &#039;wp_enqueue_scripts&#039;, &#039;my_theme_scripts&#039; );\r\n<\/pre>\n<p style=\"text-align: left;\" data-start=\"1393\" data-end=\"1828\">Autom\u0101tiska teksta pievieno\u0161ana katra ieraksta beig\u0101s:<\/p>\n<pre class=\"brush: php; title: ; notranslate\" title=\"\">\r\nfunction add_custom_text($content) {\r\n    if (is_single()) {\r\n        $content .= &#039;&lt;p&gt;Paldies par las\u012b\u0161anu! Abon\u0113jiet zi\u0146as.&lt;\/p&gt;&#039;;\r\n    }\r\n    return $content;\r\n}\r\nadd_filter(&#039;the_content&#039;, &#039;add_custom_text&#039;);\r\n<\/pre>\n<p style=\"text-align: left;\">Savau logr\u012bku (widget) izveide:<\/p>\n<pre class=\"brush: php; title: ; notranslate\" title=\"\">\r\nclass Welcome_Widget extends WP_Widget {\r\n    function __construct() {\r\n        parent::__construct(&#039;welcome_widget&#039;, &#039;Sveiciena logr\u012bks&#039;);\r\n    }\r\n    function widget($args, $instance) {\r\n        echo $args&#x5B;&#039;before_widget&#039;] . &#039;&lt;p&gt;Laipni l\u016bdzam m\u016bsu vietn\u0113!&lt;\/p&gt;&#039; . $args&#x5B;&#039;after_widget&#039;];\r\n    }\r\n}\r\nadd_action(&#039;widgets_init&#039;, function() {\r\n    register_widget(&#039;Welcome_Widget&#039;);\r\n});\r\n\r\n<\/pre>\n<p style=\"text-align: left;\">Lietot\u0101ja ierakstu tipa (Custom Post Type) re\u0123istr\u0101cija:<\/p>\n<pre class=\"brush: php; title: ; notranslate\" title=\"\">\r\nfunction create_portfolio_post_type() {\r\n    register_post_type(&#039;portfolio&#039;,\r\n        array(\r\n            &#039;labels&#039; =&gt; array(&#039;name&#039; =&gt; &#039;Portfolio&#039;),\r\n            &#039;public&#039; =&gt; true,\r\n            &#039;has_archive&#039; =&gt; true,\r\n            &#039;supports&#039; =&gt; array(&#039;title&#039;, &#039;editor&#039;, &#039;thumbnail&#039;)\r\n        )\r\n    );\r\n}\r\nadd_action(&#039;init&#039;, &#039;create_portfolio_post_type&#039;);\r\n<\/pre>\n<h2 style=\"text-align: left;\" data-start=\"3473\" data-end=\"3528\">Ko lab\u0101k ievietot functions.php, un ko \u2014 spraudn\u012b<\/h2>\n<p style=\"text-align: left;\">Functions.php ir ide\u0101li piem\u0113rots:<\/p>\n<ul style=\"text-align: left;\">\n<li>funkcij\u0101m, kas cie\u0161i saist\u012btas ar t\u0113mu un t\u0101s vizu\u0101lo da\u013cu;<\/li>\n<li>stilu, skriptu, izv\u0113lnes, miniat\u016bru, ierakstu form\u0101tu, logr\u012bku, shortcodes un hooku pievieno\u0161anai t\u0113mai.<\/li>\n<\/ul>\n<p style=\"text-align: left;\">Spraudni lab\u0101k izmantot, ja:<\/p>\n<ul style=\"text-align: left;\">\n<li>funkcionalit\u0101te j\u0101uztur neatkar\u012bgi no t\u0113mas (piem\u0113ram, SEO, ke\u0161\u0113\u0161ana, soci\u0101lo t\u012bklu integr\u0101cijas, kontaktformu funkcijas);<\/li>\n<li>v\u0113laties saglab\u0101t funkcionalit\u0101ti, pat ja main\u0101t t\u0113mu;<\/li>\n<li>funkcija ir sare\u017e\u0123\u012bta vai paredz\u0113ta vair\u0101k\u0101m vietn\u0113m (spraudnis \u013cauj atk\u0101rtoti izmantot kodu).<\/li>\n<\/ul>\n<h2 style=\"text-align: left;\" data-start=\"4060\" data-end=\"4095\">Padomi darbam ar functions.php<\/h2>\n<ul style=\"text-align: left;\">\n<li data-start=\"4099\" data-end=\"4205\">Izmantojiet d\u0113la t\u0113mu (child theme), lai veiktu izmai\u0146as, t\u0101d\u0113j\u0101di galven\u0101s t\u0113mas atjaunin\u0101jumi neizdz\u0113s\u012bs j\u016bsu funkcijas.<\/li>\n<li data-start=\"4099\" data-end=\"4205\">Minim\u0101l\u0113jiet kodu functions.php \u2014 ja funkcionalit\u0101te ir liela vai univers\u0101la, lab\u0101k izveidot spraudni.<\/li>\n<li data-start=\"4099\" data-end=\"4205\">Vienm\u0113r test\u0113jiet pievienot\u0101s funkcijas lok\u0101l\u0101 vai testa vietn\u0113, lai nesaboj\u0101tu produkt\u012bvo vietni.<\/li>\n<li data-start=\"4099\" data-end=\"4205\">Izmantojiet hookus (actions un filters), lai nemain\u012btu WordPress kodolu un saglab\u0101tu sader\u012bbu ar n\u0101kamajiem atjaunin\u0101jumiem.<\/li>\n<\/ul>\n<h2 style=\"text-align: left;\" data-start=\"4575\" data-end=\"4584\">Secin\u0101jums<\/h2>\n<p style=\"text-align: left;\" data-start=\"4586\" data-end=\"4825\">Fails functions.php joproj\u0101m ir galvenais instruments PHP funkciju pievieno\u0161anai un t\u0113mas funkcionalit\u0101tes papla\u0161in\u0101\u0161anai. Tas \u013cauj elast\u012bgi piel\u0101got vietni, piesl\u0113gt stilus un skriptus, pievienot logr\u012bkus, shortcodes un lietot\u0101ja ierakstu tipus.<\/p>\n<hr \/>\n<p style=\"text-align: left;\"><em>M\u016bsu specializ\u0101cija \u2014 WordPress viet\u0146u izstr\u0101de un uztur\u0113\u0161ana. Kontakti bezmaksas konsult\u0101cijai \u2014 <a href=\"mailto:vadim@coma.lv\">vadim@coma.lv<\/a>, <a href=\"tel:+37129394520\">+371 29394520<\/a><\/em><\/p>\n<hr \/>\n","protected":false},"excerpt":{"rendered":"<p>functions.php vai t\u0113mas funkciju fails ir svar\u012bgs fails, ko izmanto WordPress t\u0113mas. Tas darbojas l\u012bdz\u012bgi nelielam spraudnim un tiek autom\u0101tiski iel\u0101d\u0113ts gan administratora panel\u012b, gan publiskaj\u0101s vietnes lap\u0101s. Parasti to izmanto, lai pievienotu funkcijas, klases, darb\u012bbas (actions) un filtrus, kas tiek piem\u0113roti t\u0113mai. Ar \u0161o failu var papla\u0161in\u0101t t\u0113mas funkcionalit\u0101ti un veikt izmai\u0146as WordPress darb\u012bb\u0101. [&hellip;]<\/p>\n","protected":false},"author":12,"featured_media":37634,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1226,1318],"tags":[],"class_list":["post-37040","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wordpress","category-termini"],"_links":{"self":[{"href":"https:\/\/coma.lv\/lv\/wp-json\/wp\/v2\/posts\/37040","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/coma.lv\/lv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/coma.lv\/lv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/coma.lv\/lv\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/coma.lv\/lv\/wp-json\/wp\/v2\/comments?post=37040"}],"version-history":[{"count":5,"href":"https:\/\/coma.lv\/lv\/wp-json\/wp\/v2\/posts\/37040\/revisions"}],"predecessor-version":[{"id":37077,"href":"https:\/\/coma.lv\/lv\/wp-json\/wp\/v2\/posts\/37040\/revisions\/37077"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/coma.lv\/lv\/wp-json\/wp\/v2\/media\/37634"}],"wp:attachment":[{"href":"https:\/\/coma.lv\/lv\/wp-json\/wp\/v2\/media?parent=37040"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/coma.lv\/lv\/wp-json\/wp\/v2\/categories?post=37040"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/coma.lv\/lv\/wp-json\/wp\/v2\/tags?post=37040"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}