ruạṛ
<?php /** * Enable theme features */ add_theme_support('soil-clean-up'); // Enable clean up from Soil add_theme_support('soil-relative-urls'); // Enable relative URLs from Soil add_theme_support('soil-nice-search'); // Enable /?s= to /search/ redirect from Soil add_theme_support('bootstrap-gallery'); // Enable Bootstrap's thumbnails component on [gallery] add_theme_support('jquery-cdn'); // Enable to load jQuery from the Google CDN /** * Configuration values */ define('GOOGLE_ANALYTICS_ID', ''); // UA-XXXXX-Y (Note: Universal Analytics only, not Classic Analytics) if (!defined('WP_ENV')) { define('WP_ENV', 'production'); // scripts.php checks for values 'production' or 'development' } /** * Add body class if sidebar is active */ function roots_sidebar_body_class($classes) { if (roots_display_sidebar()) { $classes[] = 'sidebar-primary'; } return $classes; } add_filter('body_class', 'roots_sidebar_body_class'); /** * Define which pages shouldn't have the sidebar * * See lib/sidebar.php for more details */ function roots_display_sidebar() { static $display; if (!isset($display)) { $sidebar_config = new Roots_Sidebar( /** * Conditional tag checks (http://codex.wordpress.org/Conditional_Tags) * Any of these conditional tags that return true won't show the sidebar * * To use a function that accepts arguments, use the following format: * * array('function_name', array('arg1', 'arg2')) * * The second element must be an array even if there's only 1 argument. */ array( 'is_404', 'is_front_page' ), /** * Page template checks (via is_page_template()) * Any of these page templates that return true won't show the sidebar */ array( 'template-custom.php' ) ); $display = apply_filters('roots/display_sidebar', $sidebar_config->display); } return false; // $display; } /** * $content_width is a global variable used by WordPress for max image upload sizes * and media embeds (in pixels). * * Example: If the content area is 640px wide, set $content_width = 620; so images and videos will not overflow. * Default: 1140px is the default Bootstrap container width. */ if (!isset($content_width)) { $content_width = 1140; } function darfield_image_sizes() { add_theme_support('post-thumbnails'); add_image_size( 'tall-thumb', '192', '255', true ); } add_action('after_setup_theme', 'darfield_image_sizes'); //function darfield_add_custom_sizes( $imageSizes ) { // $my_sizes = array( // 'banner' => 'Banner' // ); // return array_merge( $imageSizes, $my_sizes ); //} //add_filter( 'image_size_names_choose', 'darfield_add_custom_sizes' ); function wpautop2($pee, $br = 0) { if ( trim($pee) === '' ) return ''; $pee = $pee . "\n"; // just to make things a little easier, pad the end $pee = preg_replace('|<br />\s*<br />|', "\n\n", $pee); // Space things out a little $allblocks = '(?:table|thead|tfoot|caption|col|colgroup|tbody|tr|td|th|div|dl|dd|dt|ul|ol|li|pre|select|form|map|area|blockquote|address|math|style|input|p|h[1-6]|hr|fieldset|legend)'; $pee = preg_replace('!(<' . $allblocks . '[^>]*>)!', "\n$1", $pee); $pee = preg_replace('!(</' . $allblocks . '>)!', "$1\n\n", $pee); $pee = str_replace(array("\r\n", "\r"), "\n", $pee); // cross-platform newlines if ( strpos($pee, '<object') !== false ) { $pee = preg_replace('|\s*<param([^>]*)>\s*|', "<param$1>", $pee); // no pee inside object/embed $pee = preg_replace('|\s*</embed>\s*|', '</embed>', $pee); } $pee = preg_replace("/\n\n+/", "\n\n", $pee); // take care of duplicates // make paragraphs, including one at the end $pees = preg_split('/\n\s*\n/', $pee, -1, PREG_SPLIT_NO_EMPTY); $pee = ''; foreach ( $pees as $tinkle ) $pee .= '' . trim($tinkle, "\n") . "\n"; $pee = preg_replace('|<p>\s*</p>|', '', $pee); // under certain strange conditions it could create a P of entirely whitespace $pee = preg_replace('!<p>([^<]+)</(div|address|form)>!', "<p>$1</p></$2>", $pee); $pee = preg_replace('!<p>\s*(</?' . $allblocks . '[^>]*>)\s*</p>!', "$1", $pee); // don't pee all over a tag $pee = preg_replace("|<p>(<li.+?)</p>|", "$1", $pee); // problem with nested lists $pee = preg_replace('|<p><blockquote([^>]*)>|i', "<blockquote$1><p>", $pee); $pee = str_replace('</p>', '</p>', $pee); $pee = preg_replace('!<p>\s*(</?' . $allblocks . '[^>]*>)!', "$1", $pee); $pee = preg_replace('!(</?' . $allblocks . '[^>]*>)\s*</p>!', "$1", $pee); if ($br) { $pee = preg_replace_callback('/<(script|style).*?<\/\\1>/s', create_function('$matches', 'return str_replace("\n", "<WPPreserveNewline />", $matches[0]);'), $pee); $pee = preg_replace('|(?<!<br />)\s*\n|', "<br />\n", $pee); // optionally make line breaks $pee = str_replace('<WPPreserveNewline />', "\n", $pee); } $pee = preg_replace('!(</?' . $allblocks . '[^>]*>)\s*<br />!', "$1", $pee); $pee = preg_replace('!<br />(\s*</?(?:p|li|div|dl|dd|dt|th|pre|td|ul|ol)[^>]*>)!', '$1', $pee); if (strpos($pee, '<pre') !== false) $pee = preg_replace_callback('!(<pre[^>]*>)(.*?)</pre>!is', 'clean_pre', $pee ); $pee = preg_replace( "|\n</p>$|", '</p>', $pee ); return $pee; } if( function_exists('acf_add_options_page') ) { acf_add_options_page(); }
cải xoăn