Best functions.php organization (functionalities division)
This commit is contained in:
parent
a556a4288e
commit
1774a31c4f
|
@ -1,56 +1,5 @@
|
|||
<?php
|
||||
|
||||
|
||||
if(!function_exists('tainacan_setup')) {
|
||||
|
||||
/**
|
||||
* Execulta após o tema ser inicializado.
|
||||
* Isso é usado para a configuração básica do tema, registro dos recursos do tema e init hooks.
|
||||
* Observe que esta função está conectada ao gancho after_setup_theme, que é executado antes do gancho de init.
|
||||
*/
|
||||
function tainacan_setup() {
|
||||
/**
|
||||
* Não exibe o menu do administrador na pagina do site. Mesmo quando estiver logado!
|
||||
**/
|
||||
show_admin_bar( false );
|
||||
|
||||
/**
|
||||
* Desabilita o FTP na instalação de Plugins
|
||||
*/
|
||||
define('FS_METHOD', 'direct');
|
||||
}
|
||||
|
||||
}
|
||||
add_action( 'after_setup_theme', 'tainacan_setup' );
|
||||
|
||||
/**
|
||||
* Inclui os scripts javascript necessários ao front do thema
|
||||
*/
|
||||
function tainacanEnqueueScripts(){
|
||||
//Adicionado o jquery ao footer das páginas.
|
||||
wp_deregister_script( 'jquery' );
|
||||
wp_register_script( 'jquery', includes_url( '/js/jquery/jquery.js' ), false, NULL, true );
|
||||
wp_enqueue_script( 'jquery' );
|
||||
|
||||
//Dependencia do bootstrap 4
|
||||
wp_enqueue_script('popper', get_template_directory_uri() . '/assets/vendor/bootstrap/js/popper.min.js', '', '', true);
|
||||
//JS Bootstrap 4
|
||||
wp_enqueue_script('bootstrap', get_template_directory_uri() . '/assets/vendor/bootstrap/js/bootstrap.min.js', array('jquery'), '4.0.0', true);
|
||||
wp_enqueue_script( 'charts', 'https://www.gstatic.com/charts/loader.js');
|
||||
|
||||
//Javascript for Tainacan
|
||||
wp_enqueue_script('jsTainacan', get_template_directory_uri() . '/assets/js/js.js', '', '1.0', true);
|
||||
wp_enqueue_script('collectionGraph', get_template_directory_uri() . '/assets/js/charts.js', array('charts'), '1.0');
|
||||
}
|
||||
add_action('wp_enqueue_scripts', 'tainacanEnqueueScripts');
|
||||
|
||||
/**
|
||||
* Inclui os styles necessários ao front do thema
|
||||
*/
|
||||
function tainacanEnqueueStyles(){
|
||||
//Style Bootstrap 4
|
||||
wp_enqueue_style('bootstrap', get_template_directory_uri() . '/assets/vendor/bootstrap/css/bootstrap.min.css');
|
||||
//Style Tainacan
|
||||
wp_enqueue_style('style', get_stylesheet_uri(), array('bootstrap'));
|
||||
}
|
||||
add_action('wp_enqueue_scripts', 'tainacanEnqueueStyles');
|
||||
require get_template_directory() . '/functions/setup.php';
|
||||
require get_template_directory() . '/functions/enqueues.php';
|
||||
require get_template_directory() . '/functions/pagination.php';
|
|
@ -0,0 +1,55 @@
|
|||
<?php
|
||||
/**
|
||||
* Enqueues Theme
|
||||
*/
|
||||
|
||||
if ( ! function_exists('tainacan_Enqueues') ) {
|
||||
/**
|
||||
* Inclui os scripts javascript e os styles necessários ao front-end do thema
|
||||
*/
|
||||
function tainacan_Enqueues(){
|
||||
/**
|
||||
* Adicionando o jquery ao footer das páginas.
|
||||
*/
|
||||
wp_deregister_script( 'jquery' );
|
||||
wp_register_script( 'jquery', includes_url( '/js/jquery/jquery.js' ), false, NULL, true );
|
||||
wp_enqueue_script( 'jquery' );
|
||||
|
||||
/**
|
||||
* Bootstrap 4
|
||||
*/
|
||||
//Style
|
||||
wp_register_style('bootstrap4CSS', get_template_directory_uri() . '/assets/vendor/bootstrap/css/bootstrap.min.css', '', '4.0.0', '');
|
||||
wp_enqueue_style('bootstrap4CSS');
|
||||
//Javascript
|
||||
wp_register_script('bootstrap4JS', get_template_directory_uri() . '/assets/vendor/bootstrap/js/bootstrap.min.js', array('jquery'), '4.0.0', true);
|
||||
wp_enqueue_script('bootstrap4JS');
|
||||
//Popper
|
||||
wp_register_script('popper_bootstrap4', get_template_directory_uri() . '/assets/vendor/bootstrap/js/popper.min.js', '', '', true);
|
||||
wp_enqueue_script('popper_bootstrap4');
|
||||
|
||||
/**
|
||||
* Google Charts
|
||||
*/
|
||||
wp_register_script( 'googleCharts', 'https://www.gstatic.com/charts/loader.js');
|
||||
wp_enqueue_script('googleCharts');
|
||||
|
||||
/**
|
||||
* Tainacan Theme
|
||||
*/
|
||||
wp_register_style('tainacanStyle', get_stylesheet_uri(), array('bootstrap4CSS'));
|
||||
wp_enqueue_style('tainacanStyle');
|
||||
wp_register_script('tainacanJS', get_template_directory_uri() . '/assets/js/js.js', '', '1.0', true);
|
||||
wp_enqueue_script('tainacanJS');
|
||||
wp_register_script('collectionGraph_googleCharts', get_template_directory_uri() . '/assets/js/charts.js', array('googleCharts'), '1.0');
|
||||
wp_enqueue_script('collectionGraph_googleCharts');
|
||||
|
||||
/**
|
||||
* Comments
|
||||
*/
|
||||
if (is_singular() && comments_open() && get_option('thread_comments')) {
|
||||
wp_enqueue_script('comment-reply');
|
||||
}
|
||||
}
|
||||
}
|
||||
add_action('wp_enqueue_scripts', 'tainacan_Enqueues');
|
|
@ -0,0 +1,32 @@
|
|||
<?php
|
||||
/**!
|
||||
* Bootstrap 4 pagination
|
||||
*/
|
||||
if ( ! function_exists( 'pagination_bst4' ) ) {
|
||||
function pagination_bst4() {
|
||||
global $wp_query;
|
||||
$big = 999999999; // This needs to be an unlikely integer
|
||||
// For more options and info view the docs for paginate_links()
|
||||
// http://codex.wordpress.org/Function_Reference/paginate_links
|
||||
$paginate_links = paginate_links( array(
|
||||
'base' => str_replace( $big, '%#%', get_pagenum_link($big) ),
|
||||
'current' => max( 1, get_query_var('paged') ),
|
||||
'total' => $wp_query->max_num_pages,
|
||||
'mid_size' => 5,
|
||||
'prev_next' => True,
|
||||
'prev_text' => __('< Newer', 'tainacan'),
|
||||
'next_text' => __('Older >', 'tainacan'),
|
||||
'type' => 'list'
|
||||
) );
|
||||
$paginate_links = str_replace( "<ul class='page-numbers'>", "<ul class='pagination'>", $paginate_links );
|
||||
$paginate_links = str_replace( "<li>", "<li class='page-item'>", $paginate_links );
|
||||
$paginate_links = str_replace( "<li class='page-item'><span aria-current='page' class='page-numbers current'>", "<li class='page-item active'><a class='page-link' href='#'>", $paginate_links );
|
||||
$paginate_links = str_replace( "<a", "<a class='page-link' ", $paginate_links );
|
||||
$paginate_links = str_replace( "</span>", "</a>", $paginate_links );
|
||||
$paginate_links = preg_replace( "/\s*page-numbers/", "", $paginate_links );
|
||||
// Display the pagination if more than one page is found
|
||||
if ( $paginate_links ) {
|
||||
echo $paginate_links;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
<?php
|
||||
/**
|
||||
* Setup Theme
|
||||
*/
|
||||
|
||||
if(!function_exists('tainacan_setup')) {
|
||||
|
||||
/**
|
||||
* Execulta após o tema ser inicializado.
|
||||
* Isso é usado para a configuração básica do tema, registro dos recursos do tema e init hooks.
|
||||
* Observe que esta função está conectada ao gancho after_setup_theme, que é executado antes do gancho de init.
|
||||
*/
|
||||
function tainacan_setup() {
|
||||
/**
|
||||
* Não exibe o menu do administrador na pagina do site. Mesmo quando estiver logado!
|
||||
**/
|
||||
show_admin_bar( false );
|
||||
|
||||
/**
|
||||
* Desabilita o FTP na instalação de Plugins
|
||||
*/
|
||||
define('FS_METHOD', 'direct');
|
||||
}
|
||||
|
||||
}
|
||||
add_action( 'after_setup_theme', 'tainacan_setup' );
|
Loading…
Reference in New Issue