oficinasuport-wp-theme/inc/template-functions.php

93 lines
2.4 KiB
PHP

<?php
/**
* Functions which enhance the theme by hooking into WordPress
*
* @package Oficina_de_Suport_theme
*/
/**
* Adds custom classes to the array of body classes.
*
* @param array $classes Classes for the body element.
* @return array
*/
function ofisuport_body_classes( $classes ) {
// Adds a class of hfeed to non-singular pages.
if ( ! is_singular() ) {
$classes[] = 'hfeed';
}
// Adds a class of no-sidebar when there is no sidebar present.
if ( ! is_active_sidebar( 'sidebar-funds' ) ) {
$classes[] = 'no-sidebar';
}
return $classes;
}
add_filter( 'body_class', 'ofisuport_body_classes' );
/**
* Add a pingback url auto-discovery header for single posts, pages, or attachments.
*/
function ofisuport_pingback_header() {
if ( is_singular() && pings_open() ) {
printf( '<link rel="pingback" href="%s">', esc_url( get_bloginfo( 'pingback_url' ) ) );
}
}
add_action( 'wp_head', 'ofisuport_pingback_header' );
/**
* Detect if the Oficina de Suport "ofisuport" plugin is active
*/
function ofisuport_plugin_active() {
// Detect plugin. For use on Front End only.
include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
// check for plugin using plugin name
if ( is_plugin_active( 'oficinasuport-wp-plugin/ofisuport-wp-plugin.php' ) ) {
//plugin is activated do
}
//do stuff here
} //closing if is_plugin_active
//add_action( 'wp_head', 'ofisuport_plugin_active' );
/**
* Echo the post type slug
*/
function ofisuport_class_posttype (){
if( is_post_type_archive( array('ofisuport-ajut') )) {
echo 'archive-custom-post-type-';
printf(get_post_type_object( get_post_type() )->rewrite['slug'] );
}
}
/**
* Displays the FAQS subcategories from category id=1
*/
if ( ! function_exists( 'ofisuport_display_faqs_labels' ) ) :
function ofisuport_display_faqs_labels() {
?>
<nav id="tipus-faqs" class="ofisuport-faqs-types">
<ul class="ofisuport-label">
<?php
// https://developer.wordpress.org/reference%2Ffunctions%2Fwp_list_categories%2F/
wp_list_categories(
array(
'child_of' => 1, // category FAQ id=1
'hide_empty' => 1,
'hide_title_if_empty' => true,
'separator' => '<li>',
'style' => 'list',
'taxonomy' => 'category',
'title_li' => '',
)
); ?>
</ul>
</nav>
<?php
}
endif; //end ofisuport_display_faqs_labels